Termine und Kontakte mit freier Software und offenen Formaten

In diesem Artikel beschreibe ich das System, wie ich meine Termine und Kontakte verwalte und auf mehreren Systemen synchron halte. Da ich weder ein Geraet mit Windows-Mobile und Outlook verwende und die möglichst grösste Kontrolle über meine Daten behalten will, habe ich über die Jahre ein fast perfektes System entwickelt, das auf freier Software und freien Formaten basiert und somit auch für andere interessant sein könnte.

Anforderungen
Da ich sowohl Linux, als auch Windows benutze (meinem Arbeitgeber sei Dank), muss alles eben unter beiden Betriebssystem einwandfrei funktionieren. Desweitern sollen meine Termine und vor allem meine Kontaktdaten mit meinem Mobiltelefon synchronisiert werden können. Hier eine Liste mit meinen Anforderungen:

  1. Nur freie Software und ein offenes Format soll verwendet werden, damit die Software ggf. gegen eine andere ausgetauscht werden kann
  2. Ich will meine Kontakte und Termine mit meinem Mobiltelefon synchronisieren können
  3. Farbliche Unterscheidung von Kategorien bei Terminen
  4. ggf. Weiterverarbeitung der Daten in eigenen Programmen
  5. Daten müssen auf mehr als zwei Systemen synchron bleiben
  6. Linux und Windows müssen unterstützt werden
  7. Keine privaten Kalendereinträge sollen in die PIM-Datenbank meines Arbeitsgebers gelangen

Erfahrungen
(Anforderungen 2)
In den letzten Jahren habe ich einige Mobiltelefone und Organizer mit den verschiedensten Betriebssystemen mein eigen genannt und damit herumgespielt. Ich habe die Erfahrung gemacht, dass die Synchronisation zwischen Mobilgerät und Linux nur mit PalmOS zufriedenstellend funktioniert. Als Palm vor zwei Jahren das Treo 650 auf den Markt gebracht hat, habe ich mir so eines zugelegt und habe es bisher noch nicht bereut.

(Anforderung 3, 4, 5)
Zur Synchronisation verwende ich kpilot, da ich unter KDE kaddressbook und korganizer benutze. Diese bieten mir alle Features, die ich benötige, sind intuitiv zu bedienen und sehr stabil (Anforderung 3). Das war nun mein Ausgangspunkt, den ich so beibehalten wollte. Zürst hatte ich das Bedürfnis, meine Daten auf einem zweiten Linux-Rechner auch mit kaddressbook und korganizer einsehen und verändern zu können.
korganizer
Da diese beiden Programme ihre Daten intern als vCard (vcf-Datei) und iCal (ics-Datei) abspeicheren (Anforderung 1,4), lag nichts näher, als diese Dateien in ein RCS (Revision Control System) einzuchecken (Anforderung 5). Da ich für meine Entwicklungen Subversion verwende, nehme ich dies auch für meine vCard-/iCal-Dateien her. Als Apache-Modul habe ich nun überall, wo mir ein Internetzugang zur Verfügung steht, die Möglichkeit, diese Files zu lesen und upzudaten. Man muss halt recht diszipliniert sein, vor dem öffnen der Anwendung ein „Update“ der Dateien zu machen und anschliessend einen „Check in“. Hierfür habe mich einfach ein kleines Bash-Script geschrieben, welches die Schritte der Reihe nach abarbeitet. Für die Zukunft könnte ich mir ein Sunbird-Addon (siehe nächster Abschnitt) vorstellen, das mir das zumindest wenn ich Sunbird benutze, abnimmt.

(Anforderung 6)
Auf der Suche nach Programmen für Windows, bin ich mit Sunbird als Kalender fündig geworden. Er bietet zwar noch nicht alle Features wie korganizer und ist auch noch nicht so ausgereift, aber in der Version 0.3 kann man ihn schon verwenden. Man kann direkt die iCal-Datei einbinden uns sofort losarbeiten. Mit lightning 0.3 (dem Kalender-Addon für Thunderbird) konnte ich keine iCal-Dateien einbinden, sondern nur neü Kalender anlegen.

Sunbird
Schwieriger gestaltete sich die Suche nach einem Adressverwaltungsprogam. Thunderbird unterstützt von sich aus keine vcf-Dateien. Auch habe ich keine Addons gefunden, mit denen man dirket eine vcf-Datei als Adressbuch einbinden kann. Immer mit Input und Export zu arbeiten wäre mir zu umständlich. Schliesslich bin ich auf eine Windows-Version vom kaddressbook gestossen. Allerdings ist diese schon ein wenig älter und hat ein paar Unschönheiten, die die Linuxversion nicht hat. Allerdings kann man sie schon benutzen, sodass man den Markt mal ein wenig behobachten kann, was sich da so tut (z.B. mit Thunderbird 2.0).

(Anforderung 7)
Hier wird es schon ein wenig schwieriger. Unter kpilot (und wahrscheinlich jedem anderen Palm-Sync-Programm), kann ich nur eine iCal-Datei angeben, die gesynct wird. Somit habe ich mir Zwei Perl-Skripte geschrieben, eines das mir meine iCal-Dateien zu einer iCal-Datei zusammenbaut (dieses wird gesynct) und eines, das mir nach dem Sync, die iCal-Datei wieder in mehrere iCal-Dateien zerlegt.

Somit ist es mir möglich, nur eine iCal-Datei (also nur Einträge mit einer entsprechenden Kategorie) in die PIM-Applikation meines Arbeitgebers einzutragen.

Wie weiter oben schon beschrieben, habe ich für jede meiner Kategorien eine iCal-Datei. Das Script, das die iCal-Dateien zu einer zusammenbaut, wird geprüft, ob für jeden Eintrag eine Kategorie angegeben ist. Falls nicht, wird anhand einer Config-Datei die Zuordnung zu einer Kategorie in diesen Eintrag eingefügt.

%MULTIPLE_FILES = (
        'OTHER' => 'other.ics',
        'GEB' => 'geb.ics',
        'URLAUB' => 'urlaub.ics');

Im umgekehrten Fall, also wenn das iCal-File in mehrere aufgetrennt werden soll, wird anhand der Kategorie entschieden, in welche Datei der entsprechende Eintrag landet. Hier könnt Ihr die zwei Scripten herunterladen und an die eigenen Bedürfnisse anpassen.

Eine entsprechendes Verfahren für Kontakte steht noch aus.

Für Fragen, Anregungen und Diskussionen bzgl. dieses Themas stehe ich gerne bereit. Ich hoffe, mit diesem Artikel eine kleinen Denkanstoss gegen zu haben.

Ein Gedanke zu „Termine und Kontakte mit freier Software und offenen Formaten

  1. Pingback: Termine und Kontakte mit freier Software und offenen Formaten | korbinian-pauli.de

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.