INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Enterprise Calendaring at Indiana University Nate Johnson Principal Systems Analyst Indiana University
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Background My Team: The Systems Integration Team We provide development support, training, and integration services The application we support OneStart: Enterprise Portal OneStart Calendar: Enterprise Calendar Workflow: aka KEW and OneStart Workflow Various others
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Agenda For Today A little history on this project Key features and screenshots The technical architecture and standards Demo? Feel free to ask questions at any time Slides SIG+Summer+Conference+2006
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. But first, what where we looking for in a calendar product? An open source java calendaring solution with feature set close to that of Microsoft Outlook Mainly for students (private calendar) Available to everyone Standards compliant Public and group calendaring support Resource scheduling
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. History Began looking in early 2002 Could not find an open source product that met all of our needs Put the project on hold Starting designing our homegrown system in January 2003 Rolled it out in production in May 2003
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Screenshots First! I am going to start with the screenshots first so I don’t bore you before you even get to see what it looks like. Technical details to come Live demo if time permits
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Key Features Multiple views (lists and grids) Multiple event types (single, recurring, meeting request) Free/Busy comparison Ability to view other user’s calendars Extensive time zone support Public and private group calendars (merge-able) Meeting scheduling and auto-pick next Resource and room scheduling Group calendars are skin-able Calendars are searchable Events can be exported as iCal or RSS PDF export of any view
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Multiple views Small channel view containing the month at a glance and the events for the currently selected day Grid views: day, week, and month List views: day, week, and month Year at a glance
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY Weekly View We will see many of the other views in upcoming slides Our primary focus was on the grid views At a glance needed to be useful: Title and location, with tooltips if needed 5 minute increments Conflicting events clearly recognizable
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY View a group calendar… And merge it with your own
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY
INDIANAUNIVERSITYINDIANAUNIVERSITY A single day
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY A weekly list view
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY A month view
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY Year at a glance
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY Creating your own events Basic event information Title, description, location, start/end times Repeat Recurrence options, duration Reminders or text message Invite others Meeting requests
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY
INDIANAUNIVERSITYINDIANAUNIVERSITY
INDIANAUNIVERSITYINDIANAUNIVERSITY
INDIANAUNIVERSITYINDIANAUNIVERSITY
INDIANAUNIVERSITYINDIANAUNIVERSITY
INDIANAUNIVERSITYINDIANAUNIVERSITY
INDIANAUNIVERSITYINDIANAUNIVERSITY
INDIANAUNIVERSITYINDIANAUNIVERSITY If you are setting up a meeting with others, you should take a look at their calendars first (Free/Busy).
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY Having trouble finding a time when everyone is free?
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY Checking in / following up with the invited users.
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY
INDIANAUNIVERSITYINDIANAUNIVERSITY
INDIANAUNIVERSITYINDIANAUNIVERSITY Search
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY Exporting a search result Produces an iCal file which can be imported into any standards compliant calendar (Outlook, Apple iCal, etc)
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Fragment from an export BEGIN:VCALENDAR PRODID:-//Indiana University//OneStart Enterprise Calendar 4.0 onestart.iu.edu/ccl VERSION:2.0 METHOD:REQUEST BEGIN:VEVENT DTSTART;TZID="US/East-Indiana": T DTEND;TZID="US/East-Indiana": T CLASS:PUBLIC ORGANIZER;CN="Johnson, Nathaniel ATTENDEE;CUTYPE=INDIVIDUAL;CN="Hopf, Jeremy ATTENDEE;CUTYPE=INDIVIDUAL;CN="McGough, Brian ATTENDEE;CUTYPE=INDIVIDUAL;CN="Johnson, Nathaniel CREATED: T030621Z DTSTAMP: T030621Z LAST-MODIFIED: T030623Z LOCATION:SIT Conference Room RRULE:FREQ=WEEKLY;COUNT=2;INTERVAL=1;BYDAY=TU,TH SEQUENCE:0 SUMMARY:OneStart Status TRANSP:OPAQUE END:VEVENT BEGIN:VTIMEZONE TZID:US/East-Indiana BEGIN:STANDARD DTSTART: T TZOFFSETFROM:-500 TZOFFSETTO:-500 END:STANDARD END:VTIMEZONE
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Options Preferences View a group calendar Update merged group calendars View another user’s calendar Import an event (iCal file) Maintain group calendar (Admins)
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Preferences
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY View / Merge a group calendar
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY View another user’s calendar
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY Import an iCal event Screen with a file chooser (local file) Convert events.ics and store them on your calendar
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Maintain Group Calendars
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved.
INDIANAUNIVERSITYINDIANAUNIVERSITY
INDIANAUNIVERSITYINDIANAUNIVERSITY Other features Skin-able group calendars (see previous slide) Calendar feeds RSS, iCal, and Atom Resource scheduling (see previous slide) Extensive time zone support
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Technical Architecture
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Two Main Points The physical hardware The frameworks used to build the calendar
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Hardware - Environments Development Code is developed on personal workstations (mainly Windows and OS X) and tested under Tomcat Connect to distributed development services (Oracle, LDAP, etc) Centralized CVS Standards for university systems development
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Cont. Multiple test environments Test Oracle databases Similar setup as in production Large RHE3 boxes with VMWare Shared down to the JVM level Tomcat
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Cont. Production Still shared RHE3 boxes with shared JVMs Three clustered Tomcat servers shared with other SIT applications (portal, etc) There is an Apache layer to serve static content Production Oracle database (shared), ADS, and LDAP repositories
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Software Frameworks Struts OJB Spring
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Struts The web tier The UIS standard Using version Could be replaced with minimal effort due to the use of Spring and other helper objects
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. OJB Apache Object Relational Bridge OR mapping framework similar to Hibernate Using version Well separated using Spring
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Spring IoC container Using version Used mainly for: Injection of services Declarative transaction management
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Other frameworks, libraries, etc. We use Yale CAS for SSO since 2002 (after the Dec. Destin conference) Talk to LDAP for people and group information DisplayTag iText Rome Various Apache (log4j, pooling, fileupload, …)
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. See it live Demo if time/internet allows…
INDIANAUNIVERSITYINDIANAUNIVERSITY © 2006 The Trustees of Indiana University. All rights reserved. Questions? For information on the open source OneStart calendar, please go to: SIG+Summer+Conference+2006