Skip to content

addadi/rtm_sync

Repository files navigation

WHAT IS IT?
This is a set of python scripts to sync Remember the Milk (RTM) tasks and Microsoft Outlook tasks and vice versa. The scripts synchronize between the following fields:
RTM Field       Outlook Task Field
Name            Title
Notes           Body
Tags            Categories
Status          Status
Due             Due Date
I wrote it mainly because I couldn't find a sync tool that syncs the tags field in RTM with the categories fields in Outlook
The scripts are based on the rtm_sync plugin of the excellent Getting Things Gnome (GTG - http://gtg.fritalk.com/) software version 0.2 (which uses python rtm api script pyrtm written by Sridhar Ratnakuma, Mariano Draghi and Tetsuya Morimoto, see http://pypi.python.org/pypi/pyrtm) and includes parts that were written by Luca Invernizzi (mostly) and Paulo Cabido. In fact the vast majority of the code and the logic are written by them and not by me.
I wrote it mainly for my personal usage as I implement the GTD task management methodology. I work in a corporate environment on MS outlook most of the day to manage my tasks, but would like to unlock the information in Outlook tasks and sync them automatically (almost) to RTM and from there to non Microsoft environment like the Linux GTG software, web environment and Android Astrid task manager.
For this I took the rtm_sync plugin of the open source GTG software and implemented the following changes:
1. Making the scripts run independently on CLI (stripped the GUI and GTG plugin API references)
2. Adapting it to run on MS Windows instead of Linux
3. Replaced the GTG end with an Outlook interface
4. Added logging mechanism (rtm.log file will be created on the root folder of the scripts)
5. Added a possibility to run the scripts behind a corporate proxy with PAC (http://en.wikipedia.org/wiki/Proxy_auto-config). Thanks to pacparser (http://code.google.com/p/pacparser/)
6. Workarounds to solves issues related to Unicode text in tasks under Windows environment
7. Removed threading
The scripts are released by the GPL license terms and conditions.

HOW RO RUN
First, make sure you have installed all the prerequisites (see the following relelvant section)
Second, just try to run rtm_sync.py from the command line, you'll need to allow the script on the first run with RTM (A browser window will be opened on the RTM access page)
Third, if you're behind a proxy with PAC (Proxy Auto Config), put a file named pacurl in the config folder with only one line in it containing just the PAC url in the format of http://hostname.yourdomain:port
The sync should just start and work :)

PREREQUISITES
Remember The Milk account (http://www.rememberthemilk.com)
Outlook installed (tested with Outlook 2007, may work with other versions)
Python installed (Tested with Python 2.7 on Windows XP and 7)
Python for Windows Extensions (http://sourceforge.net/projects/pywin32/files/pywin32/)
simplejson (http://pypi.python.org/pypi/simplejson)
python-dateutil (http://pypi.python.org/pypi/python-dateutil)
setuptools (http://pypi.python.org/pypi/setuptools/) needed for dateutil

KNOWN LIMITIATIONS
RTM can't take capitals in tags so no point using them in Outlook
Only two Outlook statuses can be synced Task Not Started and Task Complete    
Subject in outlook that is empty will generate error when trying to add to RTM (not allowed)
Due date of None in outlook will be 1/1/36 in RTM

LICENSE
This program is free software: you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation, either version 3 of the License, or (at your option) any later
version.

This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
details.

You should have received a copy of the GNU General Public License along with
this program.  If not, see <http://www.gnu.org/licenses/>.

TODO
1. Clean up unused code and comments

Changes
0.1 27/12/2011 - First Version
0.15 28/12/2011 - Implemented ungly trick to solve the None due dates sync problem

About

Outlook to Remember the Milk Sync

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages