System Administration Guide for Cisco Unity Connection Release 10.x
Setting up Tenant Partitioning in Cisco Unity Connection 10.x
Downloads: This chapterpdf (PDF - 163.0KB) The complete bookPDF (PDF - 8.76MB) | Feedback

Table of Contents

Setting up Tenant Partitioning in Cisco Unity Connection 10.x

Introduction to Tenant Partitioning

Tenant Provisioning using APIs

Working with Tenant Partitioning

Phone System Integration

Modifying the Objects after Tenant Creation

Introduction to Tenant Partitioning

In Cisco Unity Connection 9.1 and earlier releases, Unity Connection could provide voicemail solution to one enterprise on a single installation. Starting with Unity Connection 10.0 release, a concept of tenant partitioning has been introduced where administrator can configure multiple SMBs as tenants on a single Unity Connection installation.

Each tenant has its own set of partition, schedule set, schedule, schedule detail, search space, search space member, phone system, class of service, user template, distribution list, distribution list membership, user operator, call handler template, directory handler, interview handler, call handlers (operator, opening greeting, GoodBye), and routing rules. The following configuration objects are shared across multiple tenants:

All the system settings like mailbox store, custom keypad, restriction tables etc. are shared across the multiple tenants.

Tenant partitioning also introduces the concept of using the corporate email addresses as their alias, which enables alias uniqueness across tenants. To achieve this, the aliases assigned to the users (in multi-tenancy environment) must be in the form of alias@smtpdomain, which would be the corporate email address of the tenant's user. To login into the Unity Connection User Web interfaces like Cisco PCA, Web Inbox, VMREST API, users have to use this alias format. Two different tenants configured on the same Unity Connection can never have the same alias for their users as the smtp domain will always differ.


Note There are no changes done for touchtone conversation and voice-recognition users.


Tenant Provisioning using APIs

Cisco Unity Connection Provisioning Interface (CUPI) provides set of APIs for Cisco Unity Connection that can be used for tenant provisioning. To support the Tenant Partitioning using APIs in Unity Connection, few new APIs have been developed and few existing APIs have been modified.

For more information about provisioning APIs, see the Documentation Wiki: http://docwiki.cisco.com/wiki/Cisco_Unity_Connection_Provisioning_Interface_%28CUPI%29_API

Working with Tenant Partitioning

The following steps list the basic configuration settings to provision a tenant:


Step 1 Create Tenant: A new API has been introduced for tenant provisioning. All its associated objects are created by executing a single API request. If the operation fails at any point in time, the entire process is rolled back. To create a tenant, an HTTP POST request should be sent to the URI:

https://<connection-server>/vmrest/tenants

For the optional parameters, if no value is specified then system default values will be used.

Step 2 Create Port Group: To create a port group, an HTTP POST request should be sent to the URI:

https://<connection-server>/vmrest/portgroups

Tenant partitioning supports SIP integration only.

Step 3 Create Ports: To create a port, an HTTP POST request should be sent to the URI:

https://<connection-server>/vmrest/ports

Step 4 Integrate with Call Manager: To integrate with Call Manager, do the following:

  • Create SIP Security Profile
  • Create SIP Profile
  • Create Trunk to Publisher and Subscriber
  • Create Route Group
  • Create Route List
  • Create Route Pattern
  • Create Voicemail Pilot and Voicemail Profile

Step 5 Create User for the Tenant: To create a user, an HTTP POST request should be sent to the URI:

https://<connection-server>/vmrest/users?templateAlias=<TenantUserTemplate>

User template specified in the URI should belong to the tenant for which you are creating the user.

Step 6 Record Greetings: To record the greetings, do the following:

  • Create a temporary place-holder WAV file on Unity Connection via POST operation on the URI:

https://<connection-server>/vmrest/voicefiles

  • Use the temporary file name created before to upload the new audio. The HTTP content type is "audio/wav" and the payload content is the audio data.

PUT https://<connection-server>/vmrest/voicefiles/<TemporaryFileName>

  • Assign temporary audio WAV file to the target resource. Perform a POST operation on the following URI:

https://<connection-server>/vmrest/handlers/callhandlers/<TenantCallHandlerObjectId>/greetings/Standard/greetingstreamfiles/1033

Step 7 Call Pilot Number: Dial the pilot number. You will hear the recorded opening greeting.

For more information about provisioning APIs, see the Documentation Wiki:

http://docwiki.cisco.com/wiki/Cisco_Unity_Connection_Provisioning_Interface_%28CUPI%29_AP I

Phone System Integration

For multiple phone systems integration with Cisco Unity Connection, see the Multiple Phone System Integration Guide for Cisco Unity Connection Release 10.x available at http://www.cisco.com/en/US/docs/voice_ip_comm/connection/10x/integration/guide/multiple_integration/cuc10xintmultiple.html .

Modifying the Objects after Tenant Creation

The administrator can modify the objects associated with a tenant after its creation. For example, to add new routing rule for a tenant, do the following steps:


Step 1 Create a new routing rule, by sending the below POST request:

POST https://<connection-server>/vmrest/routingrules

Set the search space for the routing rule as per the tenant's search space for which this routing rule is getting created.

Step 2 Create a new routing rule condition, by sending the below POST request:

POST https://<connection-server>/vmrest/routingrules/<routingrulesobjectId>/routingruleconditions

Add the tenant's phone system as the routing rule condition.