CalDAV

eMail gehört schon seit langem zu den selbstverständlichsten Dingen auf jedem Computer. Daneben wird aber ein zentraler Kalender immer mehr ebenso zu einer Selbstverständlichkeit, welche in der Implementierung im Netzwerk aber wesentlich problematischer ist.

Denn im Gegensatz zu den eMail Standards wie POP3/IMAP4 gab es bei der Kalenderverwaltung lange Zeit keinen (Industrie)Standard. Dies nutzte in erster Linie dem Platzhirschen Microsoft mit seiner Groupwarelösung Exchange Server / Outlook Client.

Tatsächlich ist das Produkt aber für viele Netzwerke ein Overkill, kostet doch etwas Geld und ist Clientseitig nur gut auf Windows nutzbar – äusserst dumm für ein UNIX zentriertes Netzwerk.

Seit März 2007 scheint gibt es aber für diesen Fall einen absoluten Exchange Killer

CalDAV / RFC 4791

Um was geht es dort:

  • CalDAV operiert aussschliesslich mit Daten im iCalendar Format (ics)
  • Im Gegensatz zum simplen ics over HTTP, kann CalDAV den Zugriff auf die Kalenderresourcen limitieren und greift molekular auf alle einzelnen Einträge in einem iCalendar zu
  • Diese Technik wird als Erweiterung von WebDAV implementiert.

Somit steht CalDAV in bester UNIX Tradition – keep it simple. Endlich lassen sich auf UNIX (aber auch Windows) Plattformen Kalenderinformationen beliebig austauschen und verwalten. Was folgt ist noch eine Auflistung der möglichen Clients und Server:

CalDAV Clients:
  • Mozilla Sunbird / Lightning (Thunderbird plugin)
  • iCal (ab Mac OS X 10.5)
  • Novell Evolution
  • KDE Kontact (wahrscheinlich ab KDE 4.1 )
CalDav Servers:

13 Gedanken zu „CalDAV“

  1. Nach einer längeren Testphase kann ich jetzt endlich positives vermelden.

    Serverseitig habe ich mich für DAViCal entschieden, da Cosmo & Bongo nicht nur reine CalDAV Server sind und daher für meine Zwecke überdimensioniert. Bedework ist relativ kompliziert zu installieren und nicht gerade ein Leichtgewicht und beim Studium der knapp gehalteten Darwin Caldender Server Doku war ich doch recht skeptisch ob dass im Linux Einsatz auch so glatt geht wie bei Mac OS X Server.
    DAViCAL ist recht einfach zu installieren, es stehen zwei noarch rpm’s zur Verfügung. Steinig ist nur die noch nicht abgeschlossene Namensumbenennung von RSCDS zu DAViCAL, welche in den Skripten teilweise noch angepasst werden muss. Danach läuft der Server stabil und ist durch ein Webfrontend komfortabel zu bedienen. Leider gab es bis vor kurzem oftmals Probleme in der Server<->Client Kommunikation welche sich auf Performance Probleme zurückführen ließen. Im Apache error logfile sah dass dann so aus:
    [Thu Feb 07 20:44:21 2008] [error] [client XXX.XX.XX.X] client denied by server configuration: /usr/share/rscds/htdocs/caldav.php
    [Thu Feb 07 20:44:21 2008] [error] [client XXX.XX.XX.X] no acceptable variant: /usr/share/apache2/error/HTTP_FORBIDDEN.html.var
    Mit den letzten Updates von DAViCAL auf 0.94 und der Hilfsbibliothek libawl-php auf 0.25 sind diese Probleme verschwunden und die Kommunikation läuft performant.

    Clientseitig läuft nur Sunbird/Lightning zuverlässig. Alle Mainfeatures von CalDAV funktionieren. Auch wenn der Server auf SSL läuft oder auf einem alternativen HTTP-Port. Mit Version 0.8 (derzeit nur pre-Version) ist sogar lokales Caching möglich, was auch ganz gut funktioniert. Alles in allem ein prima Client.
    Novell Evolution 2.12.0 läuft hingegen gar nicht rund. Im Kalender Bereich gibts zumindest bei meiner Version einen Haufen Fehler; so wird nur die Monatsanzeige richtig dargestellt (im Gegensatz zur bspw. Wochendarstellung). Läuft der CalDAV Server nicht auf HTTP Port 80, funktionieren die Verbindungen gar nicht oder unzuverlässig. Alles in allem derzeit nicht empfehlenswert.
    Mulberry hat ich mal probehalber angeschaut… Schauderhaft – auch keine Portunterstützung != 80
    iCal 3.X auf Mac OS X konnte ich mangels Leopard Installation leider noch nicht testen. Auch eine KDE-PIM Lösung ist derzeit noch nicht in Sicht.

  2. iCal 3.x auf Mac OS X 10.5.2 läuft sehr gut. Die Performance ist dabei um längen besser als Sunbird 0.8pre. Leider lassen sich die Termine zwischen zwei verschiedenen CalDAV Kalendern nicht hin- und herverschieben. Die Ausgabe der Kalenderdaten ist eher minimal aber auch sehr zweckmäßig.

  3. Hallo,

    ich habe gerade gelesen, dass Sie Sunbird mit SSL an Davical verbunden haben. Das gleiche habe ich mit einem Ubuntu-Server auch vor. Ohne SSL ist die Installatione kein Problem, mit SSL habe ich noch nicht versucht. Was muß ich beachten?

  4. hali halo,

    endlich mal ein fremdkommentar :))

    Also beachten muss man eigentlich nichts. Serverseitig hab ich die Installationseinträge statt in der httpd.conf.local in der vhosts.d/vhost-ssl.conf vorgenommen (erfordert natürlich generell eine SSL Konfiguration in Apache). In Sunbird gebe ich dann einfach eine https Adresse an

    100% klappt die Verbindung aber nicht. Durch falsche (oder eher fehlende) Authentifizierungsanfragen seitens Sunbird, kommt der Kalender nicht immer sofort (v.a. auf dem Serverrechner selber). Mit einem Neuladen der Kalender klappt’s dann aber immer.
    Siehe auch
    CalDAV problems when authorization is required

  5. Die Probleme bei SSL gesicherten Kalenderservern mit Sunbird/Lightning gehören nun der Vergangenheit an. Am Wahrscheinlichsten war es ein Problem mit einer älteren Apache2 Version, welches sich besonders ungünstig bei Sunbird/Lightning ausgewirkt hat.

    Mit der Version 0.9 der Mozilla Kalenderprogramme wurde aber auch die Performance verbessert, so dass diese jetzt als gleichwertiger Konkurrent zu der iCal3 auf Mac OS X gesehen werden können.

    Daneben ist ja auch schon seit längerem der Google Calender CalDAV fähig. Damit gibt es jetzt noch ein weit verbreiteten Online Kalender, so dass die CalDAV Familie nun einigermassen komplett ist.

    Leider fehlt darin noch KDE Kontact. Leider wird dort die CalDAV Unterstützung nicht so schnell kommen. Wer es etwas beschleunigen will kann unter

    http://bugs.kde.org/show_bug.cgi?id=133614

    voten.

  6. Hi, vielen Dank für deinen Post. Hast mich auf DavICal aufmerksam gemacht und werde es jetzt testen.
    Ist die Evolution Unterstützung mittlerweilse besser oder immernoch so schlecht?
    Läuft damit nur der Kalender oder auch die Task-Verwaltung?

  7. Als ich Evolution Anfang 2008 nochmals ausprobierte hatte sich nichts fundamental gebessert. Seitdem hab ich es nicht mehr ausprobiert und kann dazu leider nichts sagen.

    Aber Davical und Sunbird/Lightning laufen seit Mitte/Ende 2008 rocksolid.

    iCal 3.x läuft sehr stabil – ist das performanteste Programm und hat das Killerfeature, dass man Offline Einträge vornehmen kann, die völlig transparent bei der nächsten Online-Verbindung auf den Server transferiert werden.
    Allerdings hat das Programm die nervige Eigenschaft, dass beim Manipulieren von Einträgen Felder, die Sunbird/Lightning benutzt (bspw. % Abarbeitung eines Tasks), gelöscht werden – Hier wird wohl einfach der Eintrag neu geschrieben anstatt Felder upzudaten.

    KDE Kontact hat die vage Ansage an CalDAV nicht implementiert, mit dem Resultat dass dieser Featurewunsch innerhalb der letzten Monate auf den 3. Platz der meistgenannte Wünsche des gesamten KDE Projektes auf dem Bugtracking System geklettert ist.

  8. Evolution scheint inzwischen nutzbar zu sein mit Version 2.26.1. Kalender, Notizen und Aufgaben lassen sich mit davical synchronisieren.

  9. Oben steht für die Massen, dann kann ich ja mal ganz doof fragen… ;o)
    Einen eigenen Server habe ich nicht, sondern bin bei einem Provider (php und mySql vorhanden), kann ich DAViCal bei mir installieren mit meinem Confixx Zugang?
    die ganzen Beschreibungen erscheinen für mich nach reinen Administratoren Zugriffsmöglichkeiten.
    http://phpicalendar.net/documentation/index.php/Installation habe ich zwar bei mir zum laufen gebracht, scheint aber weit weniger Serverkenntnisse zu fordern, leider gibts aber auch nur die Möglichkeit zu abonnieren und nicht, wie ich vermute, bei DAViCal auch von anderen Geräten aus zu verändern.

  10. frag ruhig… 😉

    ok, du hast keinen root-server nehme ich mal an. dann gehen schon mal die davical rpm’s nicht, da die sich die meisten dateien /usr/share… installieren
    es gäbe aber noch die .tgz pakete, die man überallhin installieren kann. Ich sehe nur 2 Schwierigkeiten.

    1. du brauchst einen PostgreSQL Server mit admin rechten.
    2. das konfigurationsfile der davical software ist m.E. mit /etc/davical hartkodiert

    Ich hab mir phpicalender kurz mal angeschaut. das scheint nur eine weboberfläche für ics Kalenderdateien zu sein – kein CalDAV Server. Alternativ könnte man auch nur eine ics Kalender irgendwo im WebDAV Bereich des HTTP-Servers ablegen.

  11. Auch das iPhone OS kann jetzt CalDAV Kalender direkt kontaktieren 🙂 🙂

    Prinzipiell gab es ein paar Kinderkrankheiten (Authentifizierungsfehler des iPhone CalDAV Kalenders bei Davical SSL Kalendern) – doch mit den neuesten Versionen:

    iPhone OS 3.1
    Davical 0.9.7.2

    geht’s jetzt wirklich problemlos.

    Mittlerweile ist übrigens die Namenskonsolidierung von ehemals RSCDS auf davical abgeschlossen – durch das ganze Programmpaket zieht sich jetzt der neue Name hindurch.
    Eine genaue Erläuterung der iPhone Konfiguration findet sich auch unter diesem Link auf den Davical Webseiten.

Schreibe einen Kommentar

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