Foreword
This document incorporates by reference the CalConnect Intellectual Property Rights, Appropriate Usage, Trademarks and Disclaimer of Warranty for External (Public) Documents as located at
CalConnect Technical Preview - Roundtable XI
1. Note Well
This presentation is derived from the Technology Preview material
Names and some technical details have been removed in accordance with CalConnect rules involving in-progress work
This is a public document and may be quoted and distributed in accordance with CalConnect policies
2. Introduction
CalConnect members have produced a Technical Demonstration of key calendaring and scheduling technologies being developed by CalConnect.
This serves as a technology “preview” only and does not in any way represent final protocols or products that may or may not ship.
This is a follow-up to the demo at Roundtable X (September 2007).
Our goal is to solicit feedback from members and invited guests on the presentation itself as well as the technologies being demonstrated.
We also hope to show how CalConnect is successfully achieving its goal of improving calendaring and scheduling standards.
3. Agenda
Today we will demonstrate:
CalDAV Scheduling
Realtime Internet Scheduling
Internet freebusy lookups using freebusy URLs
Each presentation will consist of:
Introductory slides
Live demonstration
4. Technologies
CalDAV Scheduling:
The CalDAV access protocol (RFC4791) is based on WebDAV and iCalendar standards
In the CalDAV scheduling specification (still a draft), users on the same server system only schedule with each other
There are several server and client implementations available
Realtime Internet Scheduling:
Allows scheduling between users on different server systems (e.g. between organizations)
The protocol uses HTTP to transport iCalendar scheduling messages
We will be demonstrating the basic exchange of scheduling messages
The security and discovery pieces are still to do (TC-REALTIME)
Freebusy URL:
This is a way to do simple exchange and publishing of freebusy information
TC-FREEBUSY is working on a specification
It uses simple HTTP GET/PUT operations with discoverability
5. CalDAV Scheduling
How it works:
Several users on one CalDAV server (can be using different clients) schedule with each other
One user is the “Organizer”, others are “Attendees”
One is the Organizer, others are Attendees. Each stores their calendars on the Server.
There are two parts to scheduling:
Freebusy lookup
Sending invitations and receiving replies
Freebusy results are returned immediately.
Invitation replies are sent only after users inspect and accept or decline.
Each user has an “Outbox” and an “Inbox”. The “Outbox” is used to trigger freebusy lookup or send invites or replies. The “Inbox” is where invites or replies are delivered. Clients monitor the “Inbox” for incoming scheduling messages.
Key
1
Organizer sends freebusy request to server
2
Server calculates freebusy data for attendees
3
Server returns aggregated freebusy data to organizer
1
Organizer sees freebusy for everyone
2
Can adjust meeting time to avoid conflicts
Figure 1 — Sequence of diagrams showing free-busy lookup
Key
1
Organizer sends invite request to server
2
Server copies the request into attendees' Inbox
3
Attendee checks the server
4
Attendee retrieves the invite from the server
1
Attendee replies to the server
2
Server copies the reply into organizer’s Inbox
3
Organizer checks the server
4
Organizer retrieves the reply from the server
Figure 2 — Sequence of diagrams showing invitations being sent out, replies returned.
5.1. Demonstration #1 — Simple meeting between two people
Figure 3 — Demo Participants
6. Realtime Internet Scheduling — How it works
6.1. Basic Concept
Provides the ability for users on different calendaring systems to schedule meetings with each other
Instantaneous freebusy lookups
Invites, replies sent as “messages” with delivery status immediately returned
Figure 5 — Organizer and Attendees on different systems
6.2. Can’t this be done today?
But I can do scheduling with my colleagues today!
True, but only people on the same server as you, or via some other communication process such as email or telephone.