Hosted Office Communications Server::CreateUserPlan

This procedure creates a user plan for the Office Communications Server service.

Use this procedure to create a new plan of type OCSUserHosting.

Arguments

Input argument Required Type Description

<preferredDomainController>

Yes

xs:string

The domain controller to use for Active Directory actions.

<planName>

Yes

xs:string

The unique name of the plan.

<planDescription>

Yes

xs:string

The description of the plan.

<features>

Yes

The container element for plan features.

<features/enabled>

Yes

xs:boolean

If true, the user is enabled for Office Communications Server.

<features/ enabledForEnhancedPresence>

Yes

xs:boolean

If true, the user is enabled for Enhanced Presence.

<features/ enabledForFederation>

Yes

xs:boolean

If true, the user is enabled to participate in a federated conversation.

<features/ enabledForInternetAccess>

Yes

xs:boolean

If true, the user is enabled for internet access.

<features/ publicNetworkEnabled>

Yes

xs:boolean

If true, the user is allowed to participate in conversations with public IM providers such as AOL, MSN and Yahoo.

<features/ allowOrganizeMeetingWithAnonymousParticipants>

Yes

xs:boolean

If true, the user is allowed to invite anonymous user to meeting.

<features/meetingPolicy>

Yes

xs:string

The name of the Meeting Policy to be applied to a user.

<features/ucEnabled>

Yes

xs:boolean

If true, the user is enabled for Unified Communications.

<features/ucPolicy>

Yes

xs:string

The name of the Unified Communications Policy to be applied to a user.

Remarks

Security

The caller must be at least a member of role: Domain Administrator

Permission Check

No explicit permission check is required for this procedure. The procedure calls Managed Plans::CreatePlan, which performs a test for Domain Administrator.

Preconditions

  • The Hosted Office Communications Server namespace has been initialized.

  • The plan name does not exist.

Business Rules

None.

Post-conditions

A new plan of OCSUserHosting will be created with the specified values.

Sequence Narrative

  1. Actor submits CreateUserPlan request to the Hosted Office Communications Server namespace.

  2. CreateUserPlan calls the private ValidatePlanFeatures_. This procedure will validate that all the plan features are of type boolean (1|0|true|false). An exception will be raised if any of the values fail this test.

  3. The Hosted Office Communications Server namespace calls the Managed Plans::CreatePlan procedure to create a plan of type 'OCSUserHosting'.

  4. The Hosted Office Communications Server namespace calls the private procedure GetUserPlanFeatures_ to retrieve the feature name and description which are required by Managed Plans.

  5. Do transform to remove the feature whose value is empty.

  6. The Hosted Office Communications Server namespace calls the Managed Plans::AddFeaturesToPlan procedure.

Sample Code

Example XML Request

<request> 
  <data> 
    <!--The domain controller to use for Active Directory actions.--> 
    <preferredDomainController>AD01.Fabrikam.Com</preferredDomainController> 
    <!--The unique name of the plan--> 
    <planName>OCS Basic IM</planName> 
    <!--The description of the plan--> 
    <planDescription>Enable A User for Basic IM.</planDescription> 
    <!--Container element for plan features.--> 
    <features> 
      <!--This allows the user to invite anonymous user to meeting.--> 
      <allowOrganizeMeetingWithAnonymousParticipants>true</allowOrganizeMeetingWithAnonymousParticipants> 
      <!--This enables the user for Office Communications Server.--> 
      <enabled>true</enabled> 
      <!--This enables the user for new advanced features of Office Communications Server.--> 
      <enabledForEnhancedPresence>true</enabledForEnhancedPresence> 
      <!--This enables the user to participate in a federated conversation.--> 
      <enabledForFederation>true</enabledForFederation> 
      <!--This enables the user for internet access.--> 
      <enabledForInternetAccess>true</enabledForInternetAccess> 
      <!--This setting controls the user ability to participate in conversations with public IM providers such as AOL, MSN and Yahoo.--> 
      <publicNetworkEnabled>true</publicNetworkEnabled> 
      <!--Specifies the name of the Meeting Policy to be applied to a user.--> 
      <meetingPolicy>Default Policy</meetingPolicy> 
      <!--This enables the user for Unified Communications.--> 
      <ucEnabled>true</ucEnabled> 
      <!--Specifies the name of the Unified Communications Policy to be applied to a user. This parameter must be present if ucEnabled is true.--> 
      <ucPolicy>Default Policy</ucPolicy> 
    </features> 
  </data> 
  <procedure> 
    <execute namespace="Hosted Office Communications Server" procedure="CreateUserPlan" impersonate="1"> 
      <before source="data" sourcePath="preferredDomainController" destination="executeData" mode="move" /> 
      <before source="data" sourcePath="planName" destination="executeData" mode="move" /> 
      <before source="data" sourcePath="planDescription" destination="executeData" mode="move" /> 
      <before source="data" sourcePath="features" destination="executeData" mode="move" /> 
      <after source="executeData" destination="data" mode="merge" /> 
    </execute> 
  </procedure> 
</request>

Example XML Response

<response>  
        <data /> 
</response>

Applies To

Hosted Office Communications Server Namespace API for:

  • Hosted Messaging and Collaboration version 4.5

See also

Tasks

Hosted Office Communications Server::GetUserPlan
Hosted Office Communications Server::ModifyUserPlan