Hi everyone,

there's is now a plugin for Mozilla Calendar (Sunbird) in CVS (0.82 branch). You can use it to sync one or more calendars, and it supports both local and WebDAV calendars. If you're using Mozilla Calendar, please give it a try and report your results (but make a backup of your data, because it may still contain bugs). If you have further questions, please read the attached README file (the same one is also in CVS).


Markus

Plugin for syncing with Mozilla Calendar / Sunbird
--------------------------------------------------

(C) 2005 by Markus Meyer
Licensed under the GNU GPL


1. Does it work?

Yes, it does. You can sync one or more calendars, both local and on WebDAV
servers. I sync my S55 phone with it, and it works fine. However,
since it has not been widely tested, consider it beta or even alpha quality
code. Therefore it is recommended to make frequent backups of your data.


2. Will it also sync my contacts and todo items?

No. It currently only syncs calendar appointments. But if you are a
programmer, you're of course welcome to extend it.


3. What are the known limitations?

- In every Mozilla Calendar file that you want to use with the plugin,
  you should always have at least one item. If the calendar is empty,
  Mozilla Calendar will create a calendar file of zero size, which the
  plugin cannot interpret correctly. This is a real bug and should be
  fixed soon.
  
- Both this plugin and Mozilla Calendar can lose data, if there is
  a network transfer error when the calendars are downloaded / uploaded
  over WebDAV. So always keep backups at hand. I actually had it
  happen that Mozilla Calendar worked fine for me multiple weeks, then
  all of a sudden it lost half of my appointments. So now I have a script
  that makes backups of my Mozilla Calendars every day, but only if they
  have increased in size.
  
- Mozilla Calendar doesn't yet recognize automatically if the calendar
  files have changed. So after syncing, Mozilla Calendar will still
  show your old data. If you use WebDAV, just press Ctrl+R to read
  the new data from server after syncing. If you use local calendars,
  it's probably easiest to hide (unselect) the calendar in the calendar
  list, then select it again.

- There are a lot of printf statements in the code, which lead to much
  debug output to the console everytime a sync is done. These will be
  removed over time.

- (Only interesting for programmers) The code has been hacked in a
  few nights during my exams, so there are many things that could
  be solved in a better way.
  
  
4. Help! It complains about some "Neon" library.

You need to have Neon installed. Neon is a library which is used for
WebDAV support. It is planned to make the installation of Neon optional,
but currently, you need it, whether you're planning to use WebDAV or not.
The easiest thing is probably to download Neon's source code from

http://www.webdav.org/neon/

Last version tested was 0.24.7. You can install neon systemwide by
issuing these commands:

tar zxvf neon-0.24.7.tar.gz
cd neon-0.24.7
./configure
make
sudo make install


5. Where are the settings?

There is no graphical settings dialog yet. Currently, configuration
is done via environment variables. The following variables are
defined:

MULTISYNC_SUNBIRD_CALENDARS
   This is a list of calendars you want to sync, separated by
   semicolons (";"). These can either be local files, or WebDAV
   locations (starting with "http://";). SSL ("https://";) is not
   yet supported. Note that since the shell uses the semicolon
   as a special character, you have two quote the whole variable
   when e.g. using the "export" command.
   
MULTISYNC_SUNBIRD_DEFAULT_CALENDAR
   If you have more than one calendar defined, this defines which
   of them is your default calendar. This is just the name of the
   .ics file (without the whole path). Look below for an explanation
   why it's useful to have a default calendar. If you don't define
   a default calendar, the first calendar in the list is used.
   
MULTISYNC_SUNBIRD_WEBDAV_USERNAME
MULTISYNC_SUNBIRD_WEBDAV_PASSWORD
   The username and password that should be used to log into the
   WebDAV server. You don't need these if you're using local
   calendars.

If you want to avoid setting all these environment variables
everytime you use MultiSync, you can create a small shell script,
which first sets these variables, and then starts MultiSync.
   

6. What's the point of having multiple calendars? My mobile phone only
   supports one single calendar!
   
If you configure multiple calendars for use with this plugin, the
software will automagically merge these calendars into one single
calendar for use in your device (the "remote end"). However, if you
change or delete an item on the remote end, it will properly find
its way back into the exact calendar it came from. When you add
a new item at the remote end, this item is added to the default
calendar (which can be set by the user).

Reply via email to