App::Wubot::Guide::Tasks - guide to using wubot to monitor tasks
This document and all the tools referenced in it are still under development. I am using them now, but there are still a few rough edges. They are not yet ready for mass consumption.
I keep all my tasks in Emacs Org-Mode.
I use wubot to parse my tasks out of my org-mode files and store them in a database. I use monitor plugins to monitor the tas database and send me notifications when tasks are coming due. And I also use the web interface to review my task list.
PARSING ORG FILES
Right now the emacs or parsing is not very good, but I am planning to use Org::Parser in the future.
App::Wubot::Plugin::EmacsOrgMode - monitors ~/org directory for new files that contain TODO items that have a scheduled or deadline date.
App::Wubot::Plugin::TaskDB - monitors the task database for the highest priority task in the queue.
App::Wubot::Plugin::TaskNotify - monitors the task database for items that have a scheduled or deadline date that is due within the next 15 minutes.
App::Wubot::Util::Tasks - utility class where most of the parsing and database work is done. Used by the other classes.
App::Wubot::Web::Tasks - web user interface for tasks.
One of the problems with using emacs org-mode is that I have the files open in emacs, and so I can't modify them directly from within the wubot web ui. So currently wubot uses emacsclient to tell emacs to open a task file to a specific heading, or even to mark a task as complete.
Most of these components are reusable, i.e. there could be other plugins that monitor other systems that contain tasks, and if they generated tasks messages in the same format as the EmacsOrgMode plugin, then the task monitor and web interface would work without modification.