PhoneCallController¶
Outgoing Messages¶
SendDTMF¶
Notifies the platform implementation to send a DTMF signal to the calling device.
JSON Structure¶
{
"header": {
"version": "4.0",
"messageType": "Publish",
"id": {{String}},
"messageDescription": {
"topic": "PhoneCallController",
"action": "SendDTMF"
}
},
"payload": {
"payload": {{String}}
}
}
Payload¶
Property | Type | Required | Description | Example |
---|---|---|---|---|
payload | String | Yes | Details of the DTMF request in structured JSON format. |
Dial¶
Notifies the platform implementation to initiate an outgoing phone call to the destination address.
JSON Structure¶
{
"header": {
"version": "4.0",
"messageType": "Publish",
"id": {{String}},
"messageDescription": {
"topic": "PhoneCallController",
"action": "Dial"
}
},
"payload": {
"payload": {{String}}
}
}
Payload¶
Property | Type | Required | Description | Example |
---|---|---|---|---|
payload | String | Yes | Details of the dial request in structured JSON format. |
Redial¶
Notifies the platform implementation to redial the last called phone number.
JSON Structure¶
{
"header": {
"version": "4.0",
"messageType": "Publish",
"id": {{String}},
"messageDescription": {
"topic": "PhoneCallController",
"action": "Redial"
}
},
"payload": {
"payload": {{String}}
}
}
Payload¶
Property | Type | Required | Description | Example |
---|---|---|---|---|
payload | String | Yes | Details of the redial request in structured JSON format. |
Stop¶
Notifies the platform implementation to end an ongoing call or stop inbound or outbound call setup.
JSON Structure¶
{
"header": {
"version": "4.0",
"messageType": "Publish",
"id": {{String}},
"messageDescription": {
"topic": "PhoneCallController",
"action": "Stop"
}
},
"payload": {
"payload": {{String}}
}
}
Payload¶
Property | Type | Required | Description | Example |
---|---|---|---|---|
payload | String | Yes | Details of the stop request in structured JSON format. |
Answer¶
Notifies the platform implementation to answer an inbound call.
JSON Structure¶
{
"header": {
"version": "4.0",
"messageType": "Publish",
"id": {{String}},
"messageDescription": {
"topic": "PhoneCallController",
"action": "Answer"
}
},
"payload": {
"payload": {{String}}
}
}
Payload¶
Property | Type | Required | Description | Example |
---|---|---|---|---|
payload | String | Yes | Details of the answer request in structured JSON format. |
CreateCallIdReply¶
Reply for CreateCallId message.
JSON Structure¶
{
"header": {
"version": "4.0",
"messageType": "Reply",
"id": {{String}},
"messageDescription": {
"topic": "PhoneCallController",
"action": "CreateCallId",
"replyToId": {{String}}
}
},
"payload": {
"callId": {{String}}
}
}
Payload¶
Property | Type | Required | Description | Example |
---|---|---|---|---|
callId | String | Yes | Unique identifier for a call. |
Incoming Messages¶
CreateCallId¶
Generates a unique identifier for a call.
JSON Structure¶
{
"header": {
"version": "4.0",
"messageType": "Publish",
"id": {{String}},
"messageDescription": {
"topic": "PhoneCallController",
"action": "CreateCallId"
}
}
}
CallStateChanged¶
Notifies the Engine of a change in the state of an ongoing call.
JSON Structure¶
{
"header": {
"version": "4.0",
"messageType": "Publish",
"id": {{String}},
"messageDescription": {
"topic": "PhoneCallController",
"action": "CallStateChanged"
}
},
"payload": {
"state": {{CallState}},
"callId": {{String}},
"callerId": {{String}}
}
}
Payload¶
Property | Type | Required | Description | Example |
---|---|---|---|---|
state | CallState | Yes | The state of the call. | |
callId | String | Yes | The unique identifier associated with the call. | |
callerId | String | No | The identifier for a contact. |
SendDTMFSucceeded¶
Notifies the Engine that sending the DTMF signal succeeded.
JSON Structure¶
{
"header": {
"version": "4.0",
"messageType": "Publish",
"id": {{String}},
"messageDescription": {
"topic": "PhoneCallController",
"action": "SendDTMFSucceeded"
}
},
"payload": {
"callId": {{String}}
}
}
Payload¶
Property | Type | Required | Description | Example |
---|---|---|---|---|
callId | String | Yes | The unique identifier for the associated call. |
ConnectionStateChanged¶
Notifies the Engine of a change in connection to a calling device.
JSON Structure¶
{
"header": {
"version": "4.0",
"messageType": "Publish",
"id": {{String}},
"messageDescription": {
"topic": "PhoneCallController",
"action": "ConnectionStateChanged"
}
},
"payload": {
"state": {{ConnectionState}}
}
}
Payload¶
Property | Type | Required | Description | Example |
---|---|---|---|---|
state | ConnectionState | Yes | The state of connection to a calling device. |
CallFailed¶
Notifies the Engine of an error related to a call.
JSON Structure¶
{
"header": {
"version": "4.0",
"messageType": "Publish",
"id": {{String}},
"messageDescription": {
"topic": "PhoneCallController",
"action": "CallFailed"
}
},
"payload": {
"callId": {{String}},
"code": {{CallError}},
"message": {{String}}
}
}
Payload¶
Property | Type | Required | Description | Example |
---|---|---|---|---|
callId | String | Yes | The unique identifier for the call associated with the error. | |
code | CallError | Yes | The error type. | |
message | String | No | A description of the error. |
CallerIdReceived¶
Notifies the Engine that a caller id was received for an inbound call.
JSON Structure¶
{
"header": {
"version": "4.0",
"messageType": "Publish",
"id": {{String}},
"messageDescription": {
"topic": "PhoneCallController",
"action": "CallerIdReceived"
}
},
"payload": {
"callId": {{String}},
"callerId": {{String}}
}
}
Payload¶
Property | Type | Required | Description | Example |
---|---|---|---|---|
callId | String | Yes | The unique identifier for the call associated with the callId. | |
callerId | String | Yes | The caller's identifier or phone number. |
DeviceConfigurationUpdated¶
Notifies the Engine of the calling feature configuration of the connected calling device.
JSON Structure¶
{
"header": {
"version": "4.0",
"messageType": "Publish",
"id": {{String}},
"messageDescription": {
"topic": "PhoneCallController",
"action": "DeviceConfigurationUpdated"
}
},
"payload": {
"configurationMap": {{String}}
}
}
Payload¶
Property | Type | Required | Description | Example |
---|---|---|---|---|
configurationMap | String | Yes | A map of configuration properties to the boolean state of the properties. |
SendDTMFFailed¶
Notifies the Engine that the DTMF signal could not be delivered to the remote party.
JSON Structure¶
{
"header": {
"version": "4.0",
"messageType": "Publish",
"id": {{String}},
"messageDescription": {
"topic": "PhoneCallController",
"action": "SendDTMFFailed"
}
},
"payload": {
"callId": {{String}},
"code": {{DTMFError}},
"message": {{String}}
}
}
Payload¶
Property | Type | Required | Description | Example |
---|---|---|---|---|
callId | String | Yes | callId The unique identifier for the associated call. | |
code | DTMFError | Yes | The error type. | |
message | String | No | A description of the error. |
Enums¶
CallingDeviceConfigurationProperty¶
Values¶
Value | Description |
---|---|
"DTMF_SUPPORTED" | Whether the device supports DTMF signaling. |
ConnectionState¶
Values¶
Value | Description |
---|---|
"CONNECTED" | A calling device is connected. |
"DISCONNECTED" | No calling device is connected. |
DTMFError¶
Values¶
Value | Description |
---|---|
"CALL_NOT_IN_PROGRESS" | There is no active call through which a DTMF signal can be sent. |
"DTMF_FAILED" | Generic DTMF error. |
CallError¶
Values¶
Value | Description |
---|---|
"NO_CARRIER" | No carrier is available on the calling device. |
"BUSY" | The calling device is busy when setting up an outbound call, such as when a call is already in progress. |
"NO_ANSWER" | The remote party did not answer the call. |
"NO_NUMBER_FOR_REDIAL" | Redial was requested, but there is no previously dialed number available. |
"OTHER" | Generic error. |
CallState¶
Values¶
Value | Description |
---|---|
"IDLE" | The call is not in an active state. |
"DIALING" | The outbound call is initiated by the user. Call setup is in progress. |
"OUTBOUND_RINGING" | The outbound call has been set up, and the remote party is alerted. |
"ACTIVE" | The call is active, and media is being transmitted between the caller and remote party. |
"CALL_RECEIVED" | An alert for the inbound call has been received. |
"INBOUND_RINGING" | The inbound call is ringing. |