Microsoft Office Communications Server 2007 and Microsoft Exchange Server 2007 provide the infrastructure for enterprise communications including e-mail, voice, video, instant messaging (IM), conferencing, and unified messaging (UM). Building on this infrastructure, the Unified Communications (UC) Platform APIs provide a platform that you can leverage to build communications into your solutions, which adds incredible value for your users.
Server Side Development
Microsoft Unified Communications Managed API 2.0 supports the development of server-side, middle-tier applications targeting Microsoft Office Communicator 2007 R2 and Microsoft Office Communications Server 2007 R2. It includes a SIP stack, a media stack, and powerful speech engines for both automatic speech recognition (ASR) and speech synthesis (TTS).
UCMA 2.0 provides the following capabilities:
- Alerts or notification
- Inbound speech technology enabled interactive voice response applications
- Automated agents, also known as query response bots
Amongst the more advanced developer scenarios that it enables are: Automated Call DistributorsConferencing ServicesCustom client gatewaysInteractive Voice Response platforms, andSpeech servers using the Microsoft ASR and TTS engines.
The UCMA 2.0 Core SDK (32-bit and 64-bit) abstracts away most of the Office Communications Server SIP/SIMPLE-based protocols by offering an API that exposes almost all of the features of the protocol, but is simpler to understand and use.
The UCMA 2.0 Speech API is a server-grade speech API that allows developers to build multi-channel speech recognition and speech synthesis enabled applications using Microsoft state-of-the-art speech technology. The UCMA 2.0 Speech API supports 12 languages, including English (North America, United Kingdom), French (France, Canada), German, American Spanish, Brazilian Portuguese, Italian, Japanese, Korean, and Chinese (Simplified and Traditional).
The UCMA 2.0 Workflow API is a higher API abstraction layer of the UCMA Core and Speech APIs. It adds unified communications Windows Workflow Activities to the .NET 3.5 SP1 Workflow Foundation for querying Presence and IM or speech technology enabled dialogs in Workflow-based applications built, for example, on Microsoft SharePoint Server 2007.
Client Side Development
Microsoft Unified Communications APIs and SDKs enable developers to write unified communications applications running on desktop, a web browser and even mobile devices.
The following is a list of downloadable samples that illustrate how Enhanced Presence is used to facilitate communication and collaboration.
Office Communicator SDK Wrapper — Illustrates the creation of a single managed code class that encapsulates the functionality of the Office Communicator Automation API. It has a length treatment of memory management of unmanaged resources in a manage application.
Communicator Add In For Outlook 2007 — Demonstrates how developers can integrate the Office Communicator client directly into Microsoft Outlook, using Visual Studio 2008, Visual Studio Tools for Office, and the Office Communicator 2007 Automation API.
WPF Presence Controls for Microsoft Office Communicator 2007 — Illustrates how to implement Presence and Collaboration features into Windows Presentation Foundation (WPF) clients using the Office Communicator Automation SDK.
Integrating Web Chat Functionality –Demonstrates the creation of an asynchronous XML-based client capable of managing a contact list and participating in IM conversations.
Browser-based Unified Communications Applications
The following two XML-based samples demonstrate how to implement Presence and Collaboration in a Web browser using the Microsoft Unified Communications AJAX SDK.
Communicate with Context
The following two samples demonstrate how to create Presence and Collaboration user controls in either C# or VB.NET based on the Office Communicator Automation SDK. Note that these sample solutions were created with Visual Studio 2005.
More Information is available on the Unified Communications Developer Portal
Also there is a very good webcast on Building Software on the Microsoft Unified Communications Platform (Level 200)