RESTful Application Development Guide

     Previous  Next    Open TOC in new window    View as PDF - New Window  Get Adobe Reader - New Window
Content starts here

Third Party Call

 


Operations

The RESTful Third Party Call interfaces allow an application to set up a call, get information on that call, cancel the call request before it is successfully completed, or end a call that has been successfully set up.

In the listings below, bold indicates a required attribute, <> a descriptive comment.

Note: An HTML version of this information is at http://host:port/rest/third_party_call/index.html where host and port depend on the Oracle Communications Services Gatekeeper installation.

Make Call

Sets up a call between two parties, the calling party and the called party.

Request

URI

http://host:port/rest/third_party_call/calls

Request Content-Type

application/json

Body

{

"calledParty": "URI", <The address of the party being called>

"callingParty": "URI",<The address of the party making the call>

"charging": {<This entire attribute is optional>

"description": "String", <Text to be used for information and billing>

"amount": "BigDecimal", <The amount to be charged>

"code": "String", <A charging code, from an existing contractual description>

"currency": "String" <A currency identifier as defined in ISO 4217 [9]>

}

}

HTTP Method

POST

Response

Response Content-Type

application/json

Body

{"result": "String"}

The call identifier, a string used to identify the call for later correlation

Header

key= “Location” value = “host:port/rest/third_party_call/call/${result}”

${result}: The call identifier returned in the body

The URI of the pub/sub server, from which call information can be fetched

Error Response

Service Exception

Policy Exception

Get Call Information

Get information on a previously established call. If the call has terminated, the information is available for an operator configurable amount of time.

Request

URI

http://host:port/rest/third_party_call/call/${callIdentifier}

${callIdentifier}: A string, the call identifier returned from the initial setup request

Response Content-Type

application/json

Body

{"result": {

"callStatus": "CallInitial|CallConnected|CallTerminated",<The current status of the call. See Table 8-1 for more information>

"duration": "Integer",<Only when callStatus=CallTerminated. The duration of the call in seconds>

"startTime": "Calendar",<Only when callStatus in not CallInitial. The time of the beginning of the call in ISO 8601 extended format >

"terminationCause": "CallingPartyNoAnswer|CalledPartyNoAnswer|CallingPartyBusy|CalledPartyBusy|CallingPartyNotReachable|CalledPartyNotReachable|CallHangUp|CallAborted"

<Only when callStatus=CallTerminated. The reason for the termination.>

}}

Table 8-1 Call Status
Value
Meaning
CallInitial
The call is being established
CallConnected
The call is active
CallTerminated
The call was terminated

Error Response

Service Exception

Policy Exception

Cancel Call Request

Cancels a previously requested call that is not yet active. If the call is established, this operation has no effect.

Request

URI

http://host:port/rest/third_party_call/cancel-call/${callIdentifier}

${callIdentifier}: A string, the call identifier returned from the initial call setup

HTTP Method

POST

Response

Body

Empty

Error Response

Service Exception

Policy Exception

End Call

Ends a previously requested call that is active. (Calls in initial state should be cancelled instead.)

Request

URI

http://host:port/rest/third_party_call/end-call/${callIdentifier}

${callIdentifier}: A string, the call identifier returned from the initial call setup

HTTP Method

POST

Response

Body

Empty

Error Response

Service Exception

Policy Exception

 


Errors

The content of possible error messages.

Service Exception

{"error":{

"type":"org.csapi.schema.parlayx.common.v2_1.ServiceException"

"message":"String"

}}

Policy Exception

{"error":{

"type":"org.csapi.schema.parlayx.common.v2_1.PolicyException"

"message":"String"


  Back to Top       Previous  Next