English    Deutsch

Termine mit rot gestrichelter Umrandung

Wenn Sie einen Termin mit einer rot gestrichelten Umrandung in CalenGoo sehen, bedeutet das, dass der Termin nicht zu Google hochgeladen werden konnte, weil Google einen Fehler zurückgeliefert hat. Sie ein Termin kann z.B. so aussehen:


Eine bekannte Situation, die das verursachen kann, ist, wenn Sie Terminserien mit dem iPhone Kalender über Google’s Exchange Sync Service angelegt haben. Google’s Exchange Sync Service scheint fehlerhafte Terminserien anzulegen. Um das Problem zu beheben beenden Sie einfach die Terminserie mit Google Kalender und fangen Sie eine neue an. Sie können das tun, indem Sie den Termin in Google Kalender ändern (hängen Sie z.B. ein Zeichen an den Titel oder die Beschreibung) und “Alle folgenden Termine” auswählen. Dies wird eine neue, fehlerfreie Terminserie für alle folgenden Termine der Terminserie anlegen. Und diese fehlerfreie Terminserie kann dann auch von CalenGoo verändert werden.

Um hinterher die rot umrandeten Termine aus CalenGoo zu entfernen, können Sie “Optionen”, “Kalender zurücksetzen” in CalenGoo verwenden, um alle Termine und Kalender zu löschen und neu von Google zu laden.


Eine andere Möglichkeit, das Problem zu lösen, ist, CalenGoo auch mit Google Exchange Sync synchronisieren zu lassen. Denn Google Exchange Sync kann seine eigenen fehlerhaften Termine bearbeiten. Bitte schauen Sie hir, wie Sie CalenGoo entsprechend konfigurieren können: Sync mit dem iPhone Kalender.

Technische Details

Falls Sie in technischen Details und einer Erläuterung des Problems interessiert sind, lesen Sie bitte weiter:

Zuerst wurden in dem folgenden Beispiel zwei Terminserien angelegt, eine mit CalenGoo “Created by CalenGoo” und eine andere mit dem iPhone Kalender unter Verwendung von Googles Exchange Sync mit dem Namen “Created by iPhone/Exchange”. Dann wurde versucht eine Terminserienausnahme für “Created by CalenGoo” anzulegen. Es hat funktioniert und der neue Termin wurde erfolgreich hochgeladen. Dann wurde das selbe mit dem Termin “Created by iPhone/Exchange” versucht. Dabei trat ein Fehler auf, Google hat den Termin abgelehnt und CalenGoo hat ihn mit einem roten Rand markiert:


Mit einem Netzwerktool und indem CalenGoo’s SSL Verschlüsselung abgeschaltet wurde, konnte man sehen, was genau passiert war. CalenGoo hat folgendes gesendet:
   1 <?xml version="1.0" encoding="UTF-8"?>
   2 <entry xmlns="http://www.w3.org/2005/Atom" xmlns:gd="http://schemas.google.com/g/2005" xmlns:app="http://www.w3.org/2007/app" xmlns:gCal="http://schemas.google.com/gCal/2005">
   3         <gd:originalEvent id="34u19309s6cjt2lgr7746p5dfk" href="http://www.google.com/calendar/feeds/ciphfus9g025ei3h0hn4j80iic%40group.calendar.google.com/private/full/34u19309s6cjt2lgr7746p5dfk">
   4                 <gd:when startTime="2011-02-06T13:00:00+01:00"/>
   5         </gd:originalEvent>
   6         <gd:eventStatus value="http://schemas.google.com/g/2005#event.confirmed"/>
   7         <category term="http://schemas.google.com/g/2005#event" scheme="http://schemas.google.com/g/2005#kind"/>
   8         <title>Created by CalenGoo</title>
   9         <gd:when startTime="2011-02-06T12:00:00+01:00" endTime="2011-02-06T13:00:00+01:00"/>
  10 </entry>

um eine Terminserienausnahme für “Created by CalenGoo” zu erzeugen. Google antwortete mit

HTTP/1.1 201 Created

Dann hat CalenGoo folgendes gesendet:
   1 <?xml version="1.0" encoding="UTF-8"?>
   2 <entry xmlns="http://www.w3.org/2005/Atom" xmlns:gd="http://schemas.google.com/g/2005" xmlns:app="http://www.w3.org/2007/app" xmlns:gCal="http://schemas.google.com/gCal/2005">
   3         <gd:originalEvent id="F8F0DDF535D74FB097F33ABEF68BD82A00000000000000000000000000000000" href="http://www.google.com/calendar/feeds/ciphfus9g025ei3h0hn4j80iic%40group.calendar.google.com/private/full/_8os4cc248h33acpl8grj8hi260sjehhj6d0k4ha66os44h1o690j0c1g60o30c1g60o30c1g60o30c1g60o30c1g60o30c1g60o30c0">
   4                 <gd:when startTime="2011-02-06T13:00:00+01:00"/>
   5         </gd:originalEvent>
   6         <gd:eventStatus value="http://schemas.google.com/g/2005#event.confirmed"/>
   7         <category term="http://schemas.google.com/g/2005#event" scheme="http://schemas.google.com/g/2005#kind"/>
   8         <title>Created by iPhone/Exchange</title>
   9         <gd:when startTime="2011-02-06T12:00:00+01:00" endTime="2011-02-06T13:00:00+01:00"/>
  10 </entry>

um eine Terminserienausnahme für “Created by iPhone/Exchange” zu erzeugen und Google hat mit

HTTP/1.1 403 Forbidden

g:originalEvent [2011-02-06 12:00:00] does NOT correspond to an instance of the recurring event.

geantwortet. Das ist das Problem. Beide Terminserien sollten identisch sein (und sind es scheinbar auch), also sollte Google die Terminserienausnahme in beiden Fällen anlegen können. Außerdem hat Google Exchange Sync eine merkwürdige Zeitzone verwendet, die zwar die selbe Sommerzeit wie die eigentlich korrekte Zeitzone “Europe/Berlin” hat, aber ganz anders heißt:

Dies ist der Termin der mit CalenGoo angelegt wurde, “Created by CalenGoo”:

DTSTART;TZID=Europe/Berlin:20110205T130000
DTEND;TZID=Europe/Berlin:20110205T140000
RRULE:FREQ=DAILY
BEGIN:VTIMEZONE
TZID:Europe/Berlin
X-LIC-LOCATION:Europe/Berlin
BEGIN:DAYLIGHT
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
TZNAME:CEST
DTSTART:19700329T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
TZNAME:CET
DTSTART:19701025T030000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
END:STANDARD
END:VTIMEZONE


Dies ist der Termin der von Google Exchange Sync angelegt wurde, “Created by iPhone/Exchange”:

DTSTART;TZID=Africa/Ceuta:20110205T130000
DTEND;TZID=Africa/Ceuta:20110205T140000
RRULE:FREQ=DAILY
BEGIN:VTIMEZONE
TZID:Africa/Ceuta
X-LIC-LOCATION:Africa/Ceuta
BEGIN:DAYLIGHT
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
TZNAME:CEST
DTSTART:19700329T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
TZNAME:CET
DTSTART:19701025T030000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
END:STANDARD
END:VTIMEZONE


Wie an sehen kann, wurde eine falsche Zeitzone verwendet (“Africa/Ceuta” statt “Europe/Berlin”) aber da die falsche Zeitzone trotzdem die selbe Sommerzeit und Zeitdifferenz wie “Europe/Berlin” hat, sollte das auch kein Problem sein. Es gibt also keinen Grund, warum Google die Terminserienausnahme ablehnen sollte. Es muss sich um einen versteckten Fehler in Google Kalenders Datenbankstrukturen handeln.