Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The Subscribe method allows you to monitor extension for events such as:

...

To guarantee that you don't miss any events between calls to subscribe you use the 'seq' data returned by a call to subscribe as the value of lastSequenceNumber in the next call to subscribe. 

...

A single subscribe method will often return multiple events.

Entry point:

NOTE: you must use the POST method, however you don't need to send any data.

Code Block
linenumberstrue
https://<server host>/servicemanager/rest/CallManagementAPI/subscribe

...

Sample response when two calls are received from 400 at extension 410. The first call arrives and the API returns, then the second call arrives and the API returns the information about the second call only. Both of the calls are rejected simultaneously and the final response contains a Data resource with a collection of Extension resources (e.g. 400 in the sampe below). Each Extension resource contains an array of CallData resources.  The associated uniqueCallId is used to answer a call (see below).


Code Block
linenumberstrue
https://127.0.0.1:8080<server hostname>/servicemanager/rest/CallManagementAPI/subscribe?timeOut=60&
apiKey=f863246a-973e-11e6-8784-08002718f5b5&lastSequenceNumber=28&instanceId=1&exten=400,410,410

...

Code Block
linenumberstrue
httphttps://127.0.0.1:8080<server hostname>/servicemanager/rest/CallManagementAPI/subscribe?timeOut=60
&apiKey=f863246a-973e-11e6-8784-08002718f5b5&lastSequenceNumber=32&instanceId=1&exten=400,410,410

...

Code Block
linenumberstrue
http://127.0.0.1:8080<server hostname>/servicemanager/rest/CallManagementAPI/subscribe?timeOut=60&
apiKey=f863246a-973e-11e6-8784-08002718f5b5&lastSequenceNumber=36&instanceId=1&exten=400,410,410

...

To answer the first call listed in the sample above use the uniqueCallId and pass it in as the uniqueId to the answer method: 

Code Block
linenumberstrue
answer?answerString=...&apiKey=....&exten=101&uniqueId=1403148776.566

...

Code Block
linenumberstrue
httphttps://127.0.0.1:8080<server hostname>/servicemanager/rest/CallManagementAPI/subscribe?timeOut=60&
apiKey=f863246a-973e-11e6-8784-08002718f5b5&lastSequenceNumber=0&instanceId=1&exten=400,410,410 {"Data":{


Code Block
linenumberstrue
"410": [{"CallData":{
     "canAnswer":true,
     "callerId":"400",
     "uniqueCallId":"1412749510.488",
     "callStartTime":"",
     "isQueueCall":false,
     "isClickToDialCall":false,
     "inbound":true,
     "status":"Ringing"},"CallID":2,"Code":0}], 
"400": [{"CallData":{     
    "canAnswer":false,     
    "callerId":"",     
    "uniqueCallId":"1412749517.489",     
    "callStartTime":"",     
    "isQueueCall":false,     
    "isClickToDialCall":false,     
    "inbound":false,     
    "status":"Dialing Out"} ,"CallID":1,"Code":0}]},"seq":4,"Code":0}

...

Code Block
linenumberstrue
httphttps://127.0.0.1:8080<server hostname>/servicemanager/rest/CallManagementAPI/subscribe?timeOut=60&
apiKey=f863246a-973e-11e6-8784-08002718f5b5lastSequenceNumber=4&instanceId=1&exten=400,410,410

...

Code Block
linenumberstrue
httphttps://127.0.0.1:8080<server hostname>/servicemanager/rest/CallManagementAPI/subscribe?timeOut=60&
apiKey=f863246a-973e-11e6-8784-08002718f5b5&lastSequenceNumber=6&instanceId=1&exten=400,410,410

...

Code Block
linenumberstrue
{"Data":{ 
"410": [{"CallData":{     
    "canAnswer":false,     
    "callerId":"400",     
    "uniqueCallId":"1412749510.488",     
    "callStartTime":"2014/10/08 17:25:18",     
    "isQueueCall":false,     
    "isClickToDialCall":false,     
    "inbound":true,     
    "status":"Hungup"},"CallID":2,"Code":0}], 
"400": [{"CallData":{     
    "canAnswer":false,     
    "callerId":"410",     
    "uniqueCallId":"1412749517.489",     
    "callStartTime":"2014/10/08 17:25:18",     
    "isQueueCall":false,     
    "isClickToDialCall":false,     
    "inbound":false,     
    "status":"Hungup"},"CallID":1,"Code":0}]},"seq":10,"Code":0}


Call 2: Extension 400 dials extension 410, 410 is busy.


Code Block
linenumberstrue
httphttps://127.0.0.1:8080<server hostname>/servicemanager/rest/CallManagementAPI/subscribe?timeOut=60&
apiKey=f863246a-973e-11e6-8784-08002718f5b5&lastSequenceNumber=10&instanceId=1&exten=400,410,410

...

Code Block
linenumberstrue
httphttps://127.0.0.1:8080<server hostname>/servicemanager/rest/CallManagementAPI/subscribe?timeOut=60&
apiKey=f863246a-973e-11e6-8784-08002718f5b5&lastSequenceNumber=14&instanceId=1&exten=400,410,410

...