Mülltermine von BonnOrange mit Alarm im Kalender

Zum Jahreswechsel 2014/15 hatte ich noch die Mülltermine für meine Straße von den BonnOrange Webseiten mühsam aus dem HTML gekratzt, lokal gespeichert, in eine maschinenlesbare Form gebracht und dann in meinen OS X iCal Kalender per selbstverfasstem AppleScript gepackt – inklusive einer Terminerinnerung am Vorabend des Abfuhrtages, denn nur so macht es aus meiner Sicht Sinn.

Mülltermine als iCal Datei

Zum Glück hat sich da im letzten Jahr einiges bei BonnOrange getan, so dass wir im OK Lab den Punkt „Mülltermine automatisch und leicht zum eigenen Kalender hinzufügen können“ streichen konnten: auf den Webseiten von BonnOrange gibt es jetzt – nach Auswahl seiner Straße – eine iCal Datei als Download, vermöge der man nun die Termine in seinen Kalender eintragen kann. – Klasse!

ABER: leider haben sie keine Terminerinnerung und so hätte ich die morgige Abfuhr der Restmülltonne fast verpennt. Ich gehöre nämlich nicht zu denen, die regelmäßig in ihre Kalender App schauen, um zu sehen, welche Termine anstehen.

Das Script

Um es kurz zu machen: ich kramte heute also nochmal mein kleines AppleScript von vor ca. einem Jahr heraus, welches allen Terminen meines „Müll“ genannten Kalenders in der Kalender App von OS X eine Erinnerung um 20 Uhr am Vortag des Abfuhrtermins hinzufügt. Habe es vorhin schon kurz getwittert, aber hier dann nochmal der Quellcode zum copypasten:

-- Allen BonnOrange Terminen im iCal Kalender "Müll"
-- einen Alarm um 20 Uhr am Vortag hinzufügen.
-- (c) 2014 Stefan Wolfrum (@metawops)
tell application "Calendar"
    tell calendar "Müll"
        repeat with myEvent in events
            tell myEvent
                FixEvent(myEvent) of me
            end tell
        end repeat
    end tell
end tell

on FixEvent(myEvent)
    tell application "Calendar"
        tell myEvent
            make new sound alarm at end with properties {trigger interval:-240}
        end tell
    end tell
end FixEvent

Das setzt natürlich voraus, dass ihr die Termine aus dem von der BonnOrange Seite heruntergeladenen .ical File auch in einen Kalender namens „Müll“ eingefügt habt. Sonst müsst ihr das einfach im Quellcode entsprechend ändern. Nur: es sollte schon ein eigener Kalender sein, denn dieses kleine Script geht alle Termine des erwähnten Kalenders durch und fügt allen die Terminerinnerung am Vortag um 20 Uhr hinzu!

Wenn ihr die Uhrzeit der Erinnerung ändern wollt, müsst ihr die Zahl 240 ändern. Sie steht für die Minuten vor Mitternacht des tatsächlichen Abfuhrtermins. Da 240 Minuten 4 Stunden entspricht, ergibt das einen Alarm um 24-4=20 Uhr. 😉

AppleScript Editor Tool

AppleScriptEditorIconAchso, der AppleScript Editor ist bei OS X immer dabei, befindet sich im Ordner /Applications/Utilities und heißt Script Editor. Einfach starten, den Quellcode oben in ein neues, leeres Script copypasten und auf Run drücken. Und dann Geduld haben – AppleScript ist nicht gerade schnell. Es dreht sich ein Fortschrittsindikator und wenn der wieder verschwindet, ist das Skript fertig. Zur Überprüfung, ob es erfolgreich gelaufen ist, einfach einen der Termine in der Calendar App doppelklicken und sehen, ob eine Erinnerung hinzugefügt wurde. Bei mir klappt’s, aber ich kann natürlich keine Garantie dafür übernehmen, dass es auch bei euch klappt. ?

Und fragt mich nicht nach Windows … da kenne ich mich nicht aus.
Viel Spaß!

Damian Paderta
Lab Lead OK Lab Bonn