[[Vorlage(Archiviert)]] {{{#!vorlage Wissen [:Pakete_installieren: Installation von Programmen] [:Archiv/OpenSync: Benutzung von OpenSync] [:Editor: Einen Editor öffnen] }}} [[Inhaltsverzeichnis(2)]] Das Sunbird-Plugin für OpenSync ermöglicht eine Synchronisation mit den Daten von [:Archiv/Mozilla_Sunbird:], einer Kalender-Anwendung aus der Mozilla-Suite [2]. Das Plugin funktioniert aber auch mit [:Thunderbird/Lightning:Lightning] oder jeder beliebigen anderen Anwendung, die ihre Kalender-Daten als [wikipedia:ICalendar:iCalendar] im .ics-Format absichern oder auf [wikipedia:Webdav:WebDAV] zurückgreifen kann. Als eigenständiges Projekt entworfen, wurde das Plugin schließlich in OpenSync [1] aufgenommen - es bietet daher auch einige Spezialitäten, die man bei anderen Plugins vergebens sucht. Dazu gehört insbesondere die Möglichkeit, ein Mehrkalendersystem abzugleichen, also ein Mitglied, das mehrere Kalender enthält (z.B. einen für Privates, einen für Geschäftliches und einen für Ferien und Feiertage). Während bei anderen Plugins jeder Kalender als eigenes Mitglied definiert werden müsste, so dass diese dann auch untereinander abgeglichen würden, kann sich das Sunbird-Plugin merken, was wohin gehört, und verteilt die Daten entsprechend. = Installation = Für die Verwendung des Plugins muss es zusammen mit [:Archiv/OpenSync:] installiert worden sein [1]: * '''opensync-plugin-sunbird''' [1] {{{#!vorlage Hinweis Unter Ubuntu [:Hardy:Hardy Heron] wurde das Plugin entfernt, da der Sunbird Kalender seit Version 0.3 standardmäßig ein anderes Kalenderformat verwendet (das SQLite-basierte .sdb statt dem iCalendar-Format .ics). Hintergrundinfos siehe [https://bugs.launchpad.net/ubuntu/+source/libopensync-plugin-sunbird/+bug/215981 hier]. Es gibt ein noch im Entwicklungsstadium befindliches Mozilla-Plugin, das es ermöglichen soll, Sunbird/Lightning via OpenSync mit Bluetooth-Geräten zu synchronisieren: [http://kaarposoft.dk/bluezync/index.html BlueZync] . Dieses Plugin funktioniert unter Hardy derzeit jedoch laut Aussage des Entwicklers nur mit Lightning/Sunbird bis Version 0.7. }}} = Vorbereitung = Verwirrend ist, dass Sunbird die Kalender nicht automatisch im .ics-Format speichert, sondern in einer Datenbank unter '''~/.mozilla/sunbird/IrGeNdWaS.default/storage.sdb'''. Mit dieser Datenbank sollte nicht abgeglichen werden, da das zu Problemen von der Darstellung der Kalender bis zur Funktionsuntauglichkeit von Sunbird führen kann. Um daher einen Kalender im .ics-Format zu erhalten, muss beim Erstellen eines neuen Kalenders ("Datei" - "Neu" - "Kalender...") die Option "im Netzwerk" und das Format "iCalendar" gewählt werden; als Adresse kann nun unter folgendem Format ein beliebiger Pfad auch zu einem lokalen Verzeichnis angegeben werden: '''[file:///Pfad/zu/einer/Kalender.ics file:///Pfad/zu/einer/Kalender.ics]'''. Bereits bestehende (und in der storage.sdb abgespeicherte) Kalender können mit der Export-Funktion (''"Datei -> Kalender exportieren"'') in eine .ics umgewandelt und dann wie eben beschrieben eingebunden werden. = Konfiguration = == Einfaches Skript == Weder für [:Archiv/OpenSync:KitchenSync] unter KDE noch für das [:Archiv/OpenSync:Multisync-GUI] unter GNOME [1] besteht eine graphische Oberfläche für die Konfiguration des Plugins, weshalb stets ein kleines Skript erstellt werden muss. Es sollte folgendermaßen aussehen, wenn ein lokaler Kalender eingebunden wird: {{{ }}} So sieht das Konfigurations-Skript für einen web-basierten Kalender aus, wobei neben der Adresse auch Benutzername und Passwort anzugeben sind. {{{#!vorlage Warnung Benutzername und Passwort werden in diesem Skript unverschlüsselt in Klartext abgespeichert, sind unter Umständen also von anderen Benutzern einsehbar. Sollte dies möglich sein, sollte man die Dateirechte entsprechend anpassen (siehe [:chmod:Rechte]). }}} {{{ }}} == Multikalender-System == Um nun mehrere Kalender mit einem anderen Mitglied abzugleichen, ohne dass diese Kalender untereinander synchronisiert werden, ist die '''file'''-, bzw- die '''webdav'''-Zeile einfach zu vervielfachen. Hinzukommen muss dazu eine Angabe, welcher Eintrag der Haupteintrag sein soll, damit das Plugin weiß, wohin neue Einträge aus dem anderen Mitglied, die also noch keinem der Sunbird-Kalender zugeordnet sind, einzutragen sind. Dazu dient die Option ``default="X"``, wobei "X" als Zahl angibt, als wievielter der betreffende Kalender im Skript aufgeführt ist: {{{ }}} Und natürlich lässt sich dies auch mit WebDAV-Kalendern mischen: {{{ }}} == weitere Optionen == * ``deletedaysold="30"``: Alter von Einträgen (hier 30 Tage), die für die Synchronisation nicht mehr berücksichtigt werden sollen. == Automatisches Aktualisieren beim Start von Sunbird (sowie Backup der Kalender.ics) == Um beim Start von Sunbird einen automatischen Abgleich mit dem Google-Calender auszuführen habe ich die '''/usr/bin/sunbird''' am Start der Datei um folgenden Codeabschnitt erweitert: {{{sh /usr/bin/sunbirdsync }}} und folgende Datei '''/usr/bin/sunbirdsync''' angelegt: {{{#!/bin/bash (-) (-) DATE=$(date +%Y-%m-%d-%H%M%S) cp "pfad/kalender.ics" "/pfad/"$DATE-"kalender.ics" msynctool --sync "Name der Opensync-Gruppe zum Aktualisieren der Kalender.ics" }}} wobei Zeile '''2''' und '''3''' mit '''#''' auskommentier bar sind und nur den Zweck eines Backups der kalender.ics dienen. Startet man nun Sunbird so wird automatisch ein Abgleich mit der online verfügbaren Datenbank (sowie das Anlegen eines Backups) durchgeführt. Ab Sofort kann man die Synchronisation auch über '''sunbirdsync''' in der Konsole durchführen. = Links = Für weitere Infos: [http://www.opensync.org/browser/plugins/sunbird/README?rev=971 Readme] {en} # tag: Hardware, Kommunikation, Multimedia