The ApplicationProvisioner.exe user interface can be used to create trusted service objects and Contactobjects. The creation of these objects for an application is called provisioning an application. An alternate technique for provisioning an application uses the methods and properties that are provided in ApplicationProvisioning.dll. For more information, see Using the ApplicationProvisioning API.
Application Types: Single Server vs. Pools of Servers
An application can be deployed as multiple application instances in multiple application pools. Each pool can consist of multiple, load-balanced servers, or can consist of a single server, with a single application instance.
An application configured as a single application instance is not load-balanced. To configure your application as a single application instance, provide the name of the application (Application name in the user interface, the fully-qualified domain name (FQDN) of server on which the application instance will be placed, the FQDN of the Office Communications Server 2007 R2 server, and the port on which the application will listen. The option to add another server is disabled, because the application is not configured to use a load balancer. The user interface can be used to remove the application provisioning information or to view information (FQDN, listening port, and GRUU) for a server. If you remove the provisioning information for the server, your application instance and all Contactobjects will be deleted as well.
An application configured as multiple application instances in an application pool is load-balanced. You must supply the name of the application in the user interface, the FQDN of the load balancer, and the FQDN of at least one server on which the application instances will run. The user interface can be used to add a server, remove a server, or view information (FQDN, listening port, and GRUU) for a server. To view the information about a server, double-click the server’s name in the user interface. If you remove the last remaining server in an application pool, all of the Contactobjects for the pool will be deleted.
Using ApplicationProvisioner.exe to Provision an Application
In the Application Provisionerdialog box, type the name of your application in the Application namebox, and then click Find or Create.
In the Create Application Pooldialog box, select the Office Communications Server pool for your application in the OCS Pool Fqdnlist, and then in the Listening portbox, type the listening port for your application. In the Application server Fqdnbox, type the fully-qualified domain name (FQDN) of the computer on which the application will be deployed.
If the application will be deployed on two or more computers, select the Load balanced applicationcheck box and then in the Load balancer Fqdnbox, type the FQDN of the load balancer. For information about certificates used in a load-balanced-topology, see Load Balancing, Activating, and Provisioning Applications.
In the Create Contactdialog box, type the SIP URI of the contact object in the Contact Uribox. The SIP URI will follow the form sip:< name>@< domain>. Optionally, in the Display nameand Phone Uriboxes type the display name for your application and its phone URI.
To enable your application for federation, select the Enabled for federationcheck box. To enable instant messaging connectivity for your application with outside networks such as MSN Messenger, select the Enabled for public IM connectivitycheck box.
Your application is now configured. The Application Provisionerdialog box shows the contacts and servers for your application. You can add more contacts by clicking Addbelow the list of contacts. You can add more servers to a load-balanced application by clicking Addbelow the list of servers.
As the final step, create a certificate issued to your application server. The certificate subject name should be the FQDN of your application server. If a load-balanced application is being deployed, the certificate on each application server in the deployment must have its subject name set to the FQDN of the load balancer. For more information, see Load Balancing, Activating, and Provisioning Applications.
Creating a CollaborationPlatform Instance Using ApplicationProvisioner
After the application is provisioned, the ApplicationProvisioner user interface can be used to obtain the information that your application code must have to create a CollaborationPlatforminstance for the local computer and an ApplicationEndpointinstance for each of the contact objects.
The code example in Using the ApplicationProvisioning APIshows how to create the CollaborationPlatformand ApplicationEndpointinstances.
Instead of using the methods in ApplicationProvisioning.dll to retrieve the provisioning information, as shown in the code example, you can obtain it by using the ApplicationProvisioner user interface.
To obtain the provisioning information that is necessary when a CollaborationPlatforminstance is created, in the Application Provisionerdialog box double click the entry for the appropriate server in the Serverslist. The View Serverdialog box appears. Transfer the values appearing in the View Serverdialog box to the ServerPlatformSettingsconstructor together with certificate information and user agent name.
Creating an ApplicationEndpoint Instance Using ApplicationProvisioner
To create an ApplicationEndpointinstance, double-click the contact’s name and use the information in the Contact Uriand OCS Pool Fqdnboxes. Transfer the values appearing in the Edit Contactdialog box to the ServerPlatformSettingsconstructor together with certificate information and user agent name.