BB46
Oct 30th, 2008
Exchange Web Services Managed API
Unified Communications Development for Exchange

Speakers

Jason Henderson, Senior Program Manager, Microsoft Corp
Alice Tang, Program Manager, Microsoft Corp
This session covered the essentials of Software as Services, Exchange 2007 Architecture/API, and Exchange Web Services.
It covered how Exchange has moved to the cloud – from traditional software development to hybrid Software as Services development with Exchange Online and applications on premises, and finally, pure Software as Services with full Exchange Online applications in the cloud (Azure). The complexity and control continuum was also presented. / Mentioned Technologies
·  SaS
·  Exchange 2007
·  Web Services
For the Exchange N-tier architecture, this session highlighted the differences between Exchange 2000/2003 and 2007 with regards to scalability and limitation of interface as well as cross platform support. Outlook has also been enabled to use Web services such as Free, Busy, and Out of Office Attendant.
To simplify the API matrix, the future direction is to fully invest in Web services so as to move responsibility for interfaces away from developers and improve both local as well as remote access.
Key benefits of Exchange Web Services, such as open standards support and encapsulated business logic, strongly-typed access, workflow, meeting request actions, delegation, and permissions were also discussed.
There was also an overview of the way that Web services provide new ways of working with mailboxes and public folders, the business logic layer, items, folders, and attachments. The session discussed setting OOF and various related functions as well.
Also discussed were the different processes now available to the developer – from working directly with the SOAP XML to auto-generated proxies which are multi-platform and class based with no client-side logic to working directly with the managed API using .NET Framework 3.5 fully object-oriented capabilities.
Also discussed were the Managed API design goals such as making development easier, exposing full power of Web services, batch processing, delegation of access, and custom properties. It was revealed that there is also rich calendaring support now.
Class hierarchies for items and folders (Calendar, Contact, Task, and Search) were discussed and demonstrated.
The session concluded with a recap/tip to the developer to always use autodiscover to bootstrap based on mailbox address, use tracing to understand the underlying SOAP protocol, use FindAppointments/Finditems to efficiently perform finds, and property sets to narrow down retrievals.
Also provided were online resources and learning options as well as news of the upcoming Managed API beta release.
The Q&A session provided the following information:
·  It will be delivered to Ex2007 SP1 and greater – MSI file download
·  Public folders are supported
·  Bits are available to ISV on Metro program
·  Ability to impersonate users using myServcies.ImpersonatedUserID

List of demos

DEMO / Showed autodiscover and new namespaces
Connected to exchangeservice, added credentials, autodiscover url / 24 min into the session
Part 2 / Created appointment with subject, starttime, endtime, timezone, body, add recurrence
Retrieved appointment – bind to calendar folder, create calendar view, find appointments as defined by view, display calendar items in list view
Enabled tracing to show tracing to show in debug window the data transferred to and from Ex server
Showed how to use Propertyset on calendar view and itemschema to limit the info retrieved from Ex server
Showed SOAP message request sent to Ex Server
Explained ChangeKey
Sent Meeting Request using Appointment class property RequiredAttendees / 30 min into the session
DEMO / Demo pulling notifications using myService.SubscribeToPullNotification and EventTypes
myService.SubscribeToPushNotifications and push to defined url end-point / 60 min into the session
DEMO / Public folder using Folder.bind(myService,Wellknowfoldername.publicfoldersroot) / Immediately following previous session

Conclusion

This session provided a good overview of key benefits of the Exchange Web Services Managed API with effective demos supporting the aim of easing the work of developers writing Exchange interfacing applications.