# Scheduled processes

**URL:** <https://www.ruby-forum.com/t/scheduled-processes/49173>\
**Category:** Rails\
**Created:** [November 30, 2005, 10:51pm UTC](https://www.ruby-forum.com/t/scheduled-processes/49173 "2005-11-30T22:51:31Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![railsonly](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/c89c15/32.png) [@railsonly](https://www.ruby-forum.com/u/railsonly)\
**Post date:** [November 30, 2005, 10:51pm UTC](https://www.ruby-forum.com/t/scheduled-processes/49173/1 "2005-11-30T22:51:31Z")

</div>

How in Rails do you set up a scheduled process, i.e. something that for  
example periodically sends out an email to the site’s users. Is this  
possible?

---

<div class="post-metadata">

**Author:** ![railsonly](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/c89c15/32.png) [@railsonly](https://www.ruby-forum.com/u/railsonly)\
**Post date:** [November 30, 2005, 11:24pm UTC](https://www.ruby-forum.com/t/scheduled-processes/49173/2 "2005-11-30T23:24:05Z")

</div>

On 30 Nov 2005, at 21:47, Frank K. wrote:

> How in Rails do you set up a scheduled process, i.e. something that  
> for example periodically sends out an email to the site’s users.  
> Is this possible?

I’d do this by having a scheduled job visit your mail controller and  
call a send\_email action at a regular interval. Make sure you  
authenticate the job – check IP addresses etc – so that people  
can’t cause your app to send email by visiting the wrong URI.

## Yours, Craig

Craig W. | t: +44 (0)131 516 8595 | e: removed\_email\_address@domain.invalid  
[Xeriom.NET](http://Xeriom.NET) | f: +44 (0)709 287 1902 | w: [http://xeriom.net](http://xeriom.net)

---

<div class="post-metadata">

**Author:** ![railsonly](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/c89c15/32.png) [@railsonly](https://www.ruby-forum.com/u/railsonly)\
**Post date:** [December 1, 2005, 2:17am UTC](https://www.ruby-forum.com/t/scheduled-processes/49173/3 "2005-12-01T02:17:45Z")

</div>

Hi Craig,  
I am guessing you mean that the scheduled job is created outside of  
rails,  
whether it be a wget in a cron job or something like that, instead of  
within  
rails, right?  
-Frank

---

<div class="post-metadata">

**Author:** ![railsonly](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/c89c15/32.png) [@railsonly](https://www.ruby-forum.com/u/railsonly)\
**Post date:** [December 1, 2005, 3:06am UTC](https://www.ruby-forum.com/t/scheduled-processes/49173/4 "2005-12-01T03:06:10Z")

</div>

Thanks. Based on that page it looks like the best answer for now is to  
use  
cron with wget, not the most satisfying answer.

---

<div class="post-metadata">

**Author:** ![railsonly](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/c89c15/32.png) [@railsonly](https://www.ruby-forum.com/u/railsonly)\
**Post date:** [December 1, 2005, 2:50am UTC](https://www.ruby-forum.com/t/scheduled-processes/49173/5 "2005-12-01T02:50:03Z")

</div>

Frank,

Take a look at this page on the wiki:  
[http://wiki.rubyonrails.com/rails/pages/HowToRunBackgroundJobsInRails](http://wiki.rubyonrails.com/rails/pages/HowToRunBackgroundJobsInRails)

Cody

On 11/30/05, Frank K. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> > > How in Rails do you set up a scheduled process, i.e. something that  
> > > –
> 
> * * *
> 
> Rails mailing list  
> removed\_email\_address@domain.invalid  
> [http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)

–  
[http://www.codyfauser.com](http://www.codyfauser.com)

---

<div class="post-metadata">

**Author:** ![railsonly](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/c89c15/32.png) [@railsonly](https://www.ruby-forum.com/u/railsonly)\
**Post date:** [December 1, 2005, 3:14am UTC](https://www.ruby-forum.com/t/scheduled-processes/49173/6 "2005-12-01T03:14:14Z")

</div>

on an app I had to do something along these lines i created a cron dir  
off the project root, and just created a .rb script and added it to my  
cron… add the following to the top to work within your environment/app:

#!/usr/bin/ruby  
ENV[‘RAILS\_ENV’] = ‘production’  
require File.dirname( **FILE** ) + ‘/…/config/environment’

---

<div class="post-metadata">

**Author:** ![railsonly](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/c89c15/32.png) [@railsonly](https://www.ruby-forum.com/u/railsonly)\
**Post date:** [December 1, 2005, 4:59am UTC](https://www.ruby-forum.com/t/scheduled-processes/49173/7 "2005-12-01T04:59:16Z")

</div>

Frank,

You can’t use script/runner with cron? Its usage should be described  
on that same page.

Cody

On 11/30/05, Jerrett T. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> > > Hi Craig,
> > > 
> > > > > for example periodically sends out an email to the site’s users.  
> > > > > Craig W. | t: +44 (0)131 516 8595 | e: removed\_email\_address@domain.invalid
> > 
> > [http://www.codyfauser.com](http://www.codyfauser.com)
> > 
> > * * *
> > 
> > Rails mailing list  
> > removed\_email\_address@domain.invalid  
> > [http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)
> 
> * * *
> 
> Rails mailing list  
> removed\_email\_address@domain.invalid  
> [http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)

–  
[http://www.codyfauser.com](http://www.codyfauser.com)
