Patent ID: 7849102
Filing Date: 2010-12-07
Classification: G06F,G06Q,H04L

Abstract:
1. A computer storage medium containing computer executable instructions which when executed by a computer perform a method of obtaining availability data for one or more potential meeting attendees, comprising: receiving, at a first availability service, an availability data query for a specific meeting event initiated via a calendaring application by a meeting organizer; comparing, by the first availability service, the one or more potential meeting attendees against a list of persons in an information directory, wherein the information directory identifies one or more mailbox servers on which information for the one or more potential meeting attendees is maintained; determining, by the first availability service, a first mailbox server that includes real time availability data for a first potential meeting attendee of the one or more potential meeting attendees and a second mailbox server that includes real time availability data for a second potential attendee of the one or more potential meeting attendees, wherein the second mailbox server is associated with a second availability service, and wherein the second availability service is different from the first availability service; determining whether permissions on individual calendar data set by the first potential meeting attendee of the one or more potential meeting attendees allow a retrieval by the calendaring application of the real time availability data for the first potential meeting attendee of the one or more potential meeting attendees, the permissions being configured to restrict an amount and type of real time availability data that is retrievable by the calendaring application; upon determining that the real time availability data for the first potential meeting attendee is retrievable by the calendaring application, determining a type of real time availability data that is retrievable by the calendaring application, wherein the type of real time availability data comprises at least one of: a free/busy type of availability data and a detailed type of availability data; requesting, by the first availability service, the real time availability data of the type that is retrievable by the calendaring application for the first potential meeting attendee of the one or more potential meeting attendees from the first mailbox server; requesting, by the first availability service, real time availability data for the second potential meeting attendee from the second availability service; receiving, at the first availability service, the real time availability data of the type that is retrievable by the calendaring application for the first potential meeting attendee of the one or more potential meeting attendees, wherein the real time availability data indicates whether the first potential meeting attendee of the one or more potential meeting attendees is free or busy for the specific meeting event; receiving, by the first availability service, the real time availability data for the second potential meeting attendee from the second availability service; and forwarding the real time availability data of the type that is retrievable by the calendaring application for the first potential meeting attendee of the one or more potential meeting attendees and the real time availability data for the second potential meeting attendee from the first availability service to the calendaring application.