540 likes | 554 Views
Learn about Bedework, a comprehensive calendaring system based on open standards. Explore its history, integration options, and how it can be customized for higher education institutions.
E N D
Bedework, Calendaring in Higher Ed and Beyond -or- "Terms of Appointment" May 23, 2011 Jasig 2011 Conference Denver (loosely construed), Colorado
Who is Gary Schwartz? • Chair of Bedework Steering Committee • President of CalConnect, the Calendaring & Scheduling Consortium • Jasig Board
Director, Communications & Middleware Technologies, Rensselaer Polytechnic Institute
Grandfather of Gabriela Schwartz(on the Jumbotron – 3 times!)
Your buckets • Open standards • Calendaring standards • Bedework • Living off the grid • Putting it all together
Open Standards • Open source reference implementations are extremely critical in achieving adoption of open standards for software interoperability. • Standards organizations are the only way to get a level playing field w.r.t new open source applications for learning – that won’t happen unless the open source projects/communities participate. Ron Abel http://blog.worldcampus.psu.edu/index.php/2007/09/19/open-source-and-open-standards/
Calendaring Standards 1995-1999 • 1996 Versit Consortium issued vCalendar specification • 199x IETF CALSCH working group started on iCalendar specification • 1998 iCalendar (RFC 2445), iTIP (RFC 2446) and iMIP (RFC 2447) became a proposed standard • 199x Work began on draft for Calendaring Access Protocol (CAP) • 1998 – 2000 Some interoperability testing
Calendaring Standards 2000-2004 • Work on CAP – stopped • Interoperability testing – stopped • Work on iCalendar, iTIP and iMIP – stopped • IETF CALSCH working group – stopped • Vendors started to diverge from the standards to enhance their products
Calendaring Standards 2007… • CalDAV – RFC 4791 • icalendar revisions – RFCs 5545, 5546 • XML in icalendar – (IETF draft revision 4) • Web Services (in preparation with OASIS) • CALCONNECT DOCUMENT CD1004 • US SmartGrid • Timezones (in preparation) • CardDAV (IETF draft revision 3) • http://calconnect.org/CD1104_Calendaring_Standards.shtml
Calendaring Web Services:A Brief History • There is no history, but it’s about time! • Standards in progress • OASIS and Calconnect are collaborating • Developed CalWs-REST for the SmartGrid • CalWs-SOAP required as next step.
What is Bedework? • Comprehensive calendaring /events system • Jasig community source project • Platform independent (Java) • Modular & extensible • Intended for higher education • and… Standards based!
Bedework History • 2006 • Bedework 3.0 – 1st Release • Mellon Foundation MATC Award • 2009 • Jasig incubator project • 2010 • Bedework 3.6 • Jasig sponsored project • 2011 • Bedework 3.7
Bedework Steering Committee • UC Berkeley • Brown • Duke • Public University of Navarra (Spain) • RPI • Yale
Bedework at your University • Use your database system • Use your local authentication • Use your language and culture • Use your portal • Use your look and feel • Use your calendaring clients and smart phones • Integrate with your applications • Install with your IT staff – you don’t have to be calendaring or Java experts!
Bedework and Standards • Bedework’s preoccupation with standards and interoperability is in large part recognition that in many organizations, Bedework is unlikely to be the only calendaring product in an enterprise. • The ability to share and exchange data with other calendaring products and environments is an important key to Bedework’s future. • We implement standards, we author standards, we promote standards!
MorningMail Morning Mail is a network of interconnecting technologies Digital signage; Web; Calendar; Event Triptych; Faculty profiles; Feeds; Google news; Twitter; RSS; Atom, JSON, Email; Mobile; Geo Morning Mail is an archive –http:// morningmail.rpi.edu MorningMail is a collaboration among content providers, technology providers, and the Rensselaer Community!
What are Web Services? • Provides integration between services/applications • System & application independent • Service oriented – facilitating distributed systems • Make use of standard http features • Encryption, Authentication (basic) are accommodated
Two main flavors • RESTful: web development • GET/POST on target with request parameters • RelaxNG if anything (usually) • for widgets and other services • SOAP • More robust than REST • Appropriate for SOA • Based on UML or XML Schema • Tools in most popular frameworks (e.g. JAXB) • Operations and target defined by WSDL documents
Bedework & Web Services • Motivation • Many requests/inquiries from BW community, but until there was a standard… • BW interest dovetails with CalConnect/OASIS calendaring WS project for SmartGrid
Bedework & Web Services • Implementation • Implemented by CalDAV service • Under sub-context defined in configuration • http://dev/bedework.org/ucaldav/calws/.... • Protocols/formats • RESTful so POST/GET/PUT with request parameters • XML responses • Calendar data all XML • Status • Full (sans mulitget) but unexercised implementation
Bedework & Exchange 2010 • Approach • Started as a proof-of-concept • Discovered ExchangeWS is standard SOAP • Implemented as a separate service • Talks ExchangeWS to Exchange • Talks proprietary SOAP to Bedework
Bedework & Exchange 2010 • Status • Basic service working. • Create events on Exchange – appear in Bedework • Update events on Exchange – Bedework events changed. • Not complete yet – missing: • subscription features in the user interface • deletion • scheduling • recurrences • Provided experience in SOAP and helped development of a true calendar web service.
CalWS SOAP • Fairly complete implementation • Again a subcontext of CalDAV service • http://dev.bedework.org/ucaldav/calws-soap • Current working operations: • GetProperties – returns XRD document • Freebusy – returns an XML freebusy report • CalendarQuery – date range and filters. Same as CalDAV • Almost done: add, delete, update, multiget
BW more specifically • Implement new calendar entities defined by WsCalendar: • Availability, • Link (to external resources) • Related-to extensions for sequences • Interval component • WsCalendar = project management
CalWs-REST • a RESTful calendar protocol • Developed for SmartGrid project WsCalendar specification • Delivers XML and defines creation/deletion of events/tasks, fetch properties & freebusy. • Missing multiget, scheduling, create/delete of collections & move • Usable for simple calendaring.
CalWs-SOAP • Enterprise generally requires SOAP: simplifies and speeds development. Data better defined. • Provides all the CalWs-REST operations with multiget • Also has an update operation • SOAP only shows data in schema • Total replacement not possible • Current status • documentation started • XML schema and WSDL– almost complete.
References • http://jasig.org/bedework • http://deadrathill.com • http://www.calconnect.org • http://morningmail.rpi.edu • http://www.bedework.org/downloads/webcontent/papers/BedeworkEMPAC.pdf • http://www.concerto-signage.com/view/home • http://calconnect.org/pubdocs/CD1011%20CalWS-Rest%20Restful%20Web%20Services%20Protocol%20for%20Calendaring%20V1.0.pdf • http://www.oasis-open.org/committees/ws-calendar/ • schwag@rpi.edu