I ended up using ics-parser and it's enhancement on Github that implements recurrence.
Presumably your code doesn't work because you are using a calendar-query REPORT entity with a PROPFIND request. $query = $doc->createElement('c:calendar-query'); ... curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PROPFIND'); A PROPFIND request expects a propfind entity in the request, not a calendar-query one, as shown in the original example: PROPFIND /calendars/johndoe/home/ HTTP/1.1 Depth: 0 Prefer:...
httpwebrequest,sync,webdav,caldav
That you get a "data:,9" doesn't imply you can actually query "data:,8" or ,7 etc. Sync tokens are opaque and do NOT give you a versioning system (you need sth like DAV Versioning Extensions for that). DAV sync-tokens are a simple optimization technique - nothing more. They are completely opaque...
Yes, this is possible. The iCloud calendar supports scheduling as described in RFC 6638. Note that if an attendee has an iCloud account (the email is registered as an Apple-ID used with iCloud) the server won't send out emails. It will put the meeting request directly into the attendee's iCloud...
calendar,icalendar,webdav,caldav
As of today, there is no RFC'ed standard way to delete the Inbox item and update the calendar resource in a single HTTP request in DAV. There is an Apple extension to do bulk changes: Calendar Server Bulk Change Requests for *DAV Protocols. But I wouldn't use it for this...
ruby-on-rails,calendar,icloud,caldav
I finally managed to implement the REPORT request on the iclouddav module. It was possible :)
Please be more specific, what is the new service/server you are using? This is not specifically CalDAV, but most DAV servers still provide a way to grab all events/todos using a single GET. Usually by targeting the relevant collection with a GET, e.g. like either one of those: curl -X...
api,httprequest,caldav,sabredav
I take hnh's comment as an answer: the problem was indeed the Request.ContentLength = body.Length. Corrected code is: Request.ContentLength = Encoding.UTF8.GetByteCount(body); ...
You could take a look at mod_caldav and mod_carddav, but they seem to be stuck in very early states (v0.2.0/v0.0.1) . It's probably better to pick a specialized Cal/CardDAV server. E.g. I would recommend CalendarServer, but there are other choices. Just check the list and find one which works for...
The problem was that the URL was not correct. The correct URL is: http://<domain>/dav/cal.php/calendars/<username>/<calendar-name>/<event-id>.ics ...
ios,calendar,google-calendar,caldav
The iOS calendar uses CalDAV to sync with iCloud and Google Calendar, and AFAIK EWS to sync with Exchange. All the syncing is done by some EventKit daemon running in the background. You can either just use EventKit to store your events and get all the syncing for free, or...
I try with XMLReader and simplexml_import_dom without success but in opposite, with DomDocument you can do it: // Just for display test results $break_line = '<br>'; if (php_sapi_name() === 'cli') { $break_line = "\n"; } $xml = '<?xml version="1.0" encoding="UTF-8"?> <D:propfind xmlns:D="DAV:" xmlns:CS="http://calendarserver.org/ns/" xmlns:C="urn:ietf:params:xml:ns:caldav"> <D:prop> <D:resourcetype/> <D:owner/> <D:current-user-principal/> <D:supported-report-set/>...
icalendar,webdav,caldav,webcal
All what Julian said, but presumably the real question is about the difference between plain iCalendar-over-HTTP (commonly called webcal, 'iCalendar subscription' or 'subscribed calendar') and CalDAV. Or in other words: what does CalDAV add. Simply put: in iCoHTTP you usually store a whole calendar under one URL, like 'http://yahoo.com/sports/nba/schedule-2015.ics' (or...