Hallo,
Am 19.05.2012 12:54, schrieb Rudolf Koenig:
>> An sich genügt es, über die private URL eines Google-Kalenders alle
>> Kalendereinträge im ICAL-Format herunterzuladen.
>
> Ich habe irgendetwas von einem API key gelesen, der nur bis zu 10.000 Abrufe am
> Tag konstenlos ist. Habe ich es falsch gelesen, oder bezieht sich das auf was
> anderes?
ich glaube, daß das zum API gehört, mit dem man direkt einzelne Einträge
im Kalender lesen oder manipulieren kann. Ich ziehe im Moment die banale
Variante vor, mir über die URL
https://www.google.com/calendar/ical/EMAIL/private-KEY/basic.ics
mit EMAIL= foo.bar%
40googlemail.com und KEY= ein langer Hex-String
den gesamten Kalender im ICAL-Format zu ziehen, und zwar, wie Du
schreibst, mittels InternalTimer in einem bei
define <NAME> Calendar ical <URL> <INTERVAL>
definierten Intervall <INTERVAL> (Default: 30 Minuten). Das ist der
Zeitraum, nach dem jeweils wieder nach neuen Ereignissen geschaut wird.
> - bei der fhem-definition der KalenderServer das naechste Ereignis abholen
> (Ereignis == Anfang oder Ende eines Termins), und diesen Zeitpunkt in
> InternalTimer mit den Parameter des Ereignisses und mit einen eigenen
> Funktion eintragen.
Das ist eine gute Idee. Alles eine Frage der geschickten Verwaltung der
Alarme und Ereignisse. Es läuft vermutlich darauf hinaus, daß ich die
Ereignisse in einer internen Datenstruktur des Moduls ablege, eine nach
Zeitpunkten (Alarm, Start, Stop) sortierte Liste generiere, und dann
jeweils für den nächsten Zeitpunkt den Wecker stelle.
> - ich faende noch ein "get" interessant, das entweder nach dem Start/Ende eines
> Termins fragen kann, oder ob zu einem bestimmten Datum/Zeitpunkt was los ist.
So was wie:
get <NAME> start <EVENT>
get <NAME> stop <EVENT>
get <NAME> title <EVENT>
get <NAME> location <EVENT>
Wie findet der Anwender ein Ereignis? Im ICAL-Format sieht das so aus:
BEGIN:VEVENT
DTSTART:20120521T140000Z
DTEND:20120521T150000Z
DTSTAMP:20120519T132328Z
UID:oedehg54uq46m...@google.com
CREATED:20120519T132318Z
DESCRIPTION:Beschreibung des Termins
LAST-MODIFIED:20120519T132318Z
LOCATION:Ort des Termins
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:Titel des Termins
TRANSP:OPAQUE
CATEGORIES:
http://schemas.google.com/g/2005#event
END:VEVENT
Das Ereignis hat eine UID. Ob das benutzerfreundlich ist?
Ich sehe, es wird mühsam...
Viele Grüße
Boris