ICalendar Compatible Collaborative Calendar- Server (CCS) Web Services Ahmet Fatih Mustacoglu...
-
Upload
clement-haynes -
Category
Documents
-
view
213 -
download
0
Transcript of ICalendar Compatible Collaborative Calendar- Server (CCS) Web Services Ahmet Fatih Mustacoglu...
iCalendar Compatible Collaborative Calendar-Server (CCS) Web Services
Ahmet Fatih MustacogluIndiana University
Computer Science DepartmentCommunity Grids Laboratory
[email protected]://www.cs.indiana.edu/~amustaco
May 15, 2006CTS-2006, Las Vegas, NV, U.S.A.
Outline Introduction
Internet Calendaring and Scheduling Core Object Specification (iCalendar)
Web Services Collaborative Calendar-Server Collaborative Calendar-Server (Why?,
How?) Collaborative Calendar-Server Services
Overview Conclusion
Internet Calendaring and Scheduling Core Object Specification (iCalendar)
A format, specification for calendaring and scheduling applications http://www.ietf.org/rfc/rfc2445.txt
Intend to advance the interoperability between different calendaring and scheduling applications
Developed by Internet Engineering Task Force Calendaring and Scheduling Working Group, and Internet Engineering Task Force (IETF) web-site: http://www.ietf.org
Web Services Provides a distributed computing
environment to solve interoperability issues
XML based and easy to extend Platform and operating system
independent Has support from large community An effort for seamless
communication
Collaborative Calendar-Server Is a calendar repository for
Private calendars Collaborative calendars
Implemented based on iCalendar Specification (rfc2445)
http://www.ietf.org/rfc/rfc2445.txt Provides calendaring and scheduling services
via Web Services Has a bridge module
A way to communicate with other calendaring and scheduling applications via http methods (put, get etc.)
Project web site: http://www.opengrids.org/wscalendar
Collaborative Calendar-Server Architecture
ClientsGlobalMMCS Portal Client Module Mozilla Calendar Client
Collaborative Calendar-Server Web Services
(WSDL)
Bridge Module(Java Servlet Technology)
INTERNET
Invokes Associated Web Service
Invokes Associated Web Service
Requests for CCS’s Web Service
Http Put/Get methods
Requests for CCS’s Web Service
Collaborative Calendar Server (Why?)
To provide standard based calendaring services for Global Multimedia Collaboration System (GlobalMMCS) developed by Community Grids Lab at Indiana University. More information at www.globalmmcs.orgCurrent calendaring functionalities includes:
Schedule a meeting into collaborative calendar Add event into user’s private calendar Get the collaborative calendar Get user’s private calendar
To provide services for the requests coming from other calendaring and scheduling applications.
The requests can be made: Via http methods (put, get etc.) Via client applications by calling one of the CCS Web
Services directly
Collaborative Calendar-Server (How?) Services were implemented using JAVA
Language Other technologies includes
JSP technology is used for User Interface Apache Axis for Web Services
http://ws.apache.org/axis iCal4J Library for iCalendar specification from
Source Forge http://ical4j.sourceforge.net
Java Servlet technology for the bridge module
Collaborative Calendar-Server Services Current users are required to enter their
username and passwords in order to access the following Collaborative Calendar-Server Services:
Publish Calendar Service Subscribe to a Calendar Service Make an Empty Calendar Service New Event Service Schedule a Meeting Service Get Collaborative Calendar Service Get Private Calendar Service
Register Service for new users
Collaborative Calendar-Server Services in Detail - I Publish a Calendar Service
Stores the given calendar on the calendar server’s repository for the specified the user
Parameters: byte[], username, password, calendar name
Subscribe to a Calendar Service Retrieves the requested calendar from the
calendar server Subscribe to a private calendar
Parameters: username, password, calendar name Subscribe to a collaborative calendar
Parameters: username, password, group name
Collaborative Calendar-Server Services in Detail - II Make an Empty Calendar Service
Sets up an empty iCalendar file Parameters: Username, password, calendar
name New Event Service
Make an event and add it to the user’s specified calendar
Parameters: Username, password, calendar name, event type, public/private event, start date, end date, location, notes
Collaborative Calendar-Server Services in Detail - III Schedule Meeting Service
Schedules a meeting into the collaborative calendar if there is no conflict with registered users’ schedule
Parameters: Username, password, group name, event type, start time, end time, location, summary
Get Collaborative Calendar Service Retrieves the collaborative calendar for the
group Parameters: Username, password, group name
Collaborative Calendar-Server Services in Detail - IV Get Private Calendar Service
Retrieves the user’s private calendar Parameters: Username, password,
calendar name Register Service
Does the registration operation for the new users
Parameters: Username, password, name, last name, email, group name (s)
Collaborative Calendar-Server Conclusion Tends to leverage interoperability
between different calendaring and scheduling applications
Provides iCalendar specification based calendaring and scheduling services
Services provided via Web Services Username and password protected
access to the calendar and services