Ich benutze einen Saber-CalDAV-Server und verwende iCal auf Yosemite als Client. Jetzt erstelle ich ein ganztägig wiederkehrendes Ereignis in iCal und verwende den Charles Proxy, um den Inhalt der Anfrage zu prüfen, die von iCal gesendet wird. Erstellen der Veranstaltung sendet sie korrekte Daten:Änderungen an wiederkehrenden Allday-Ereignissen, die nicht von iCal gesendet wurden
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Apple Inc.//Mac OS X 10.10.1//EN
CALSCALE:GREGORIAN
BEGIN:VEVENT
CREATED:20160404T203206Z
UID:14C144D6-A872-4D24-91C0-783A9979BB9E
RRULE:FREQ=WEEKLY;INTERVAL=1;COUNT=1
DTEND;VALUE=DATE:20160409
TRANSP:TRANSPARENT
SUMMARY:Repeat
DTSTART;VALUE=DATE:20160404
DTSTAMP:20160404T203206Z
SEQUENCE:0
BEGIN:VALARM
X-WR-ALARMUID:A807798B-DE16-4E62-86E9-C204A2B80F76
UID:A807798B-DE16-4E62-86E9-C204A2B80F76
TRIGGER;VALUE=DATE-TIME:19760401T005545Z
ACTION:NONE
END:VALARM
END:VEVENT
END:VCALENDAR
Die Antwort:
HTTP/1.1 201 Created
Date: Mon, 04 Apr 2016 20:32:19 GMT
Server: Apache/2.4.10 (Unix) OpenSSL/1.0.1j PHP/5.6.3 mod_perl/2.0.8-dev Perl/v5.16.3
X-Powered-By: PHP/5.6.3
X-Sabre-Version: 3.0.8
Content-Length: 0
ETag: "55c6a353f278653fdd61387395c274df"
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html; charset=UTF-8
Aber wenn ich ein einzelnes Auftreten des wiederkehrenden Ereignisses ändern und nur die Änderungen in diesem Vorkommen gelten, iCal sendet die alte Kalenderdaten zurück zum Server ohne Änderungen. Wenn ich die Änderungen auf alle Vorkommen anwende, werden die korrekten Daten gesendet. Wenn ich die Änderungen nur auf zukünftige Ereignisse anwenden möchte, wird das alte Ereignis korrekt geändert und ein neues Ereignis für die zukünftigen Ereignisse erstellt. Aber auch hier werden keine Änderungen an einem einzelnen Ereignis an den Server gesendet.
Dies ist nur für Allday-Events. Zeitgesteuerte Ereignisse funktionieren gut. Es spielt auch keine Rolle, ob ich die Rulle mit "count" oder "bis" erzeuge.
Wenn ich ein einzelnes Auftreten ändern und meinen Kalender exportieren aus iCal ich auch die richtigen Kalender-Daten erhalten, auch wenn diese Daten nicht an den Server (anderes Ereignis) gesendet wird:
BEGIN:VCALENDAR
METHOD:PUBLISH
VERSION:2.0
X-WR-CALNAME:XXX
X-WR-CALDESC:
X-APPLE-CALENDAR-COLOR:#FF9500
X-WR-TIMEZONE:Europe/Berlin
CALSCALE:GREGORIAN
BEGIN:VEVENT
CREATED:20160405T063102Z
UID:68C23C1E-371C-4799-9139-04F0F8FE6F88
RRULE:FREQ=WEEKLY;INTERVAL=1;COUNT=4
DTEND;VALUE=DATE:20160409
TRANSP:TRANSPARENTSUMMARY:hhhhh
DTSTART;VALUE=DATE:20160404
DTSTAMP:20160405T063102Z
SEQUENCE:0
END:VEVENT
BEGIN:VEVENT
CREATED:20160405T063102Z
UID:68C23C1E-371C-4799-9139-04F0F8FE6F88
DTEND;VALUE=DATE:20160421
TRANSP:TRANSPARENT
SUMMARY:hhhhh
DTSTART;VALUE=DATE:20160418
DTSTAMP:20160405T063102Z
SEQUENCE:0
RECURRENCE-ID;VALUE=DATE:20160418
END:VEVENT
END:VCALENDAR
Dort kann ich Sehen Sie das Vevent schließlich mit einer korrekten Wiederholungs-ID.
Irgendwelche Ideen? War sonst noch jemand mit einem ähnlichen Problem konfrontiert? Ich habe keine Ahnung, was das verursachen könnte ...
Vielen Dank im Voraus!