MinLis, or Minute Listener, runs saved events at a scheduled time. It works as a background thread that wakes up every 60 seconds. It checks the database for any events scheduled to run, fires those events, and goes back to sleep. The events are django models saved to the database. They store the scheduled time to run and how often to repeat (if at all). So far there are two type of events, events that can run a method on a model (using generics) and events that run a string through python's eval(). This way, to schedule something to run, all you have to do is save an Event to the database.
Scheduling a background task is as easy as saving a model!
I'm currently doing some more bug testing and polishing things, but when I'm done I will put up the code for all to work on.
Please contact me if you would like the code or more information.
These details are provided for information only. No information here is legal advice and should not be used as such.