Session Status

This method allows you to review the aggregated call status and individual call legs.
Your aggregated call status will be configured at sub account level as a part of the provisioning process.
This can be used alongside or instead of the Call Event, to simplify your monitoring.

Request

When receiving final call statuses Wavecell platform will POST a JSON object to your URL.

The JSON object will contain the following values:

Name

Type

Description

sessionId

String

Unique id represents a call within one or more hops [UUID]

subAccountId

String

Unique ID of account

status

String

“status” values of the two call legs. Possible values for “status” are: [completed

startTime

String

Start time of call masking session

endTime

String

Start time of call masking session

lastAction

String

Shows the last executed command during the session (MakeCall, PlayTTS or PlayFile)

callCount

Integer

Shows how many call legs have been bridged for the given session

details

Object

JSON object containing information about all call legs in the session

id

String

Unique identifier of call leg

direction

Integer

Indicates the direction of the call leg (Inbound or Outbound)

type

String

PSTN or VoIP

numberReferenceId

String

Your reference provided when configuring the Virtual Number

initiatedTimestamp

String

Initiated time of call leg

connectedTimestamp

String

Time when the call leg is connected

disconnectedTimestamp

String

Time when the call leg is disconnected

source

String

Source number (CallerID) set for the call leg

target

String

Destination number set for the call leg

sourceCountryCode

String

Country code for the Source Number

targetCountryCode

String

Country code for the Destination Number

status

String

Call status of the call leg

duration

Integer

Call duration of the call leg

Example of a JSON object sent to your handleURL:

{
     "sessionId": "37f31065-b050-11ea-aed2-b9458c490aa3",
     "subAccountId": "account_x",
     "status": "Completed",
     "startTime": "2020-06-17T04:08:37Z",
     "endTime": "2020-06-17T04:09:37Z",
     "lastAction": "MakeCall",
     "callCount": 2,
     "details": {
        "callA": {
           "id": "eb0fc709-9693-11ea-454d-1705dde98182",
           "direction": "Inbound",
           "type": "PSTN",
           "numberReferenceId": "Number_pool_2749",
           "initiatedTimestamp": "2020-06-17T04:08:37Z",
           "connectedTimestamp": "2020-06-17T04:08:37Z",
           "disconnectedTimestamp": "2020-06-17T04:09:37Z",
           "source": "+62123456789",
           "target": "+62987654321",
           "sourceCountryCode": "ID",
           "targetCountryCode": "ID",
           "status": "Completed",
           "duration": 60
            },
        "callB": {
           "id": "2a8e7e03-95d7-11ea-765f-7f761f5ad998",
           "direction": "Outbound",
             "type": "PSTN",
           "numberReferenceId": "Number_pool_4526",
           "initiatedTimestamp": "2020-06-17T04:08:57Z",
           "connectedTimestamp": "2020-06-17T04:08:37Z",
           "disconnectedTimestamp": "2020-06-17T04:09:37Z",
           "source": "+62987654321",
           "target": "+62121212121",
           "sourceCountryCode": "ID",
           "targetCountryCode": "ID",
           "status": "Completed",
           "duration": 60
                }
    }
}

Session statuses

Here is the list of all possible session statuses:

CallA Status

CallB Status

Status

Comment

COMPLETED

COMPLETED

COMPLETED

Successfully established call between two call parties

COMPLETED

NO ANSWER

NO ANSWER

The called party did not answer the call

COMPLETED

BUSY

BUSY

The called party’s phone was busy

COMPLETED

FAILED

FAILED

The outbound call towards the called party’s phone number failed. Possible reasons include the number is switched off or not reachable

COMPLETED

CANCELED

CANCELED

The calling party disconnected the call before a “Status” for the outbound call leg was received. This can occur if a user disconnects before ringing is completed or as soon as the caller hears an operator tone suggesting the phone number is invalid / switched off.

COMPLETED

NULL

COMPLETED

Indicates that the call flow did not have an outbound call leg. This can happen when the called phone number has been answered by a TTS prompt.

Response

Your endpoint should respond with 200 OK status