Cisco Unity Connection Provisioning Interface (CUPI) API -- TransferRulesAPIs

From DocWiki

Jump to: navigation, search

Links to Other API pages: Cisco_Unity_Connection_APIs

CUPI Guide Contents
API Overview
Index of All CUPI Documentation


Contents


TransferRulesAPIs

Listing the Transfer Rules

To enable a transfer type and update the rule to transfer call to another extension, set the transfer type to supervise transfer and if the extension is busy, ask callers to hold. In addition, you can also set some call screening options.

GET https://<connection-server>/vmrest/handlers/callhandlers/<callhandler-objectid>/transferoptions

The following is the response from the above *GET* request and the actual response will depend upon the information given by you:

<TransferOptions total="2"> 
  <TransferOption>
    <URI>/vmrest/handlers/callhandlers/166da38f-951b-4c9a-92da-
  87ed7993cfec/transferoptions/Standard</URI>
    <CallHandlerObjectId>166da38f-951b-4c9a-92da-
  87ed7993cfec</CallHandlerObjectId>
    <CallhandlerURI>/vmrest/handlers/callhandlers/166da38f-951b-4c9a-92da-
  87ed7993cfec</CallhandlerURI>
    <TransferOptionType>Standard</TransferOptionType>
    <Action>0</Action>
    <Extension>0</Extension>
    <RnaAction>1</RnaAction>
    <TransferAnnounce>false</TransferAnnounce>
    <TransferConfirm>false</TransferConfirm>
    <TransferDtDetect>false</TransferDtDetect>
    <TransferHoldingMode>0</TransferHoldingMode>
    <TransferIntroduce>false</TransferIntroduce>
    <TransferRings>4</TransferRings>
    <TransferScreening>false</TransferScreening>
    <TransferType>0</TransferType>
    <MediaSwitchObjectId>cd10d831-28d3-40da-ab13-
  a87431b38682</MediaSwitchObjectId>
    <PhoneSystemURI>/vmrest/phonesystems/cd10d831-28d3-40da-ab13-
  a87431b38682</PhoneSystemURI>
    <UsePrimaryExtension>false</UsePrimaryExtension>
    <PlayTransferPrompt>true</PlayTransferPrompt>
    <PersonalCallTransfer>false</PersonalCallTransfer>
    <Enabled>true</Enabled>
  </TransferOption>
</TransferOptions>
Response Code: 200

JSON Example

To enable transfer rule, do the following:

GET https://<connection-server>/vmrest/handlers/callhandlers/<callhandler-objectid>/transferoptions
Action: application/json
Connection: keep_alive

The following is the response from the above *GET* request and the actual response will depend upon the information given by you:

{   
  "@total": "2",  
  "TransferOption":    [           
    {         
    "URI": "/vmrest/handlers/callhandlers/166da38f-951b-4c9a-92da-
    87ed7993cfec/transferoptions/Alternate",         
    "CallHandlerObjectId": "166da38f-951b-4c9a-92da-87ed7993cfec", 
    "CallhandlerURI": "/vmrest/handlers/callhandlers/166da38f-951b-4c9a-92da-
    87ed7993cfec",         
    "TransferOptionType": "Alternate",         
    "Action": "0",         
    "Extension": "0",         
    "RnaAction": "1",         
    "TimeExpires": "1972-01-01 00:00:00.0",         
    "TransferAnnounce": "false",         
    "TransferConfirm": "false",        
    "TransferDtDetect": "false",        
    "TransferHoldingMode": "0",        
    "TransferIntroduce": "false",         
    "TransferRings": "4",         
    "TransferScreening": "false",        
    "TransferType": "0",        
    "MediaSwitchObjectId": "cd10d831-28d3-40da-ab13-a87431b38682",        
    "PhoneSystemURI": "/vmrest/phonesystems/cd10d831-28d3-40da-ab13-
    a87431b38682",         
    "UsePrimaryExtension": "true",        
    "PlayTransferPrompt": "true",         
    "PersonalCallTransfer": "false",         
    "Enabled": "false"      
    },           
    {         
    "URI": "/vmrest/callhandlerprimarytemplates/166da38f-951b-4c9a-92da-
    87ed7993cfec/transferoptions/Off%20Hours",         
    "CallHandlerObjectId": "166da38f-951b-4c9a-92da-87ed7993cfec",         
    "CallhandlerURI": "/vmrest/handlers/callhandlers/166da38f-951b-4c9a-92da-
    87ed7993cfec",         
    "TransferOptionType": "Off Hours",         
    "Action": "0",         
    "Extension": "0",         
    "RnaAction": "1",        
    "TransferAnnounce": "false",         
    "TransferConfirm": "false",         
    "TransferDtDetect": "false",        
    "TransferHoldingMode": "0",         
    "TransferIntroduce": "false",         
    "TransferRings": "4",         
    "TransferScreening": "false",         
    "TransferType": "0",         
    "MediaSwitchObjectId": "cd10d831-28d3-40da-ab13-a87431b38682",         
    "PhoneSystemURI": "/vmrest/phonesystems/cd10d831-28d3-40da-ab13-
    a87431b38682",        
    "UsePrimaryExtension": "true",         
    "PlayTransferPrompt": "true",        
    "PersonalCallTransfer": "false",         
    "Enabled": "true"      
    }          
  }
}
Response Code: 200

Update a Transfer Rule

We can do a PUT Operation to update a transfer rule.

Request URI:
PUT https://<connection-server>/vmrest/handlers/callhandlers/<callhandler-
objectid>/transferoptions/Alternate 
Request Body:
<TransferOption>
    <Action>1</Action>
    <Extension>1000</Extension>
    <TimeExpires>2012-12-31 12:00:00.0</TimeExpires>
    <TransferAnnounce>true</TransferAnnounce>
    <TransferConfirm>true</TransferConfirm>
    <TransferIntroduce>true</TransferIntroduce>
    <TransferScreening>true</TransferScreening>
    <TransferType>1</TransferType>
    <Enabled>true</Enabled>
</TransferOption> 

The following is the response from the above *PUT* request and the actual response will depend upon the information given by you:

Response Code: 204

JSON Example

To update transfer rule, do the following:

PUT https://<connection-server>/vmrest/handlers/callhandlers/<callhandler-objectid>/transferoptions/Alternate
Action: application/json
Content_type: application/json
Connection: keep_alive
Request Body:
{
    "Action": "1",
    "TimeExpires": "2012-12-31 12:00:00.0",
    "TransferAnnounce": "true",
    "TransferConfirm": "true", 
    "TransferIntroduce": "true",
    "TransferRings": "8",
    "TransferScreening": "true",
    "TransferType": "1",
    "Enabled": "true"
} 

The following is the response from the above *PUT* request and the actual response will depend upon the information given by you:

Response Code: 204

Explanation of Data Fields

Parameter Operations Data Type Comments
URI Read Only String Specifies URI of the call handler transfer options.
CallHandlerObjectId Read Only String(36) Specifies the call handler object ID.
CallHandlerURI Read Only String SpecifiesURI of the call handler being referenced.
TransferOptionType Read Only String Specifies the transfer option type. There are 3 transfer option types available:-
  • Alternate - in effect at all times, overrides standard and off hours.
  • Off Hours - off or closed hours based on specified schedule.
  • Standard - standard hours based on specified schedule.
Action Read/Write Integer Specifies the Transfer rule action. Refer to the section Enumeration Type

Default value : 0

RnaAction Read/Write Integer Action to take on Ring-No-Answer (RNA) condition. Refer to the section Enumeration Type.

Default value: 1

TimeExpires Read/Write Datetime Rather than using a simple on and off scheme for enabling transfer options and greetings, Cisco Unity Connection employs a date scheme. If the value is NULL or a date in the future then the transfer option is considered enabled. If the date is sometime in the past, then the transfer option is considered disabled.

The "Standard" transfer option should never be disabled. For primary call handlers associated with the subscribers, the "Alternate" transfer option should always be enabled since subscribers have only one transfer option used currently.

TransferAnnounce Read/Write Boolean A flag indicating whether Cisco Unity Connection plays "transferring call" when the subscriber answers the phone. This requires a TransferType column value = "Supervised" (1)

Possible Values:

  • false: Do not say "Transferring call" when the subscriber answers the phone
  • true: Say "Transferring call" when the subscriber answers the phone

Default Value: false

TransferConfirm Read/Write Boolean The type of call transfer Unity Connection will perform - supervised or unsupervised (also referred to as "Release to Switch" transfer). This requires a "TransferType" of supervised (1).
  • Unsupervised transfer (also referred to as "Release to Switch" transfer) - Cisco Unity Connection puts the caller on hold, dials the extension, and releases the call to the phone system. When the line is busy or is not answered, the phone system (not Cisco Unity Connection) forwards the call to the subscriber or handler greeting. To use "Unsupervised" transfer, call forwarding must be enabled on the phone system.
  • Supervised transfer - Cisco Unity Connection acts as a receptionist, handling the transfer. If the line is busy or the call is not answered, Cisco Unity Connection (not the phone system) forwards the call to the subscriber or handler greeting. Supervised transfer can be used regardless if the phone system forwards calls or not.

Typically, TransferConfirm is used in conjunction with the call screening option ("TransferScreening" column) enabled. This combination enables the subscriber to hear the name of the caller and then decide if they want to take the call or not. Possible values:

  • false: Transfer confirm disabled
  • true: Transfer confirm enabled

Default Value: false

TransferDtDetect Read/Write Boolean A flag indicating whether Cisco Unity Connection will check for dial tone before attempting to transfer the call. This requires a "TransferType" of supervised (1).

This is usually used for phone systems that do not have "positive disconnect" capabilities to avoid sending terminated calls to the operator console. Possible Values:

  • false: Do not check for dial tone prior to transferring a call
  • true: Check for dial tone prior to transferring a call

Default value: false.

TransferHoldingMode Read/Write Integer The action Cisco Unity Connection will take when the extension is busy. This requires a TransferType column value = "Supervised" (1).

Refer to the section Enumeration Type. Default Value is 0.

TransferIntroduce Read/Write Boolean A flag indicating whether Cisco Unity Connection will say "call for <recorded name of the call handler>" when the subscriber answers the phone.

Requires a "TransferType" of supervised (1).This functionality is normally used when a single extension number is being shared by multiple subscribers or a scenario where the subscriber who is the message recipient takes calls for more than one dialed extension. The introduction alerts the subscriber who answers that the call is for the call handler. Default value: false.

TransferRings Read/Write Integer The number of times the extension rings before Cisco Unity Connection considers it a "ring no answer" and plays the subscriber or handler greeting.

Requires a "TransferType" of supervised (1). The value of this column should never be less than 2 for a supervised transfer. Possible values: Range 2-20 Default Value: 4

TransferScreening Read/Write Boolean A flag indicating whether Cisco Unity Connection will prompt callers to say their names. When the phone is answered, the subscriber hears "Call from..." before Cisco Unity Connection transfers the call.Requires a "TransferType" of supervised (1).

Normally this column is used along with "TransferConfirm" to allow the subscriber to screen calls. Possible Values:

  • false: Call screening disabled
  • true: Ask and record caller name

Default value: false.

TransferType Read Only String The type of call transfer Cisco Unity Connection will perform - supervised or unsupervised (also referred to as "Release to Switch" transfer).
  • Unsupervised transfer (also referred to as "Release to Switch" transfer) - Cisco Unity Connection puts the caller on hold, dials the extension, and releases the call to the phone system. When the line is busy or is not answered, the phone system (not Cisco Unity Connection) forwards the call to the subscriber or handler greeting. To use "Unsupervised" transfer, call forwarding must be enabled on the phone system.
  • Supervised transfer - Cisco Unity Connection acts as a receptionist, handling the transfer. If the line is busy or the call is not answered, Cisco Unity Connection (not the phone system) forwards the call to the subscriber or handler greeting. Supervised transfer can be used regardless if the phone system forwards calls or not.

Refer to the section Enumeration Type. Default value: 0

MediaSwitchObjectId Read Only String(36) The unique identifier of the MediaSwitch object that Cisco Unity Connection uses for transferring the call to the subscriber phone.
PhoneSystemURI Read Only String Specifies the URI of the Phone Systems.
UsePrimaryExtension Read/Write Boolean If extension is null this field will be set to true to indicate that we are using primary extension instead of DtmfAccessId for the owning handler or the subscriber.

Possible value:

  • true
  • false

Default value: true

Extension Read/Write String(40) If an administrator using Cisco Unity Connection Administration chooses to transfer to the extension of a subscriber or call handler, Cisco Unity Connection will automatically enter the DtmfAccessId value pulled from the DtmfAccessId table for the call handler into this column.Can take values:Digits, hash, comma, asterisk, plus are allowed.
PlayTransferprompt Read/Write Boolean A flag indicating whether the "Wait while I transfer your call" prompt should be played prior to transferring a call.

Possible values:

  • true – Play Transfer prompt is enabled.
  • false – Play transfer prompt is disabled.

Default Value: true.

PersonalCallTransfer Read/Write Boolean A flag indicating whether or not Personal Call Transfer Rules are used for the specific Transfer Option.

Possible Values:-

  • false: Personal Call Transfer Rules are not used.
  • true:- Personal Call Transfer Rules are used.

Default value: false

Enabled Read/Write Boolean Indicate whether the transfer option is enabled or not. To enable rule till particular end date, TimeExpires should also be specified. Whereas, to enable transfer rule with no end date, the TimeExpires field should be empty.

Possible Values:

  • true: enabled
  • false: disabled

Default Value: true

Note: The transfer rules are enabled with no end date by default.

Rating: 0.0/5 (0 votes cast)

Personal tools