markus-gsottberger.de Rotating Header Image

Kalendersynchronisation mit syncevolution

Ich möchte einen Kalender (2-way) zwischen der Groupware meiner Wahl (SOGO – CalDAV Backend) und einem vorgegebenen Oracle Calendar (SyncML Backend) automatisch synchronisieren.

Möglich ist dies mit der Software SyncEvolution. Der CalDAV Support ist erst kürzlich mit der Version 1.2 hinzugekommen. Bei meinem Ubuntu 10.4 ist allerdings nur die Version 1.0 dabei. Zum Glück gibt es allerdings ein Repository mit fertigen Paketen. Als root einfach folgendes ausführen:

# echo "deb http://downloads.syncevolution.org/apt stable main" >> /etc/apt/sources.list
# apt-get update
# apt-get install syncevolution-evolution
Nun müssen wir das ganze noch konfigurieren. Als erstes die Synchronisation mit dem Oracle Kalender:
$ syncevolution --configure --sync-property "syncURL=<KALENDERURL>" \
  --sync-property "username=xxxxxx" \
  --sync-property "password=xxxxxx" \
  --source-property "sync=two-way" \
  --source-property "type=file:text/calendar:2.0" \
  --source-property "evolutionsource=/home/<BENUTZERNAME>/calendar" \
  --source-property "uri=./Calendar/Events" oracle calendar
Und dann noch die Synchronisation zum CalDAV Server:
$ syncevolution --configure \
--template webdav username="xxxxxx" password="xxxxxx" \
--sync-property "syncURL=<KALENDERURL>"  target-config@sogo
$ syncevolution --configure \
--template SyncEvolution_Client syncurl=local://@sogo  username=xxxxxx password=xxxxxx sogo calendar
Initial einmal den Sync von Hand starten:
$ syncevolution --sync slow oracle
$ syncevolution --sync slow sogo

Das wars eigentlich auch schon. Die Konfiguration wird im Home des Benutzers unter .config/syncevolution/” abgespeichert. Im screen habe ich dann folgende Schleife laufen was dafür sorgt das alle 5 Minuten meine Kalender automatisch synchronisiert werden:

#!/bin/bash

while true; do
 syncevolution oracle
 syncevolution sogo
 syncevolution oracle
sleep 300
done

Das ganze ist zwar ziemlich hässlich aber es funktioniert und erfüllt seinen Zweck. Was auch unschön ist das das ganze einen laufendes Gnome benötigt. Ohne Dbus habe ich es jedenfalls nicht zum laufen bekommen, bzw. habe es mir dann nicht weiter angesehen. Wenn jemand eine bessere Idee hat bitte in den Kommentaren melden.

3 Comments

  1. David says:

    Super! Klappt perfekt! Danke für die Anleitung :)

  2. Gast says:

    danke für das tut. klappt soweit ganz gut.

    3 dinge als kleine kritik:

    1. der ordner /home/USER/calendar muss erst erstellt werden sonst läuft dein tut ab “$ syncevolution –sync slow oracle” auf den hammer.
    2. bei “–sync-property “syncURL=” target-config@sogo” fände ich es schöner zu wissen, daß du die CalDAV url von sogo meinst.
    3. nach “apt-get install *” würde ich den hinweis einfügen, daß es besser wäre ab hier nicht weiter als root zu arbeiten. su z.b.

    ansonsten danke für das hilfreiche tut

  3. […] Mein ursprünglicher Artikel wurde von scotti […]

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>