Open Source im professionellen Einsatz
Linux-Magazin 12/2010
© Renate Franke, Pixelio.de

© Renate Franke, Pixelio.de

Perl erinnert automatisch an Termine

Erwachet!

Pünktlichkeit ist die Höflichkeit der Könige. Ein Perl-Daemon liest I-Calendar-Dateien mit Meeting-Terminen ein und alarmiert den User auf individuelle Weise kurz vor Beginn der Veranstaltung.

387

Wer sich hartnäckig weigert seine Kommunikation in der Arbeitswelt über Microsoft Exchange abzuwickeln und auch sonst keine GUI-schweren Kalenderapplikationen laufen hat, erhält dennoch Einladungen zu Meetings per E-Mail in Form von ».ics«-Dateien. Diese im I-Calendar-Format [2] verfassten maschinenlesbaren Textfiles beschreiben, an welchem Tag und zu welcher Uhrzeit das Meeting stattfindet, welches Thema dort erörtert und wer anwesend sein wird. Sie definieren auch den Turnus bei Meetings, die sich regelmäßig wiederholen.

GUI-schwer oder Perl-leicht?

Kalenderapplikationen aus dem Hause Gnome und KDE, Evolution, I-Cal auf dem Mac, Outlook auf Windows oder Google Calendar im Web importieren diese ».ics«-Dateien, stellen Meetings in einer Übersicht farbenfroh dar (Abbildung 1) und lösen mit Dialogfenstern Alarm aus, falls sich der Anfang eines Meetings nähert und der User sich schnellstens auf den Weg zum Konferenzraum machen sollte. Umgekehrt erlaubt zum Beispiel der Google-Kalender den Export der dort hinterlegten Kalenderdaten als ».ics«-Datei.

Abbildung 1: Der Google-Kalender listet tägliche Standup-Meetings, ein wöchentliches 1:1-Meeting und für Montag einen Feiertag auf.

Dies öffnet die Tür zu selbst gestrickten Kalenderprogrammen, wie dem heute vorgestellten Perl-Skript »ical-daemon«, das eine Reihe von ».ics«-Dateien einliest, eine Alarmtabelle mit den bevorstehenden Meetings anlegt und 15 Minuten vor deren Beginn jeweils ein Skript »ical-notify« ausführt, das den User auf beliebige Art und Weise wachrüttelt. E-Mail ist denkbar, eine Nachricht auf einem IM- oder IRC-Netzwerk oder auch etwas ganz anderes, zum Beispiel das Abspielen eines bestimmten Musikstücks.

Kalender exportiert

Um die Kalenderdaten vom Google-Server herunterzuladen, klickt der User im Google-Kalender unter »Settings | Google Calendar Settings | Calendars« den »Export«-Button und erhält ein Zip-Archiv mit einer ».ics«-Datei (Abbildung 2). Wer sich die ».ics«-Datei in Abbildung 3 genau ansieht, erkennt darin zeilenweise Tags, von denen »DTSTART« den Meetingbeginn und »DESCRIPTION« das Thema der Besprechung angeben. Es handelt sich um ein alle zwei Wochen jeweils am Mittwoch stattfindendes Meeting, was die Zeile

RRULE:FREQ=WEEKLY;INTERVAL=2;BYDAY=WE

festlegt. Daraus generiert die Kalenderapplikation dann Meeting-Events ab einem Startdatum (zum Beispiel der aktuellen Uhrzeit) bis zu einem Zeitpunkt in der Zukunft und kann dann genau zu diesen Terminen bestimmte Aktionen wie zum Beispiel eine Benachrichtigung einleiten.

Abbildung 2: Die Funktion »Export« holt die ».ics«-Datei des Google-Kalenders vom Server.

Abbildung 3: Die von Google Calendar als Kalender-Export produzierte ».ics«-Datei für ein zweiwöchentlich stattfindendes Meeting.

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Tag für Tag

    Termin- und Aufgabenplanung gehören in größeren Firmen zur täglichen Routine. Kalender-Standards sorgen dafür, dass die Arbeit mit beliebigen Programmen klappt - auch ohne Filofax.

  • Event-gesteuert

    Incron ist kein Ersatz für den guten alten Cron, sondern eine Ergänzung. Während Cron nach einem starren Zeitschema arbeitet, beobachtet Incron Verzeichnisse im Dateisystem und reagiert auf dortige Ereignisse.

  • Auferstanden aus Archiven

    Ein Perl-Daemon beschert gelöschten Files ein zweites Leben und kann ungewollte Änderungen ungeschehen machen. Dafür überwacht er mit Hilfe der Kernelschnittstelle Dnotify eine Verzeichnishierarchie und integriert alle darin gefundenen Dateien transparent in ein eigenes Versionskontrollsystem.

  • Perl-Snapshot

    Damit ein Anwender schnell über womöglich ungewollte Zu- und Abgänge in seinem Netzwerk informiert wird, speichert ein Perl-Daemon periodisch die Daten von Nmap-Scans und gibt sie über ein eingebautes Webinterface an Nagios weiter.

  • Bus-Touristik

    Sobald der D-Bus einen eingesteckten USB-Stick meldet, startet ein Perl-Daemon automatisch ein Backup mit Progressanzeige auf dem Desktop.

comments powered by Disqus