Driving presence from Outlook Calendar information

Microsoft Office Communicator 2007 (OC) enables you to drive your presence from information in your Outlook calendar. If the Outlook calendar has a meeting OC will change your presence to be "In a Meeting". If the Outlook calendar has an appointment OC will change your presence to be "Busy". Depending on the access level other OC users are also able to see the Subject and Location of your meeting. The Enhanced Presence Model document contains information about this.

How is it working? Are the OC users looking up Exchange Free/Busy information about each other? Do you need to give other users special permissions on your calendar? These are some of the questions I'm being asked. Let me try to explain how it works.

OC is publishing its calendar information to the OCS server in the so called presence document and the information is stored on the OCS server in the SQL database. It is made available to other OC users who are subscribing to the information or just asks for it for instance by hovering over the user in the To field on an email. On the publisher you can see the data you are sending by hovering over the presence state. See the screen shot CalPublisher Screenshot where Test User Sixtyfour is in a meeting in the location "Hellerup Saratoga" and the subject of the meeting is "test of subject from OC".

The subscriber of the presence information can see the calendar information by open the Contact card of the user and hover over the calendar information on the contact card. See screen shot. CalSubscriber screenshot 

 

 

 

 

When OC publish calendar information it associates an expiry time for all the information. For the calendar information the expiry time is set to endpoint. That means it will expire as soon as the endpoint signs out of OC. At that point the OC publisher will be in the offline state and subscribers can't see his Outlook calendar information.

To understand a bit more on how OC is sending the meeting data information I enabled logging in OC and looked in the resulting uccp logs. The publisher will sent out a SERVICE SIP message with embedded XML. The publisher XML looks like this  CalPublisher XML. The subscriber will get a BENOTIFY SIP message with embedded XML and it looks likes this CalSubscriber XML

 

OC publish calendar information for 128 15min slots (8,5 hours) in advance. It is refreshing the calendar information if needed each 30 minutes (configurable via GPO) or on sign in. To learn more about the exchange of presence information using XML data see Unified Communications Enhanced Presence Schemas for Microsoft Office Communications Server 2007.

In summary to answer my own questions from above: No, OC users are not accessing free/busy information for each other and hence No, you don't need to give special permissions on your calendar.