The ApplicationProvisioner.exe user interface can be used to create trusted service objects and Contact objects. 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.
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 Contact objects 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 Contact objects for the pool will be deleted.
To provision an application using ApplicationProvisioner.exe
In the Application Provisioner dialog box, type the name of your application in the Application name box, and then click Find or Create.
In the Create Application Pool dialog box, select the Office Communications Server pool for your application in the OCS Pool Fqdn list, and then in the Listening port box, type the listening port for your application. In the Application server Fqdn box, 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 application check box and then in the Load balancer Fqdn box, 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 Contact dialog box, type the SIP URI of the contact object in the Contact Uri box. The SIP URI will follow the form sip:<name>@<domain>. Optionally, in the Display name and Phone Uri boxes type the display name for your application and its phone URI.
To enable your application for federation, select the Enabled for federation check box. To enable instant messaging connectivity for your application with outside networks such as MSN Messenger, select the Enabled for public IM connectivity check box.
Your application is now configured. The Application Provisioner dialog box shows the contacts and servers for your application. You can add more contacts by clicking Add below the list of contacts. You can add more servers to a load-balanced application by clicking Add below 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.
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 CollaborationPlatform instance for the local computer and an ApplicationEndpoint instance for each of the contact objects.
The code example in Using the ApplicationProvisioning API shows how to create the CollaborationPlatform and ApplicationEndpoint instances.
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 CollaborationPlatform instance is created, in the Application Provisioner dialog box double click the entry for the appropriate server in the Servers list. The View Server dialog box appears. Transfer the values appearing in the View Server dialog box to the ServerPlatformSettings constructor together with certificate information and user agent name.
To create an ApplicationEndpoint instance, double-click the contact’s name and use the information in the Contact Uri and OCS Pool Fqdn boxes. Transfer the values appearing in the Edit Contact dialog box to the ServerPlatformSettings constructor together with certificate information and user agent name.