Forum OpenACS Development: Re: calDAV

Collapse
6: Re: calDAV (response to 5)
Posted by Cesareo Garci­a Rodicio on
Hi

I don't know but perhaps that sounds too complicated. At least for me, it would be nice to have only a read and write events using CAlendar App Interface.

I mean, "froze" web interface (it seems to be pretty good now) but use OPenacs as a calDAV server. Having webDAv support and ics file support (I think) would be a reasonable benefit/effort balance (perhaps, I don't know)

I would be nice for this package and, perhaps get attention/traction for another packages and openacs also

Regards
Cesáreo

Collapse
7: Re: calDAV (response to 6)
Posted by Jim Lynch on
imagine a group, members of which each have a calendar for scheduling their own appointments...

now imagine the group wishes to meet... then simply invert each calendar, and find the times the inverted calendars have in common (aka "and" them, aka "intersect" them). Then you have the times all members of the group have which has no event/appointment scheduled.

Collapse
8: Re: calDAV (response to 6)
Posted by Jim Lynch on
negation and intersection are well understood, and there are other uses for tools like this. copying events in several calendars to one, this is like "where and when are all the parties" or "where/when are all musical events where Herbie Hancock is performing" or "where/when are all cool jazz performances in area code 12345", etc etc, a user clicks the button saying "I'm interested in jazz" puts those performances on their calendar, as well as expressing interest in particular styles, the musicians who play a particular instrument.

also, webdav has already been integrated with file storage and it works well. if you/someone wants to, they can look at the code and use it... I hope they factor instead, so that the common code is not duplicated.

Collapse
9: Re: calDAV (response to 8)
Posted by Cesareo Garci­a Rodicio on
I was wondering about a more simple functionality: use Openacs Calendar from my phone (or any calDAV client). That's what I would really use.
Collapse
10: Re: calDAV (response to 9)
Posted by Gustaf Neumann on
Jim,

CalDAV is somewhat more complicated that WebDAV. The following RFCs are involved (including WebDAV).

* RFC 2445, 5545 - iCalendar
* RFC 2446, 5546 - iCalendar Transport-Independent Interoperability Protocol (iTIP)
* RFC2518, 4918 - HTTP Extensions for Web Distributed Authoring and Versioning
* RFC3744 - Web Distributed Authoring and Versioning (WebDAV) Access Control Protocol
* RFC4791 - Calendaring Extensions to WebDAV (CalDAV)
* RFC5689 - Extended MKCOL for Web Distributed Authoring and Versioning (WebDAV)
* RFC6638 - Scheduling Extensions to CalDAV

oacs-dav is just implementing a small portion of WebDAV, and that just for the purpose of writing files to the file storage. The 2006 implementation of iCal-over-WebDAV linked above allows subclassing and is therefore better suited for reuse and extension. This implementation did exactly what Cesareo is asking, aside the facts, that many of the mentioned RFCs are much newer and the client implementations are moving targets. I have used it over many years to share may calendar data from our learning platform on my iPhone, but since i switched to Android, i am disconnected in this respect. I've tried a few CalDAV clients for Android, but last time i've checked, none of these were usable; haven't had time to play with this lately; Google seems to prefer its own interfaces over open standards.

Concerning "inverting calendars" etc.: CalDAV defines several protocols to deliver appointment and scheduling data for people in a platform independent way. The client-side is typically the mobile device (but as well mail programs like Thunderbird+lightning), where the client side can't be influenced much. CalDAV includes a flexible "report" interface for various kinds of calendar queries for finding free/busy/due times (based on the report syntax from RFC 3744), but the client has to support this as well.