How to: Create an application manifest

Lync 2013

Learn how to create an application manifest that runs on Microsoft Lync Server 2013.

Last modified: August 16, 2013

Applies to: Lync Server 2013

To create a SIP application that runs on Lync Server 2013, the first step is to create an application manifest. The application manifest contains both the basic rules for message delivery to the application and the Microsoft SIP Processing Language (MSPL) script that is used to process the message.

You can create two kinds of SIP applications with the Microsoft Lync Server 2013 SIP Application API:

  • MSPL script-only SIP applications that are embedded in the application manifest

  • .NET Framework-based managed SIP applications

MSPL script-only applications are appropriate for the following scenarios:

  • Proxying SIP messages of a specific type

  • Handling potentially complex branching proxy scenarios or supporting multiple points-of-presence (MPOP), where extensibility is not required

    Note Note

    For information about the descriptions of the functionality that MSPL supports, see Microsoft SIP Processing Language Reference.

Managed SIP applications are appropriate for the following scenarios:

  • Handling potentially complex branching proxy scenarios or supporting MPOP, where extensibility is required

  • Working directly with SIP transaction objects and supporting multiple work threads

    Note Note

    If you build a managed SIP application, you must also determine the division of labor between the message filter (the script block that dispatches specified messages) and the application (the managed code event handler that processes the dispatched messages).

After deciding the kind of application that you need, use an XML or text editor to write the content of the application manifest by using the following template:

<?xml version="1.0" ?>
<lc:applicationManifest
 lc:appUri="URI"
 xmlns:lc=http://schemas.microsoft.com/lcs/2006/05>
 
  <!-- remove the following element for managed SIP app -->
  <lc:script-only />   
    
  <!-- required if the app’s priority is higher than that of UserServices -->
  <lc:allowRegistrationBeforeUserServices/> 
 
  <lc:proxyByDefault action="true|false"/>
  <lc:requestFilter methodName="…", … />
  <lc:responseFilter reasonCodes= "…" />

  <lc:splScript>
    <![CDATA[

    insert_message_filter_script_here

    ]]>
  </lc:splScript>
</lc:applicationManifest>
NoteNote

The <script-only> element must be the last child element of the <applicationManifest> element.

The appUri attribute value can be any HTTP URL that can uniquely identify the SIP application to the Lync Server 2013 instance.

Saving the application manifest

For MSPL script applications, save the manifest as a text file with an .am extension.

For managed SIP applications, either save the manifest as a text file with the .am extension or embed it in an application assembly as a resource. Application manifests can also be generated in-line or dynamically. For example, an application can filter on location-specific URIs or domain values that are supplied by code logic.

Show: