Introduction
This document describes Enreach webhook implementation, providing integrators push notifications about events in Enreach core systems. This functionality supplements EnreachAPI, which is a RESTful API relying on request-response pattern unsuitable for notifications.
Simply put, webhooks send a HTTPS POST request to predefined URL whenever defined events occur in the system. The request contains JSON data providing information about the event instance.
For example, if the notification is about an incoming service pool call, the data might include arrival timestamp, caller number and target service pool. This information can then be used in the receiving end to perform any additional logic relating to the notification.
Some possible use scenarios include:
- Receiving notifications about completed service pool calls to send SMS feedback questionnaires
- Receiving notifications about service pool allocations to agents to display custom information from an internal system on their workstations
- Generate contact events to a CRM system about completed calls
Note that Benemen was renamed to Enreach in 2022, and corresponding naming changes were applied to technical products and documentation as well. Some documentation and technical details (XML namespaces, domain names) may still contain Benemen references.
Configuration
Webhooks are configured in two steps. Any number of webhook endpoints are configured and then event subscriptions are bound to them.
Currently configuration can be managed by support only.
Sample configuration for one endpoint with two events
{
"Webhook": {
"Endpoint": "https://my.integration.com/wehook/",
"InsecureSSL": true,
"Secret": "MySecretString"
},
"Subscriptions": [
{
"EventType":"QueueCallInConnected",
"AllEntities": true
},
{
"EventType":"QueueCallInAllocated",
"AllEntities":true
}
]
}
Webhook endpoint
Webhook-receiving HTTPS endpoints are defined with following options:
Option | Description | Example value |
---|---|---|
Endpoint | Full URL to endpoint | https://my.integration.com/webhook/ |
InsecureSSL | Enable self-signed SSL certificates (see SSL verification) | true |
Secret | Secret string included in HTTP calls. See Secret token | MySecretString |
Description | Description for the webhook. | Freeform description. |
TimeoutSeconds | Timeout for the webhook request. Defaults to 5 seconds if not configured. | 5 |
Subscription
Option | Description | Example value |
---|---|---|
EventType | Name of event that should be notified (see event types) | QueueCallInConnected |
EntityId | Id of specific entity to get events about | e0072f3a-cc7c-42ee-b0ac-34cd7238150a |
SecurityGroupId | Id of specific security group to get events for entities in the security group | 9118bef9-fb49-ed11-8713-6c24087ddf1c |
AllEntities | Alternatively to specific EntityId or SecurityGroupId, return events for all entities | true |
Secret token
If webhook configuration defines Secret
parameter, that string will be included
in X-Benemen-Token
HTTP header in all requests. It should be verified to make sure
the request is coming from the authorized server.
SSL verification
The HTTPS endpoint certificate is validated against known certificate
authority list. This means that the certificate must be signed by a public Certificate Authority.
Self-signed certificates cannot be used, unless explicitly enabled by the InsecureSSL
flag in
webhook configuration. Bypassing the certificate validation is discouraged in general, as it
may expose the sensitive data to unauthorized parties.
Endpoint implementation
While implementing a webhook listener, several considerations should be noted.
The listener must work over HTTPS only. Plain HTTP is not allowed, as the payload is potentially very sensitive.
The listener must listen in default HTTPS port 443. Using other ports is not possible.
The listener should verify the Secret token sent in X-Benemen-Token
header to verify sender identity.
The listener must respond as fast as possible with a 200 OK
status code. It is important to
perform any processing separately from responding to the webhook request. Otherwise you risk the
request timing out and getting re-sent. Similarly, sending any other response code than 200 OK
will
make the request get re-sent.
The listener should not include any response body. It will be ignored in any case and simply causes unnecessary network traffic.
If the request times out or receives status code other than 200, it will be retried a few times and
then discarded. This means that notifications are not guaranteed to be delivered exactly once, even
though that is normally the case. If your implementation must be sure that each event is handled
exactly once, keep track of handled events based on their Id
.
Each endpoint can only define a single URL. No load-balancing sets or failovers are supported. If you require such functionalities, run your own load-balancer in front of the actual receivers.
Request payload
Example full request (line breaks in body added for readability)
POST /webhook/
X-Benemen-Event: QueueCallInUserAllocated
X-Benemen-Token: MySecretString
Content-Type: application/json; charset=utf-8
Host: my.integration.com
Content-Length: 656
Connection: Keep-Alive
{
"RootEntityType":"Organization",
"RootEntityId":"fd434d24-f685-431d-8df5-386b5d5ffa73",
"EventType":"QueueCallInUserAllocated",
"EntityType":"Queue",
"EntityId":"6cb31d7d-9cd9-41dc-a096-62cf31fd0281",
"CallId":"9cae633f-68d0-4315-8b9a-b83c7673d8dc",
"QueueId":"6cb31d7d-9cd9-41dc-a096-62cf31fd0281",
"OrganizationId":"fd434d24-f685-431d-8df5-386b5d5ffa73",
"QueueName":"Sample queue 1",
"QueueNumber":"+358101231234",
"UserId":"b4df099e-70dc-4ff5-b4ea-c2c3547d97fb",
"Username":"sample.agent@customer.com",
"CallerNumber":"+358501231234",
"TargetNumber":"+35810123",
"Id":"85b214f2-1d27-4262-87b6-8f55b3199400",
"Timestamp":"2018-01-01T08:01:23.45"
}
All requests include two specific HTTP headers:
X-Benemen-Event
- type of contained event. Used to aid in deserialization in cases where same HTTP endpoint handles multiple event typesX-Benemen-Token
- secret token
Request body is always JSON encoded.
Common event properties
All event types have a basic set of properties defined. These are included to make it possible to process event payloads to some degree without explicit handling logic for each individual type. You might want to receive all webhooks in one endpoint but route them to different or several backends depending on the event type.
Property | Type | Description |
---|---|---|
Id | Guid | Unique event instance id. Can be used to keep track of handled events as well as troubleshooting |
Timestamp | DateTime | Timestamp when event was initially instantiated (i.e. when the event happened) |
RootEntityType | RootEntityType | Root entity type event relates to |
RootEntityId | Guid | Id of root entity |
EntityType | EntityType | Main entity type event relates to |
EntityId | Guid | Id of main entity |
EventType | string | Name of event |
Root entity types
Root entity types are top-level containers events can be related to. Currently
only Organization
events are provided, meaning events relating to a single
organization tenant as opposed to for example system-wide events.
Type | Description |
---|---|
Undefined | Undefined value for backwards-compatibility if new types are introduced later. |
Organization | Organization type. Currently all events belong to this root entity. |
Entity types
Type | Description |
---|---|
Undefined | Undefined value for backwards-compatibility if new types are introduced later |
User | User type, i.e. normal end-user |
Queue | Service pool, i.e. a single queue handling service calls |
CallList | Call list handling call-back requests and outbound calling |
User
Event: UserAvailability
Example payload of Event: UserAvailability
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserAvailability",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"ProfileId": "00000000-0000-0000-0000-000000000000",
"Availability": "Example Availability",
"StartTime": "0001-01-01T00:00:00",
"EndTime": "0001-01-01T00:00:00",
"Note": "Example Note",
"EventSource": "Example EventSource",
"TransferNumber": "+123457890123",
"Id": "2a6fa1bd-429d-4cdb-98e4-9931e500cafa",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
User's current availability state
Property name | Value type | Description |
---|---|---|
Availability | string | Availability state, possible values: Available, Busy, DoNotDisturb, OffWork, BRB, Away |
EndTime | DateTime | End time of the state, DateTime.MaxValue if the state is continuous |
EventSource | String | Availability event source from db |
Note | String | User-defined message or description |
OrganizationId | Guid | Id of related organization. |
ProfileId | Guid | Id of the availability profile in database. |
StartTime | DateTime | Start time of the state |
TransferNumber | string | The phone number calls are transferred to if appropriate. |
UserId | Guid | Id of target user. |
UserName | string | Username of target user. |
Event: UserCallAllocationRequest
Example payload of Event: UserCallAllocationRequest
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallAllocationRequest",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"MessageTTLSeconds": 20,
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"RequestId": "00000000-0000-0000-0000-000000000000",
"AllocationType": "Example AllocationType",
"TTLSeconds": 0,
"Id": "efbcaba2-86e7-4ca4-b048-32ad7c8dc234",
"Timestamp": "2020-01-01T12:00:00Z"
}
This event is emitted via the API to indicate the user wishes to allocate a new call. Used when the agent is in fetch allocation mode.
Property name | Value type | Description |
---|---|---|
AllocationType | string | Allocation type: allocate = Allocate a call if possible (according the normal rules) |
OrganizationId | Guid | Id of related organization. |
RequestId | Guid | For correlating responses. |
TTLSeconds | int | TTL of the FetchAllocation request in seconds. |
UserId | Guid | Id of target user. |
Event: UserCallAllocationResponse
Example payload of Event: UserCallAllocationResponse
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallAllocationResponse",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"MessageTTLSeconds": 20,
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"RequestId": "00000000-0000-0000-0000-000000000000",
"AllocationType": "Example AllocationType",
"CallId": null,
"LegId": "Example LegId",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"QueueId": null,
"Id": "b9dc124f-4234-4bdf-82d4-1cca204fb262",
"Timestamp": "2020-01-01T12:00:00Z"
}
Reply for an new call allocation request. Used when the agent is in fetch allocation mode.
Property name | Value type | Description |
---|---|---|
AllocationType | string | Allocation type: allocated = Call allocated nocalls = No calls to allocate for the agent agentunavailable = Call could not be allocated following the normal allocation rules(agent was DND, afterwork etc) |
CallerNumber | string | Original caller Optional |
CallId | Guid? | Call being allocated (if any) Optional |
LegId | string | Optional |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid? | Allocating queue Optional |
RequestId | Guid | For correlating responses. |
TargetNumber | string | Where the original call was made to Optional |
UserId | Guid | Id of target user. |
Event: UserCallBlockingPromptStarted
Example payload of Event: UserCallBlockingPromptStarted
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallBlockingPromptStarted",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"TechQueueId": null,
"PlayApplet": "Example PlayApplet",
"Reason": "Example Reason",
"PromptDetail": "Example PromptDetail",
"Id": "862c7b78-4046-4682-9fc1-a8bdeafb9892",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Call blocking prompt started. Current responsible owner is a user.
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
PlayApplet | string | Current playing Applet name. |
PromptDetail | string | Prompt usage or id, or SAY: when using say command. E.g. "PRO_Enter" |
Reason | string | Reason for playing the prompt: e.g "MandatoryEnter" |
TechQueueId | Guid? | Actual technical queue id doing the prompt playing. |
UserId | Guid | User id |
Event: UserCallInArrived
Example payload of Event: UserCallInArrived
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallInArrived",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Publicity": 0,
"Id": "9d30af1b-c664-4901-b623-c635e8179919",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call. Current target is user. Call entered for allocation.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
Publicity | CallEventPublicityCategory | The publicity of user's direct calls |
TargetNumber | string | Original called number. |
UserId | Guid | Id of current target user. |
UserName | string | Username of current target user. |
Event: UserCallInCallbackCreated
Example payload of Event: UserCallInCallbackCreated
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallInCallbackCreated",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"CallBackId": "00000000-0000-0000-0000-000000000000",
"CallListId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"CallId": null,
"LegId": "Example LegId",
"RecordingId": null,
"ContactNumber": "+123457890123",
"TargetNumber": "+123457890123",
"ContactMessage": "Example ContactMessage",
"CreationTime": "0001-01-01T00:00:00",
"Id": "a6a8bd78-f72d-4057-88a3-8ad55f195edd",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Produced when a callback request targeted for the user is created (by Controller).
Property name | Value type | Description |
---|---|---|
CallBackId | Guid | CallBack Id this event relates to. |
CallId | Guid? | The id of the original call that prompted the creation of this request |
CallListId | Guid | Id of the CallList for this CallBack |
ContactMessage | string | ContactMessage, e.g configured in service queue |
ContactNumber | string | Contact number that is supposed to be called to |
CreationTime | DateTime | When the request was initially created |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
RecordingId | Guid? | Optional RecordingId if one exists |
TargetNumber | string | Original target number that was called |
UserId | Guid | Id of the user the personal callback is targeted to |
Event: UserCallInComing
Example payload of Event: UserCallInComing
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallInComing",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Username": "user.name@example.com",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Publicity": 0,
"Id": "84e41b71-2373-4b4b-8030-e8cab71fed93",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming direct call to user entered Controller.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
Publicity | CallEventPublicityCategory | The publicity of user's direct calls |
TargetNumber | string | Original called number. |
UserId | Guid | Id of target user. |
Username | string | Username of target user |
Event: UserCallInDisconnected
Example payload of Event: UserCallInDisconnected
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallInDisconnected",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Username": "user.name@example.com",
"Reason": "Example Reason",
"TechQueueId": null,
"TechReason": "Example TechReason",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Publicity": 0,
"Id": "e4312462-b995-47de-a307-d9847840dfbb",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Call in, currently for user, was disconnected.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
Publicity | CallEventPublicityCategory | The publicity of user's direct calls |
Reason | string | Reason for the disconnect. 'remote' or 'local' |
TargetNumber | string | Original called number. |
TechQueueId | Guid? | Id of then current technical queue, may be different to the service queue. |
TechReason | string | Technical reason (e.g SIP cause code) for the disconnect. |
UserId | Guid | Id of current target user. |
Username | string | Username of target user |
Event: UserCallInHoldEnd
Example payload of Event: UserCallInHoldEnd
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallInHoldEnd",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Id": "ac6dbdda-7bda-496e-ab4c-0c68822a8d82",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Notification indicating that the user's incoming call is off hold.
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
UserId | Guid | Id of calling user. |
Event: UserCallInHoldStart
Example payload of Event: UserCallInHoldStart
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallInHoldStart",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Id": "04934305-7011-4eda-a2ab-7a77334aaece",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Notification indicating that the user's incoming call is on hold.
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
UserId | Guid | Id of calling user. |
Event: UserCallInOverflow
Example payload of Event: UserCallInOverflow
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallInOverflow",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Username": "user.name@example.com",
"ConnectedTarget": "Example ConnectedTarget",
"TechSource": "Example TechSource",
"TechQueueId": "00000000-0000-0000-0000-000000000000",
"TechQueueName": "Example TechQueueName",
"OverflowApplet": "Example OverflowApplet",
"TechNumber": "+123457890123",
"TechEvent": "Example TechEvent",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"OverflowReason": "Example OverflowReason",
"OverflowType": "Example OverflowType",
"Publicity": 0,
"Id": "f5bf7d62-c02d-474d-8a1e-82b2c79e8990",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call, currently for user, overflows to next routing target.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
ConnectedTarget | string | Currently connected target. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
OverflowApplet | string | Overflow Applet name. |
OverflowReason | string | Overflow reason description, values like: NoAvailableProviders, QueueFull, UserActivelyDeclined ... |
OverflowType | string | Overflow type, large set values like: AdHoc_1, ServiceOpen, QueueHandler, QueueOverflowDefault, UserTransferAll, ActPreEnter, TerminationHandling |
Publicity | CallEventPublicityCategory | The publicity of user's direct calls |
TargetNumber | string | Original called number. |
TechEvent | string | Technical event. |
TechNumber | string | Technical source type. |
TechQueueId | Guid | Id of current technical queue. |
TechQueueName | string | Name of current technical queue. |
TechSource | string | Overflow source type. |
UserId | Guid | Id of current user. |
Username | string | Username of target user |
Event: UserCallInRecordingConverted
Example payload of Event: UserCallInRecordingConverted
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallInRecordingConverted",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"RecordingId": "00000000-0000-0000-0000-000000000000",
"ConversionId": "00000000-0000-0000-0000-000000000000",
"Id": "b386a133-ae7a-4282-81f0-46a5adecfe03",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming direct call to user, recording converted
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
ConversionId | Guid | ConversionId |
OrganizationId | Guid | Id of related organization. |
RecordingId | Guid | RecordingId |
UserId | Guid | UserId |
Event: UserCallInTransferCancelled
Example payload of Event: UserCallInTransferCancelled
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallInTransferCancelled",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Username": "user.name@example.com",
"TechQueueId": "00000000-0000-0000-0000-000000000000",
"TechQueueName": "Example TechQueueName",
"TransferApplet": "Example TransferApplet",
"TechSource": "Example TechSource",
"Reason": "Example Reason",
"DetailedReason": "Example DetailedReason",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Publicity": 0,
"Id": "eaa454db-bccb-4b38-a9fa-d4980d030d4c",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call, currently targeted to user. Transfer cancelled.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
DetailedReason | string | Detailed cancellation reason. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
Publicity | CallEventPublicityCategory | The publicity of user's direct calls |
Reason | string | Cancellation reason. |
TargetNumber | string | Original called number. |
TechQueueId | Guid | Id of current technical queue. |
TechQueueName | string | Name of current technical queue. |
TechSource | string | Technical source type. |
TransferApplet | string | Transferring Applet name. |
UserId | Guid | Id of current user. |
Username | string | Transferring user's username |
Event: UserCallInTransferConnected
Example payload of Event: UserCallInTransferConnected
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallInTransferConnected",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Username": "user.name@example.com",
"ConnectedTarget": "Example ConnectedTarget",
"TransferSource": "Example TransferSource",
"TechQueueId": "00000000-0000-0000-0000-000000000000",
"TechQueueName": "Example TechQueueName",
"TransferApplet": "Example TransferApplet",
"TechSource": "Example TechSource",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Publicity": 0,
"Id": "6e812078-8333-40c7-8044-c67d11dfd1d7",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call, currently targeted to user. Transfer to overflow target connected.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
ConnectedTarget | string | Connected target. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
Publicity | CallEventPublicityCategory | The publicity of user's direct calls |
TargetNumber | string | Original called number. |
TechQueueId | Guid | Id of current technical queue. |
TechQueueName | string | Name of current technical queue. |
TechSource | string | Technical source type. |
TransferApplet | string | Transferring Applet name. |
TransferSource | string | Transfer source. |
UserId | Guid | Id of transferring current user. |
Username | string | Transferring user's username |
Event: UserCallInTransferStarted
Example payload of Event: UserCallInTransferStarted
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallInTransferStarted",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Username": "user.name@example.com",
"TransferTarget": "Example TransferTarget",
"TransferSource": "Example TransferSource",
"TechQueueId": "00000000-0000-0000-0000-000000000000",
"TechQueueName": "Example TechQueueName",
"TransferApplet": "Example TransferApplet",
"TechSource": "Example TechSource",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Publicity": 0,
"Id": "1ae8f208-5c24-439c-b6f9-746d681b782d",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call, currently targeted to user. Transfer to overflow target started.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
Publicity | CallEventPublicityCategory | The publicity of user's direct calls |
TargetNumber | string | Original called number. |
TechQueueId | Guid | Id of current technical queue. |
TechQueueName | string | Name of current technical queue. |
TechSource | string | Technical source type. |
TransferApplet | string | Transferring Applet name. |
TransferSource | string | Transfer source. |
TransferTarget | string | Transfer target, guid or phone number. |
UserId | Guid | Id of current transferring user. |
Username | string | Transferring user's username |
Event: UserCallInUserAllocated
Example payload of Event: UserCallInUserAllocated
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallInUserAllocated",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"UserNumber": "+123457890123",
"DetailedReason": "Example DetailedReason",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Publicity": 0,
"Id": "832a05d8-6e26-414f-bac7-934dc283e7a8",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call, currently targeted to user. Call allocated to user.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
DetailedReason | string | Optional detailed reason for allocation. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
Publicity | CallEventPublicityCategory | The publicity of user's direct calls |
TargetNumber | string | Original called number. |
UserId | Guid | Id of allocating User. |
UserName | string | Allocation target username |
UserNumber | string | Number of allocating User. |
Event: UserCallInUserCancelled
Example payload of Event: UserCallInUserCancelled
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallInUserCancelled",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"Reason": "Example Reason",
"DetailedReason": "Example DetailedReason",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Publicity": 0,
"Id": "bade0325-ef6e-4761-a31a-3069e3b7e10c",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call, currently targeted to user. Call allocation to user cancelled.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
DetailedReason | string | Detailed cancellation reason. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
Publicity | CallEventPublicityCategory | The publicity of user's direct calls |
Reason | string | Cancellation reason. |
TargetNumber | string | Original called number. |
UserId | Guid | Id of allocated user. |
UserName | string | Username of cancelling user. |
Event: UserCallInUserConnected
Example payload of Event: UserCallInUserConnected
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallInUserConnected",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"AgentLegId": "Example AgentLegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"UserNumber": "+123457890123",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Publicity": 0,
"Id": "9a4c585c-afef-4101-ab99-6dd07cc21635",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call, currently targeted to user. Call allocation to user connected.
Property name | Value type | Description |
---|---|---|
AgentLegId | string | LegId of of the forked call to agent |
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
Publicity | CallEventPublicityCategory | The publicity of user's direct calls |
TargetNumber | string | Original called number. |
UserId | Guid | Id of connected User. |
UserName | string | Username of connected User. |
UserNumber | string | Number of connected User. |
Event: UserCallInUserOverflow
Example payload of Event: UserCallInUserOverflow
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallInUserOverflow",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Username": "user.name@example.com",
"Reason": "Example Reason",
"Target": "Example Target",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Publicity": 0,
"Id": "64af991b-c4ca-4c72-8f54-59c9cf4d56c2",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Worknumber call is overflowing to other destination
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number |
CallId | Guid | Id of core call event relates to |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization |
Publicity | CallEventPublicityCategory | The publicity of user's direct calls |
Reason | string | Reason for the overflow: AVAActiveProfile, BusyForTechnicalError, DND, OffWork, NoAnswer, InterruptOverflow BusyOnBusy, TransferAll, BlindTransfer |
Target | string | Transfer target. Guid or phone number, or list of targets. |
TargetNumber | string | Original called number |
UserId | Guid | Id of transferring "responsible" user |
Username | string | Username |
Event: UserCallOutConnected
Example payload of Event: UserCallOutConnected
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallOutConnected",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Publicity": 0,
"Id": "19cfe6ae-4547-45b9-83ea-c0255b721bc7",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Outgoing call
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
Publicity | CallEventPublicityCategory | The publicity of user's direct calls |
TargetNumber | string | Original called number. |
UserId | Guid | Id of calling User. |
UserName | string | Username of calling User. |
Event: UserCallOutDisconnected
Example payload of Event: UserCallOutDisconnected
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallOutDisconnected",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"Reason": "Example Reason",
"TechReason": "Example TechReason",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Publicity": 0,
"Id": "8cf91ec1-ec25-4768-b9bf-f2e30b761979",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
User call was disconnected.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
Publicity | CallEventPublicityCategory | The publicity of user's direct calls |
Reason | string | Reason for the disconnect. 'remote' or 'local' |
TargetNumber | string | Original called number. |
TechReason | string | Technical reason (e.g SIP cause code) for the disconnect. |
UserId | Guid | Id of current calling user. |
UserName | string | Username of current calling user. |
Event: UserCallOutGoing
Example payload of Event: UserCallOutGoing
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallOutGoing",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"CallAsNumber": "+123457890123",
"Publicity": 0,
"Id": "555126c6-1df6-4f8c-a4d2-6ec203cde969",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Outgoing direct call initiated by a user
Property name | Value type | Description |
---|---|---|
CallAsNumber | string | Optional call as number |
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
Publicity | CallEventPublicityCategory | The publicity of user's direct calls |
TargetNumber | string | Original called number. |
UserId | Guid | Id of calling user. |
UserName | string | Username of calling user. |
Event: UserCallOutHoldEnd
Example payload of Event: UserCallOutHoldEnd
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallOutHoldEnd",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Id": "e4b6fe3f-2a13-4db5-b2a0-ce484ea94ebd",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Notification indicating that the user's outgoing call is off hold.
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
UserId | Guid | Id of calling user. |
Event: UserCallOutHoldStart
Example payload of Event: UserCallOutHoldStart
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallOutHoldStart",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Id": "f1eb7178-57e3-49dc-b62a-543a87782a52",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Notification indicating that the user's outgoing call is on hold.
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
UserId | Guid | Id of calling user. |
Event: UserCallOutRecordingConverted
Example payload of Event: UserCallOutRecordingConverted
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallOutRecordingConverted",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"RecordingId": "00000000-0000-0000-0000-000000000000",
"ConversionId": "00000000-0000-0000-0000-000000000000",
"Id": "8617a9f5-ab05-4f0a-a8f5-9f9e7a0ea968",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Outgoing call from user, recording converted
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
ConversionId | Guid | ConversionId |
OrganizationId | Guid | Id of related organization. |
RecordingId | Guid | RecordingId |
UserId | Guid | UserId for the user who made the callout |
Event: UserCallPublicityChanged
Example payload of Event: UserCallPublicityChanged
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallPublicityChanged",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"CallEventId": "00000000-0000-0000-0000-000000000000",
"Publicity": "Undefined",
"PreviousPublicity": "Undefined",
"Id": "605eba8d-6e3e-42b4-aa38-745cda78e2fd",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
User Direct Call publicity changed.
Property name | Value type | Description |
---|---|---|
CallEventId | Guid | Specific CallEvent.Id that changed |
CallId | Guid | Call id (entire call chain) |
OrganizationId | Guid | Organization the user belongs to |
PreviousPublicity | CallPublicityCategory | Previous publicity |
Publicity | CallPublicityCategory | The NEW publicity |
UserId | Guid | User that the call belongs to |
Event: UserCallRecorded
Example payload of Event: UserCallRecorded
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallRecorded",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"TargetNumber": "+123457890123",
"RecordedFilePath": "Example RecordedFilePath",
"Publicity": 0,
"Id": "2d7ae22a-1549-4fcd-9491-5704b065a432",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Outgoing or incoming call for user recorded
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
Publicity | CallEventPublicityCategory | The publicity of user's direct calls |
RecordedFilePath | string | Path to the recorded file |
TargetNumber | string | Original called number. |
UserId | Guid | Id of calling user. |
Event: UserCallTranscribed
Example payload of Event: UserCallTranscribed
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserCallTranscribed",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"TranscriptId": "00000000-0000-0000-0000-000000000000",
"RecordingId": "00000000-0000-0000-0000-000000000000",
"DurationMillis": 0,
"TranscribeRecordingType": "Unknown",
"Id": "cdc66c21-4ffd-4424-b2ad-a68745a66c88",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Transcript creted for direct user call (incoming, outgoing or voice mail).
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
DurationMillis | int | Duration of the transcript in milliseconds |
OrganizationId | Guid | Id of related organization. |
RecordingId | Guid | Id of the original recording |
TranscribeRecordingType | String | Original recording type. UserIncoming/UserOutgoing/VoiceMailRecording |
TranscriptId | Guid | Id of generated transcript |
UserId | Guid | Id of calling user. |
Event: UserConfigurationSetNextCallOut
Example payload of Event: UserConfigurationSetNextCallOut
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserConfigurationSetNextCallOut",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"MessageTTLSeconds": 30,
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"TargetNumber": "+123457890123",
"CallBackId": null,
"CallListId": null,
"QueueId": null,
"ServiceRecord": false,
"AllowUserRecord": false,
"ShowUIControl": false,
"CLI": "Example CLI",
"TimeToLive": 0,
"PersistentRequest": false,
"PrePromptPath": "Example PrePromptPath",
"Id": "c04e86bf-467e-40d2-9ca3-832b53179154",
"Timestamp": "2020-01-01T12:00:00Z"
}
Event produced via the API, intended towards call routing core. Indicates that the user request their outgoing calls to use certain callback list or service queue specific behaviour, and possibly specifying CLI
Property name | Value type | Description |
---|---|---|
AllowUserRecord | Boolean | Allow user personal recording |
CallBackId | Guid? | Optional: CallBack Id for the upcoming call out |
CallListId | Guid? | Optional: Id of the CallList for the upcoming call out |
CLI | string | CLI = caller number to use, should be a known number for route (beneuser) |
OrganizationId | Guid | Id of related organization. |
PersistentRequest | bool | If the request is persistent, it will be valid until it is changed or TimeToLive expires |
PrePromptPath | string | Prompt for letting the target (and agent too) to know that the call is recorded |
QueueId | Guid? | Optional: Id of the service queue for the upcoming call out |
RequestId | Guid | For correlating responses. |
ServiceRecord | Boolean | Do service queue or callback list recording |
ShowUIControl | Boolean | If user can stop the recording in UI |
TargetNumber | string | Target number for the upcoming call out |
TimeToLive | int | How long will this request be valid. |
UserId | Guid | Id of target user. |
Event: UserConfigurationSetNextCallOutRaw
Example payload of Event: UserConfigurationSetNextCallOutRaw
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserConfigurationSetNextCallOutRaw",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"MessageTTLSeconds": 30,
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"TargetNumber": "+123457890123",
"CallBackId": null,
"CallListId": null,
"QueueId": null,
"CLI": "Example CLI",
"TimeToLive": 0,
"PersistentRequest": false,
"Id": "bd4c2699-74d2-4425-b5f1-3b36ed31ac0b",
"Timestamp": "2020-01-01T12:00:00Z"
}
Event produced via the API, intended towards call routing core. Indicates that the user request their outgoing calls to use certain callback list or service queue specific behaviour, and possibly specifying CLI
Property name | Value type | Description |
---|---|---|
CallBackId | Guid? | Optional: CallBack Id for the upcoming call out |
CallListId | Guid? | Optional: Id of the CallList for the upcoming call out |
CLI | string | Optional: CLI (CallAs) for the call. If provided overrides possible Queue/CallList configuration for CLI |
OrganizationId | Guid | Id of related organization. |
PersistentRequest | bool | If the request is persistent, it will be valid until it is changed or TimeToLive expires |
QueueId | Guid? | Optional: Id of the service queue for the upcoming call out |
RequestId | Guid | For correlating responses. |
TargetNumber | string | Target number for the upcoming call out |
TimeToLive | int | How long will this request be valid. |
UserId | Guid | Id of target user. |
Event: UserQueueAttached
Example payload of Event: UserQueueAttached
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserQueueAttached",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"QueueId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"Active": false,
"Priority": null,
"Deleted": false,
"Id": "3617c5ef-98ea-4f67-8b8a-ff57c115be7c",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Event when queue user is added or removed from queue.
Property name | Value type | Description |
---|---|---|
Active | bool | Active in queue |
Deleted | bool | Is detached from queue. |
OrganizationId | Guid | OrganizationId |
Priority | int? | User's priority in queue |
QueueId | Guid | QueueId |
UserId | Guid | UserId |
Event: UserSetting
Example payload of Event: UserSetting
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserSetting",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Keyword": "Example Keyword",
"Value": "Example Value",
"Values": null,
"AllowedValues": null,
"Deleted": false,
"Level": "Undefined",
"Id": "f2a76dfa-10ae-451f-b95a-20a53aed33b6",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
User setting changed.
Property name | Value type | Description |
---|---|---|
AllowedValues | Dictionary<string, string> | Setting allowed values. |
Deleted | bool | Is setting deleted. |
Keyword | string | Setting keyword |
Level | UserSettingLevelEnum | Setting level for authorization |
OrganizationId | Guid | Id of related organization |
UserId | Guid | Id of related user |
Value | string | Setting value |
Values | Dictionary<string, string> | Key/Value setting values |
Event: UserStatus
Example payload of Event: UserStatus
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserStatus",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"MessageTTLSeconds": 60,
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"CanBeAllocatedTo": false,
"Talking": false,
"TalkingStatusChanged": null,
"ActiveQueueId": null,
"Available": false,
"Schedule": false,
"Serving": false,
"ServiceTerminals": 0,
"ActiveQueues": 0,
"ParkedCalls": 0,
"WrapUpStart": null,
"WrapUpEnd": null,
"ServingCallback": false,
"FetchMode": false,
"Id": "885348aa-6840-469a-8f20-5d04c32f2f32",
"Timestamp": "2020-01-01T12:00:00Z"
}
UserStatus changed. UserStatus represents users status from queue components view. Contains information about users serving status, such as talking, available and the ultimate “can receive calls” result.
Property name | Value type | Description |
---|---|---|
ActiveQueueId | Guid? | Guid of the service queue the user can be presumed be talking right now |
ActiveQueues | int | Number of active queues |
Available | bool | If AVA status is "available", typically when not "DND". |
CanBeAllocatedTo | bool | If it is possible to allocate a call to the user. This is a composite value from several status items, "best guess". |
FetchMode | bool | User is in FetchMode, no automatic allocation from ServiceQueues |
OrganizationId | Guid | Id of the related organization. |
ParkedCalls | int | Number of parked calls |
Schedule | bool | If AVA availability code is not OffWork |
ServiceTerminals | int | Number of active terminals |
Serving | bool | User is serving in queues |
ServingCallback | bool | User is serving in callback list "queues" |
Talking | bool | If the user is having a call right now. Incoming and outgoing calls are considered as active calls even before call is connected to user |
TalkingStatusChanged | DateTime? | Last time the "Talking" status changed |
UserId | Guid | Id of the user. |
WrapUpStart | DateTime? | If wrap up time is active then the start time, otherwise null |
WrapUpEnd | DateTime? | If wrap up time is active then the end time, otherwise null |
Event: UserSupervisionStatus
Example payload of Event: UserSupervisionStatus
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserSupervisionStatus",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"TargetUserId": "00000000-0000-0000-0000-000000000000",
"TargetUserName": "Example TargetUserName",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"SupervisorUserId": "00000000-0000-0000-0000-000000000000",
"SupervisorUserName": "Example SupervisorUserName",
"QueueName": "Example QueueName",
"QueueId": null,
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"SupervisorLegId": "Example SupervisorLegId",
"State": 0,
"Id": "52c1670c-9bd9-44a0-8d85-73e1967a66e6",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
This is emitted when supervisor status relating to a call changed.
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of of the supervised call. |
LegId | string | LegId of of the supervised call. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid? | Id of the service queue |
QueueName | string | Name of the service queue |
State | SupervisionState | Supervision state relating to the call. |
SupervisorLegId | string | Optional LegId of of the supervisor incoming call. |
SupervisorUserId | Guid | Id of the supervisor. |
SupervisorUserName | string | User supervising. |
TargetUserId | Guid | Id of target user. |
TargetUserName | string | User being supervised. |
Event: UserVoiceMailRecordingConverted
Example payload of Event: UserVoiceMailRecordingConverted
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserVoiceMailRecordingConverted",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"RecordingId": "00000000-0000-0000-0000-000000000000",
"ConversionId": "00000000-0000-0000-0000-000000000000",
"Id": "0d93f25f-442b-4d31-976b-95d3d97e5a4d",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming direct call to user, recording converted
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
ConversionId | Guid | ConversionId |
OrganizationId | Guid | Id of related organization. |
RecordingId | Guid | RecordingId |
UserId | Guid | UserId |
Event: UserWrapUpEnabled
Example payload of Event: UserWrapUpEnabled
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserWrapUpEnabled",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"MaxWrapUpDurationSec": 0,
"Id": "46320ec1-c1b0-4eff-ae40-2be82fb3e11e",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Event emitted after a service call connects to indicate that wrap-up time is enabled for the call. This is used by clients supporting wrap-up functionality to indicate to the end user that wrap-up time is in progress after the call completes.
This event is followed by UserWrapUpStarted and UserWrapUpTerminated events.
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
MaxWrapUpDurationSec | int | Max wrap-up duration, seconds |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of target user. |
UserId | Guid | Id of target user. |
Event: UserWrapUpStarted
Example payload of Event: UserWrapUpStarted
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserWrapUpStarted",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"MaxWrapUpDurationSec": 0,
"Id": "e4e9c681-7580-4af1-bfab-3c43d40d045f",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Event emitted after a call with wrap-up functionality enabled disconnects and thus wrap-up time starts. It is relayed to supporting clients to indicate that wrap-up is ongoing and no calls are allocated during that time.
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
MaxWrapUpDurationSec | int | Max wrap-up duration, seconds |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Queue Id |
UserId | Guid | Id of target user. |
Event: UserWrapUpTerminated
Example payload of Event: UserWrapUpTerminated
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "UserWrapUpTerminated",
"EntityType": "User",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"QueueId": "00000000-0000-0000-0000-000000000000",
"Reason": "Example Reason",
"ElapsedTimeSec": 0,
"Id": "c71d9e41-44c8-4434-af11-d10333fcba35",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Emitted after wrap-up time for given call ends. It is emitted both when the maximum allowed time is up, and when an explicit termination request has been handled by the backend.
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
ElapsedTimeSec | int | How long the wrap-up time was on |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Queue Id |
Reason | string | Reason for termination: e.g "manual" or "timer" |
UserId | Guid | Id of target user. |
Queue
Event: QueueAttachedUsers
Example payload of Event: QueueAttachedUsers
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueAttachedUsers",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"MessageTTLSeconds": 120,
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"AttachedUsers": null,
"Id": "28232e59-a5d3-4241-873e-2d6bba6d083d",
"Timestamp": "2020-01-01T12:00:00Z"
}
Event sent periodically by Controller if the status/list of attached users to the queue has changed since the last event.
Property name | Value type | Description |
---|---|---|
AttachedUsers | List<QueueAttachedUser> | List of the attached users |
OrganizationId | Guid | Id of the related organization. |
QueueId | Guid | Id of the service queue. |
Event: QueueCallBlockingPromptStarted
Example payload of Event: QueueCallBlockingPromptStarted
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallBlockingPromptStarted",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"TechQueueId": null,
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"PlayApplet": "Example PlayApplet",
"Reason": "Example Reason",
"PromptDetail": "Example PromptDetail",
"Id": "bfb9a2b2-dc28-4ff9-90b2-38b0ba6976a8",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Blocking prompt started. Current target is service or technical queue.
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
PlayApplet | string | Current playing Applet name. |
PromptDetail | string | Prompt usage or id, or SAY: when using say command. E.g. "PRO_Enter" |
QueueId | Guid | Id of the last service queue the call has visited, or if none then the latest technical queue. |
Reason | string | Reason for playing the prompt: e.g "MandatoryEnter" |
TechQueueId | Guid? | Technical queue id doing the prompt playing, might be different from QueueId. |
Event: QueueCallInArrived
Example payload of Event: QueueCallInArrived
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInArrived",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"QueueNumber": "+123457890123",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Id": "27780971-228f-402c-b8e5-a58bbd958f8f",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call was accepted into service queue.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of allocating service queue. |
QueueName | string | Name of allocating service queue. |
QueueNumber | string | Number of allocating service queue |
TargetNumber | string | Original called number |
Event: QueueCallInCallbackCreated
Example payload of Event: QueueCallInCallbackCreated
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInCallbackCreated",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"QueueId": "00000000-0000-0000-0000-000000000000",
"CallBackId": "00000000-0000-0000-0000-000000000000",
"CallListId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"CallId": null,
"LegId": "Example LegId",
"RecordingId": null,
"ContactNumber": "+123457890123",
"TargetNumber": "+123457890123",
"ContactMessage": "Example ContactMessage",
"CreationTime": "0001-01-01T00:00:00",
"Id": "9d45b93e-d266-4cb7-8283-a2df024b25e2",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Produced when a callback request is created (by Controller).
Property name | Value type | Description |
---|---|---|
CallBackId | Guid | CallBack Id this event relates to. |
CallId | Guid? | The id of the original call that prompted the creation of this request |
CallListId | Guid | Id of the CallList for this CallBack |
ContactMessage | string | ContactMessage, e.g configured in service queue |
ContactNumber | string | Contact number that is supposed to be called to |
CreationTime | DateTime | When the request was initially created |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of the queue the callback is originating from |
RecordingId | Guid? | Optional RecordingId if one exists |
TargetNumber | string | Original target number that was called |
Event: QueueCallInComing
Example payload of Event: QueueCallInComing
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInComing",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"QueueNumber": "+123457890123",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Id": "44543c33-bdf3-4b99-9c0c-a6aa2b1e1a31",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
New incoming call to service or technical queue entered Controller.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number |
CallId | Guid | Id of core call event relates to |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization |
QueueId | Guid | Id of service queue |
QueueName | string | Name of target service or technical queue |
QueueNumber | string | Number of target service or technical queue |
TargetNumber | string | Original called number |
Event: QueueCallInDisconnected
Example payload of Event: QueueCallInDisconnected
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInDisconnected",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"Reason": "Example Reason",
"TechQueueId": null,
"TechReason": "Example TechReason",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Id": "d5635522-9a97-49a3-9b79-333059e30c0b",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call was disconnected, the current owner (original target might have been e.g. agent) is service or technical queue.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization |
QueueId | Guid | Id of the last service queue the call has visited, or if none then the latest technical queue. |
QueueName | string | Name of last service queue the call has visited. |
Reason | string | Reason for the disconnect. 'remote' or 'local' |
TargetNumber | string | Original called number |
TechQueueId | Guid? | Id of then current technical queue, may be different to the service queue. |
TechReason | string | Informative technical local reason for the disconnect. E.g "busy_on_busy", "ivr_menu_failure" etc. |
Event: QueueCallInHoldEnd
Example payload of Event: QueueCallInHoldEnd
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInHoldEnd",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Id": "bb0ebc2f-c031-4dce-b2c2-41918a033e5c",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Notification indicating that the queue's incoming call is off hold.
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of the service queue the call leg event relates to. |
UserId | Guid | Id of calling user. |
Event: QueueCallInHoldStart
Example payload of Event: QueueCallInHoldStart
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInHoldStart",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Id": "21c4ca61-ed8c-4676-aa10-a6db71081883",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Notification indicating that the queue's incoming call is on hold.
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of the service queue the call leg event relates to. |
UserId | Guid | Id of calling user. |
Event: QueueCallInIvrSelection
Example payload of Event: QueueCallInIvrSelection
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInIvrSelection",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"EnteredValue": "Example EnteredValue",
"DetailedReason": "Example DetailedReason",
"Id": "7b14346d-440a-469f-bd30-077008372721",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Event send when caller selects an option in IVR
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number |
CallId | Guid | Id of core call event relates to. |
DetailedReason | string | Optional more detailed reason if any |
EnteredValue | string | The reason for overflow |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Queue Id |
TargetNumber | string | Original called number |
Event: QueueCallInOverflow
Example payload of Event: QueueCallInOverflow
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInOverflow",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"TechQueueId": "00000000-0000-0000-0000-000000000000",
"TechQueueName": "Example TechQueueName",
"OverflowApplet": "Example OverflowApplet",
"TechSource": "Example TechSource",
"TechNumber": "+123457890123",
"TechEvent": "Example TechEvent",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"OverflowReason": "Example OverflowReason",
"OverflowType": "Example OverflowType",
"Id": "173a26cc-66b1-4ddc-ae61-6bc9923c1fca",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call. Current handler is service or technical queue. This is generic event sent when then call overflows to the next routing point.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
OverflowApplet | string | Technical name of the current applet. |
OverflowReason | string | Overflow reason description, values like: NoAvailableProviders, QueueFull, UserActivelyDeclined ... |
OverflowType | string | Overflow type, large set values like: AdHoc_1, ServiceOpen, QueueHandler, QueueOverflowDefault, UserTransferAll, ActPreEnter, TerminationHandling |
QueueId | Guid | Id of the last service queue the call has visited, or if none then the latest technical queue. |
QueueName | string | Name of the service queue. |
TargetNumber | string | Original called number |
TechEvent | string | Technical event name. |
TechNumber | string | Technical source number if any. |
TechQueueId | Guid | Id of then current technical queue, may be different to the service queue. |
TechQueueName | string | Name of the current technical queue. |
TechSource | string | Technical source type. |
Event: QueueCallInRecording
Example payload of Event: QueueCallInRecording
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInRecording",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"AllocatedUserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Reason": "Example Reason",
"Id": "0dad9d78-6c95-4ac5-86ed-da8c87b030dd",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call. Recording started.
Property name | Value type | Description |
---|---|---|
AllocatedUserId | Guid | The UseId of the agent |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of service queue responsible for recording. |
Reason | string | Reason for the recording, "servicequeue" |
Event: QueueCallInScheduleClosed
Example payload of Event: QueueCallInScheduleClosed
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInScheduleClosed",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"OverflowApplet": "Example OverflowApplet",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"OverflowReason": "Example OverflowReason",
"DetailedReason": "Example DetailedReason",
"Id": "be55ddc4-7f2f-4547-b2e5-c5c9dc35581d",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Queue closed by ServiceOpen, AdHoc_ etc. schedules
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number |
CallId | Guid | Id of core call event relates to. |
DetailedReason | string | Optional more detailed reason if any |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
OverflowApplet | string | Technical name of the current applet. |
OverflowReason | string | The reason for overflow |
QueueId | Guid | Queue Id |
TargetNumber | string | Original called number |
Event: QueueCallInSmartRoutingResult
Example payload of Event: QueueCallInSmartRoutingResult
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInSmartRoutingResult",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Result": "Example Result",
"DetailedReason": "Example DetailedReason",
"Targets": null,
"Priority": null,
"ExtraPriority": null,
"ExtraData": null,
"Id": "63105264-cb27-49e7-84fe-006d0ad56b56",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call. External SmartRouting query results.
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
DetailedReason | string | Detailed reason for error cases. <empty>, CONVERSION_ERROR or reason string from the remote service |
ExtraData | Dictionary<string, object> | Optional SmartRouting response extra data as dictionary |
ExtraPriority | int? | SmartRouting response ExtraPriority |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
Priority | int? | SmartRouting response Priority |
QueueId | Guid | Id of service queue |
Result | string | Result for the SmartRouting operation. OK, NOT_FOUND, FAILED |
Targets | List<SmartRoutingTarget> | SmartRouting response targets |
Event: QueueCallInTransferCancelled
Example payload of Event: QueueCallInTransferCancelled
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInTransferCancelled",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"TechQueueId": "00000000-0000-0000-0000-000000000000",
"TechQueueName": "Example TechQueueName",
"TransferApplet": "Example TransferApplet",
"TechSource": "Example TechSource",
"Reason": "Example Reason",
"DetailedReason": "Example DetailedReason",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Id": "d4cad85e-a50f-47e3-8663-892c5d06b57b",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call. Current target is service or technical queue. Transferring the call forward was cancelled.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
DetailedReason | string | Detailed cancellation reason. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization |
QueueId | Guid | Id of transferring service queue. |
QueueName | string | Name of transferring service queue. |
Reason | string | Cancellation reason. |
TargetNumber | string | Original called number. |
TechQueueId | Guid | Id of current technical queue, may differ from QueueId. |
TechQueueName | string | Name of current transferring technical queue. |
TechSource | string | Technical source type. |
TransferApplet | string | Current transferring Applet name. |
Event: QueueCallInTransferConnected
Example payload of Event: QueueCallInTransferConnected
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInTransferConnected",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"ConnectedTarget": "Example ConnectedTarget",
"TechQueueId": "00000000-0000-0000-0000-000000000000",
"TechQueueName": "Example TechQueueName",
"TransferApplet": "Example TransferApplet",
"TechSource": "Example TechSource",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Id": "a0e20bb4-5662-4e3b-9f1f-96c7cba93669",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call. Current target is service or technical queue. Transferring the call forward was connected.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
ConnectedTarget | string | Transfer target. Guid or phone number. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of transferring queue. |
QueueName | string | Name of transferring service queue |
TargetNumber | string | Original called number. |
TechQueueId | Guid | Id of current technical queue. May differ from QueueId. |
TechQueueName | string | Name of current technical queue. |
TechSource | string | Technical source type. |
TransferApplet | string | Transferring Applet name. |
Event: QueueCallInTransferStarted
Example payload of Event: QueueCallInTransferStarted
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInTransferStarted",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"TransferTarget": "Example TransferTarget",
"TransferSource": "Example TransferSource",
"TechQueueId": "00000000-0000-0000-0000-000000000000",
"TechQueueName": "Example TechQueueName",
"TransferApplet": "Example TransferApplet",
"TechType": "Example TechType",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Id": "a5b44963-cfce-43f6-b54e-3f2fcb7c96db",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call. Current target is service or technical queue. Transferring the call forward was started.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of transferring queue. |
QueueName | string | Name of transferring queue. |
TargetNumber | string | Original called number. |
TechQueueId | Guid | Id of current technical queue. May differ from QueueId. |
TechQueueName | string | Name of current technical queue. |
TechType | string | Technical source type. |
TransferApplet | string | Transferring Applet name. |
TransferSource | string | Transfer source. |
TransferTarget | string | Transfer target. Guid or phone number. |
Event: QueueCallInUserAllocated
Example payload of Event: QueueCallInUserAllocated
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInUserAllocated",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"QueueNumber": "+123457890123",
"UserId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"DetailedReason": "Example DetailedReason",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Id": "8ad90deb-13ea-4d35-9cf0-030963fc87d7",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call. Current target is service or technical queue. Allocated to an agent.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
DetailedReason | string | Optional detailed reason for allocation. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of allocating queue. |
QueueName | string | Name of allocating queue. |
QueueNumber | string | Number of allocating queue. |
TargetNumber | string | Original called number. |
UserId | Guid | Id of allocation target user. |
UserName | string | Username of allocation target user. |
Event: QueueCallInUserCancelled
Example payload of Event: QueueCallInUserCancelled
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInUserCancelled",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"QueueNumber": "+123457890123",
"UserId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"Reason": "Example Reason",
"DetailedReason": "Example DetailedReason",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Id": "7c482524-299b-4187-91a0-1d26924a998c",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call. Current target is service or technical queue. Allocation to agent was cancelled.
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
DetailedReason | string | Detailed cancellation reason. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of allocating queue. |
QueueName | string | Name of allocating service queue. |
QueueNumber | string | Number of allocating service queue. |
Reason | string | Cancellation reason. 'local' or 'remote'. |
TargetNumber | string | Original called number. |
UserId | Guid | Id of cancelling user. |
UserName | string | Username of cancelling user. |
Event: QueueCallInUserConnected
Example payload of Event: QueueCallInUserConnected
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallInUserConnected",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"AgentLegId": "Example AgentLegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"QueueNumber": "+123457890123",
"UserId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"UserNumber": "+123457890123",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Id": "54fc3541-b8ca-4fee-8159-a7a85c981eed",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Incoming call. Current target is service or technical queue. Answered by an agent.
Property name | Value type | Description |
---|---|---|
AgentLegId | string | Id of core call leg event relates to. |
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of allocating queue. |
QueueName | string | Name of allocating service queue. |
QueueNumber | string | Number of allocating service queue. |
TargetNumber | string | Original called number. |
UserId | Guid | Id of connected user. |
UserName | string | Username of connected user. |
UserNumber | string | Connected target number. |
Event: QueueCallTranscribed
Example payload of Event: QueueCallTranscribed
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueCallTranscribed",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"QueueId": "00000000-0000-0000-0000-000000000000",
"AllocatedUserId": null,
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"TranscriptId": "00000000-0000-0000-0000-000000000000",
"RecordingId": "00000000-0000-0000-0000-000000000000",
"DurationMillis": 0,
"TranscribeRecordingType": "Unknown",
"Id": "aed0549f-c963-48fb-adce-57c18b781b34",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Transcript created for incoming or outgoing queue call.
Property name | Value type | Description |
---|---|---|
AllocatedUserId | Guid? | The UserId of the agent |
CallId | Guid | Id of core call event relates to. |
DurationMillis | int | Duration of the transcript in milliseconds |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of service queue responsible for recording. |
RecordingId | Guid | Id of the original recording |
TranscribeRecordingType | String | Original recording type. IncomingQueueCall/OutgoingQueueCall |
TranscriptId | Guid | Id of the created transcript |
Event: QueueChanged
Example payload of Event: QueueChanged
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueChanged",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"TypeId": null,
"TemplateId": null,
"UsePriorities": false,
"CallAgeBonus": null,
"Region": "Example Region",
"Culture": "Example Culture",
"Numbers": null,
"QueueGroups": null,
"Created": false,
"Updated": false,
"Deleted": false,
"Id": "bf722498-a1d0-4eeb-84b6-f29218f34e1d",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Service queue changed message.
Property name | Value type | Description |
---|---|---|
CallAgeBonus | int? | Age bonus applied to incoming calls to the queue. This enables prioritizing calls to specific queues by making them appear "older" than they actually are. The value ranges from 0 to 10k |
Created | bool | Was service queue created. |
Culture | string | Queue culture for localization |
Deleted | bool | Was service queue deleted. |
Numbers | List<string> | Phone numbers attached to the queue |
OrganizationId | Guid | Id of related organization. |
QueueGroups | List<QueueGroup> | List of groups attached to the queue |
QueueId | Guid | Id of service queue. |
QueueName | string | Name of service queue. |
Region | string | Queue region for time zone handling |
TemplateId | Guid? | Used queue template id |
TypeId | int? | Queue type id, technical |
Updated | bool | Was service queue updated. |
UsePriorities | bool | Whether agent priorities are used in the queue when allocating calls |
Event: QueueDailyCallMetrics
Example payload of Event: QueueDailyCallMetrics
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueDailyCallMetrics",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"MessageTTLSeconds": 60,
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"QueueDate": "2020-01-01",
"InboundTotalCalls": 0,
"InboundServiceClosedCalls": 0,
"InboundAnsweredCalls": 0,
"InboundRejectedCalls": 0,
"InboundUserTransfers": 0,
"InboundQueueTransfers": 0,
"InboundAvgWaitTimeSec": 0.0,
"InboundAvgTalkTimeSec": 0.0,
"InboundAvgHoldTimeSec": 0.0,
"InboundServiceLevelPercentage": 0.0,
"OutboundTotalCalls": 0,
"OutboundAnsweredCalls": 0,
"OutboundRejectedCalls": 0,
"OutboundAvgTalkTimeSec": 0,
"OutboundAvgWaitTime": 0,
"Id": "330989da-0200-4300-8abf-ed3b309a5a88",
"Timestamp": "2020-01-01T12:00:00Z"
}
Service queue call metrics, contains various metrics reagrding queue calls from a single date.
Property name | Value type | Description |
---|---|---|
InboundAnsweredCalls | int | Total number of inbound calls that were answered by an agent. |
InboundAvgHoldTimeSec | float | Average hold time for inbound calls in seconds. |
InboundAvgTalkTimeSec | float | Average talk time for inbound calls in seconds. |
InboundAvgWaitTimeSec | float | Average wait time for inbound calls in seconds. Only time when call was allocateable is included (MandatoryEnter message is exluded) |
InboundQueueTransfers | int | Total number of inbound calls that were transferred by the queue. |
InboundRejectedCalls | int | Total number of inbound calls that were rejected by the queue. |
InboundServiceClosedCalls | int | Total number of inbound calls that arrived when queue was closed. |
InboundServiceLevelPercentage | float | Service level percentage for inbound calls, if configured. |
InboundTotalCalls | int | Total number inbound queue calls. |
InboundUserTransfers | int | Total number of inbound calls that were transferred by the user. |
OrganizationId | Guid | Id of related organization. |
OutboundAnsweredCalls | int | Total number of outbound queue calls that were answered by the callee. |
OutboundAvgTalkTimeSec | int | Average talk time for outbound queue calls in seconds. |
OutboundAvgWaitTime | int | Average wait time for outbound calls in seconds. Only answered calls are included. |
OutboundRejectedCalls | int | Total number of outbound queue calls that were not answered by the callee. |
OutboundTotalCalls | int | Total number of outbound queue calls. |
QueueDate | string | Date of the metrics on timezone of the queue in format YYYY-MM-DD. |
QueueId | Guid | Id of service queue. |
QueueName | string | Name of service queue. |
Event: QueueStatus
Example payload of Event: QueueStatus
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueStatus",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"MessageTTLSeconds": 60,
"QueueId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"NbrOfProviders": 0,
"NbrOfRequesters": 0,
"NbrOfServingAgentsEstimate": 0,
"NbrOfAllocated": 0,
"NbrOfConnected": 0,
"NbrOfQueuingRequesters": 0,
"NbrOfNotServedRequesters": 0,
"NbrOfAgentsLongTermAway": 0,
"NbrOfAgentsShortTermAway": 0,
"NbrOfAgentsImmediatelyFree": 0,
"NbrOfAgentsCheckedInQueue": 0,
"NbrOfAgentsOnWrapUp": 0,
"NbrOfAgentsOnFetchMode": 0,
"MaxWaitTime": 0,
"OpenStatus": 0,
"Id": "51bf0a53-8209-48fc-bc64-0726e0d076e4",
"Timestamp": "2020-01-01T12:00:00Z"
}
Service queue status message, contains various counter values. Sent by Controller periodically if the status of the queue has changed since the last event.
Property name | Value type | Description |
---|---|---|
MaxWaitTime | long | Maximum current wait time in queue |
NbrOfAgentsCheckedInQueue | int | Total number agents that are serving in the queue (away or not). |
NbrOfAgentsImmediatelyFree | int | Number agents that are immediately free for service. |
NbrOfAgentsLongTermAway | int | Number agents that are not currently available for service in long term (e.g DND state). |
NbrOfAgentsOnFetchMode | int | Total number agents that are currently in FetchMode (no automatic allocation). |
NbrOfAgentsOnWrapUp | int | Total number agents that are serving in the queue (away or not). |
NbrOfAgentsShortTermAway | int | Number agents that are not currently available for service in short term (e.g. already talking). |
NbrOfAllocated | int | Number of current allocated calls in the queue. |
NbrOfConnected | int | Number of current connected (served by agent) calls in the queue. |
NbrOfNotServedRequesters | int | Number of calls currently not being served by an agent right now |
NbrOfProviders | int | Total number of current providers (agents) in the queue. |
NbrOfQueuingRequesters | int | Number of current queuing calls in the queue |
NbrOfRequesters | int | Total number of current requesters (calls) in the queue. |
NbrOfServingAgentsEstimate | int | Estimated number of current serving agents in the queue. |
OpenStatus | int | Queue open status estimation NA = 0 NoActiveHandler = 1 : There are no active handling endpoints/numbers for the queue. So basically "Closed" NoActiveHandlerUncertain = 2 : There are no active handling endpoints/numbers for the queue. But uncertain due script on some handlers. Closed = 3 : The only active handler is "ServiceClosed". ClosedUncertain = 4 : The only active handler is "ServiceClosed". But uncertain due script on some handlers. Open = 5 : Queue is open. OpenUncertain = 6 : Queue is open. But uncertain due script on some handlers. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of service queue. |
QueueName | string | Name of service queue. |
Event: QueueUserCallInRecordingConverted
Example payload of Event: QueueUserCallInRecordingConverted
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueUserCallInRecordingConverted",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"QueueId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"RecordingId": "00000000-0000-0000-0000-000000000000",
"ConversionId": "00000000-0000-0000-0000-000000000000",
"Id": "21b26413-25b4-41a6-a60a-968c24916910",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Outgoing call from user in the name of a queue, recording converted
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
ConversionId | Guid | ConversionId |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Queue id the callout was made from |
RecordingId | Guid | RecordingId |
UserId | Guid | UserId for the user who made the callout |
Event: QueueUserCallOutConnected
Example payload of Event: QueueUserCallOutConnected
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueUserCallOutConnected",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Id": "af57a05f-3826-4d80-9d1b-9ec8cb683bd4",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Outgoing call in the name of a service queue, initiated by a user is now connected to the user
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of the service queue the call leg event relates to. |
QueueName | string | Name of the queue. |
TargetNumber | string | Original called number. |
UserId | Guid | Id of calling user. |
UserName | string | Username of calling user. |
Event: QueueUserCallOutDisconnected
Example payload of Event: QueueUserCallOutDisconnected
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueUserCallOutDisconnected",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"Reason": "Example Reason",
"TechReason": "Example TechReason",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Id": "f5e0605a-51ac-46b6-b888-89a7474d5fc4",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Outgoing call in the name of a service queue originally initiated by a user is now disconnected from the user
Property name | Value type | Description |
---|---|---|
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of the service queue the call leg event relates to. |
QueueName | string | Name of the queue. |
Reason | string | Reason for the disconnect. 'remote' or 'local' |
TargetNumber | string | Original called number. |
TechReason | string | Technical reason (e.g SIP cause code) for the disconnect. |
UserId | Guid | Id of calling user. |
UserName | string | Username of calling user. |
Event: QueueUserCallOutGoing
Example payload of Event: QueueUserCallOutGoing
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueUserCallOutGoing",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"QueueName": "Example QueueName",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"CallAsNumber": "+123457890123",
"Id": "41123c2b-521b-4a79-9e26-e7b9f3745765",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Outgoing call in the name of a service queue, originally initiated by a user
Property name | Value type | Description |
---|---|---|
CallAsNumber | string | Optional call as number |
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of the service queue the call leg event relates to. |
QueueName | string | Name of the queue. |
TargetNumber | string | Original called number. |
UserId | Guid | Id of calling user. |
UserName | string | Username of calling user. |
Event: QueueUserCallOutHoldEnd
Example payload of Event: QueueUserCallOutHoldEnd
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueUserCallOutHoldEnd",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Id": "3bfe2aae-9eba-4ed4-82a1-c564c9e2ddd1",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of the service queue the call leg event relates to. |
UserId | Guid | Id of calling user. |
Event: QueueUserCallOutHoldStart
Example payload of Event: QueueUserCallOutHoldStart
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueUserCallOutHoldStart",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Id": "faaba4ba-bba0-4bb7-998d-6dd5d450ab85",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of the service queue the call leg event relates to. |
UserId | Guid | Id of calling user. |
Event: QueueUserCallOutRecordingConverted
Example payload of Event: QueueUserCallOutRecordingConverted
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueUserCallOutRecordingConverted",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"QueueId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"RecordingId": "00000000-0000-0000-0000-000000000000",
"ConversionId": "00000000-0000-0000-0000-000000000000",
"Id": "61008af6-13f1-400c-8631-d8b68fe4b314",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Outgoing call from user in the name of a queue, recording converted
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
ConversionId | Guid | ConversionId |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Queue id the callout was made from |
RecordingId | Guid | RecordingId |
UserId | Guid | UserId for the user who made the callout |
Event: QueueUserCallRecorded
Example payload of Event: QueueUserCallRecorded
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "QueueUserCallRecorded",
"EntityType": "Queue",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"QueueId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"TargetNumber": "+123457890123",
"RecordedFilePath": "Example RecordedFilePath",
"Id": "3a0edac4-3725-4590-8510-34a8648ad865",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Outgoing or incoming call for user in the name of a service queue was recorded
Property name | Value type | Description |
---|---|---|
CallId | Guid | Id of core call event relates to. |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid | Id of the service queue the call leg event relates to. |
RecordedFilePath | string | Path to the recorded file |
TargetNumber | string | Original called number. |
UserId | Guid | Id of calling user. |
Misc: QueueAttachedUser
Example payload of Misc: QueueAttachedUser
{
"UserId": "00000000-0000-0000-0000-000000000000",
"Active": false,
"Priority": 0
}
Property name | Value type | Description |
---|---|---|
Active | bool | If the user is active in queue |
Priority | int | User's priority in queue |
UserId | Guid | Attached UserId |
Misc: QueueGroup
Example payload of Misc: QueueGroup
{
"Id": null,
"Name": "Example Name",
"Description": "Example Description"
}
DTO for QueueGroup
Property name | Value type | Description |
---|---|---|
Description | string | Description of the group |
Id | Guid? | Id of the group |
Name | string | Name of the group |
CallList
Event: CallbackCallInRecordingConverted
Example payload of Event: CallbackCallInRecordingConverted
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "CallbackCallInRecordingConverted",
"EntityType": "CallList",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallListId": "00000000-0000-0000-0000-000000000000",
"CallBackId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"RecordingId": "00000000-0000-0000-0000-000000000000",
"ConversionId": "00000000-0000-0000-0000-000000000000",
"Id": "37005a11-5972-49a5-b678-000f37bf9c89",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Property name | Value type | Description |
---|---|---|
CallBackId | Guid | CallBack Id this event relates to. |
CallId | Guid | Id of core call event relates to. |
CallListId | Guid | Id of the CallList for this CallBack |
ConversionId | Guid | ConversionId |
OrganizationId | Guid | Id of related organization. |
RecordingId | Guid | RecordingId |
Event: CallbackCallTranscribed
Example payload of Event: CallbackCallTranscribed
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "CallbackCallTranscribed",
"EntityType": "CallList",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"CallListId": "00000000-0000-0000-0000-000000000000",
"CallBackId": "00000000-0000-0000-0000-000000000000",
"UserId": null,
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"TranscriptId": "00000000-0000-0000-0000-000000000000",
"RecordingId": "00000000-0000-0000-0000-000000000000",
"DurationMillis": 0,
"TranscribeRecordingType": "Unknown",
"Id": "c2a53a6c-dff4-4753-87ca-bb91827f3b7e",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Transcript created for callback request related call. Applies for both message left by the caller (IncomingCallListCall) and the callback call made by agent to the original caller (OutgoingCallListCall).
Property name | Value type | Description |
---|---|---|
CallBackId | Guid | Id of callback request responsible for recording. |
CallId | Guid | Id of core call event relates to. |
CallListId | Guid | Id of callback list responsible for recording. |
DurationMillis | int | Duration of the transcript in milliseconds |
OrganizationId | Guid | Id of related organization. |
RecordingId | Guid | Id of the original recording |
TranscribeRecordingType | String | Original recording type. IncomingCallListCall/OutgoingCallListCall |
TranscriptId | Guid | Id of the created transcript |
UserId | Guid? | Optional connected UserId of the agent |
Event: CallbackChanged
Example payload of Event: CallbackChanged
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "CallbackChanged",
"EntityType": "CallList",
"EntityId": "00000000-0000-0000-0000-000000000000",
"MessageTTLSeconds": 120,
"CallBackId": "00000000-0000-0000-0000-000000000000",
"CallListId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Modified": "0001-01-01T00:00:00",
"AssignedUserId": null,
"LastAttemptUserId": null,
"LastModifiedUserId": null,
"LastAttemptTypeId": null,
"ContactName": "Example ContactName",
"ContactNumber": "+123457890123",
"ContactMessage": "Example ContactMessage",
"Note": "Example Note",
"QueueId": null,
"ChannelIn": "Example ChannelIn",
"CreationTime": "0001-01-01T00:00:00",
"Created": false,
"IsClosed": false,
"RecordingId": null,
"TypeId": 0,
"DueDate": null,
"CallId": null,
"TranscriptId": null,
"ClassificationId": null,
"ExpiryDate": null,
"LastAttemptTimestamp": null,
"LastAttemptNote": "Example LastAttemptNote",
"CalculatedPriority": "Example CalculatedPriority",
"NotBefore": null,
"CallbackAttempts": null,
"CallbackExtras": null,
"CallbackRelatedItems": null,
"Id": "b49743f7-9f71-40d4-b079-76d246bd05b4",
"Timestamp": "2020-01-01T12:00:00Z"
}
Produced when a callback request changes (is created, updated, closed etc).
Property name | Value type | Description |
---|---|---|
AssignedUserId | Guid? | Id of user the callback is currently assigned |
CalculatedPriority | string | Calculated priority |
CallbackAttempts | List<CallbackAttempt> | History of all handling attempts |
CallbackExtras | List<CallbackExtra> | Extra name-value fields |
CallBackId | Guid | CallBack Id this event relates to. |
CallbackRelatedItems | List<CallbackRelatedItem> | List of cases related to this case |
CallId | Guid? | The id of the original call that prompted the creation of this request |
CallListId | Guid | Id of the CallList for this CallBack |
ChannelIn | string | Name of the channel (usually service pool) the request came in through |
ClassificationId | Guid? | If the case has been classified, id of the classification entry |
ContactMessage | string | Any message left by the contact (usually empty) |
ContactName | string | Contact name (usually empty) |
ContactNumber | string | Contact number that is supposed to be called |
Created | bool | Whether the request was created, or updated if not created |
CreationTime | DateTime | WHen the request was initially created |
DueDate | DateTime? | When the case is due to be handled |
ExpiryDate | DateTime? | The date when the case automatically expires if not closed before it |
IsClosed | bool | Whether the request is closed |
LastAttemptNote | string | Note on the latest handling attempt |
LastAttemptTimestamp | DateTime? | Timestamp of the latest handling attempt |
LastAttemptTypeId | int? | Id of the last attempt's type |
LastAttemptUserId | Guid? | Id of user that made the last attempt |
LastModifiedUserId | Guid? | Id of user that made the last change, null if new or admin |
Modified | DateTime | Modified date |
NotBefore | DateTime? | Date before which the case should not be handled |
Note | string | Internal notes on the case |
OrganizationId | Guid | Id of related organization. |
QueueId | Guid? | Guid of the responsible service queue or IVR queue, if any came in through |
RecordingId | Guid? | Id of the corresponding audio recording (if any) |
TranscriptId | Guid? | Id of the transcript created from the recording |
TypeId | short | Type identifier. 1 - Explicit callback request 2 - Overflown call 3 - Call list item created manually |
Event: CallbackListStatus
Example payload of Event: CallbackListStatus
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "CallbackListStatus",
"EntityType": "CallList",
"EntityId": "00000000-0000-0000-0000-000000000000",
"MessageTTLSeconds": 600,
"CallListId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"IsAutoAllocate": false,
"TotalOpenRequests": 0,
"TotalFreeForAllocation": 0,
"TotalAssigned": 0,
"TotalHidingNotBefore": 0,
"NextHourRevealedNotBefore": 0,
"TotalOverDueDate": 0,
"NextHourOverDueDate": 0,
"TotalActiveAgents": 0,
"TotalAutoAllocateAgents": 0,
"TotalServingAgents": 0,
"TotalServingAutoAllocateAgents": 0,
"ExpiresIn24h": 0,
"Id": "2d164635-32f8-46d5-a54c-a6006f5147eb",
"Timestamp": "2020-01-01T12:00:00Z"
}
Emitted with the latest status of each call list, if the status changed. Status changes are evaluated every 15 seconds. Can be used to construct alerts based on open items, automagically assign more agents to the lists or just simple dashboards.
Property name | Value type | Description |
---|---|---|
CallListId | Guid | Corresponding list id |
ExpiresIn24h | int | Number of requests that will expire today |
IsAutoAllocate | bool | If the CallbackList is AutoAllocate list |
NextHourOverDueDate | int | Total number of requests that will be past DueDate during next hour |
NextHourRevealedNotBefore | int | Total number of requests that will be allocable during next hour |
OrganizationId | Guid | Id of related organization. |
TotalActiveAgents | int | Total "Active" ("checked" in the list, not necessary serving) agents in the queue. |
TotalAssigned | int | Total number of requests that are currently assigned to an agent |
TotalAutoAllocateAgents | int | Total number of Agents "Active" and "Serving_CallbackLists" |
TotalFreeForAllocation | int | Total number of requests that can be allocated |
TotalHidingNotBefore | int | Total number of requests that are not allocable due NotBefore has not elapsed |
TotalOpenRequests | int | Total number open unhandled requests |
TotalOverDueDate | int | Total number of requests that are already over DueDate |
TotalServingAgents | int | Total number of agents having "Serving_CallbackLists" = 1 |
TotalServingAutoAllocateAgents | int | Total immediately AutoAllocable agents. Agent must be "Active" and "Serving_CallbackLists", and the list must be "IsAutoAllocate" NOTE: Does not (at least YET) consider if agent already has an active allocated request, so a bit duplicate of TotalAutoAllocateAgents for now |
Event: CallbackUserCallOutConnected
Example payload of Event: CallbackUserCallOutConnected
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "CallbackUserCallOutConnected",
"EntityType": "CallList",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallBackId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"CallListId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"Id": "1216bee7-7a35-4fcf-a858-2d8b420196bb",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Outgoing callback list call initiated by a user is connected to the user
Property name | Value type | Description |
---|---|---|
CallBackId | Guid | CallBack Id this event relates to. |
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
CallListId | Guid | Id of the CallList for this CallBack |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
TargetNumber | string | Original called number. |
UserId | Guid | Id of calling user. |
UserName | string | Username of calling user. |
Event: CallbackUserCallOutDisconnected
Outgoing callback list call initiated by a user is disconnected from the user
Property name | Value type | Description |
---|---|---|
CallBackId | Guid | CallBack Id this event relates to. |
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
CallListId | Guid | Id of the CallList for this CallBack |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
Reason | string | Reason for the disconnect. 'remote' or 'local' |
TargetNumber | string | Original called number. |
TechReason | string | Technical reason (e.g SIP cause code) for the disconnect. |
UserId | Guid | Id of calling user. |
UserName | string | Username of calling user. |
Event: CallbackUserCallOutGoing
Example payload of Event: CallbackUserCallOutGoing
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "CallbackUserCallOutGoing",
"EntityType": "CallList",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallBackId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"CallListId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserName": "user.name@example.com",
"CallerNumber": "+123457890123",
"TargetNumber": "+123457890123",
"CallAsNumber": "+123457890123",
"Id": "0103bb36-9822-4c8e-bcaa-8fbc48f73c8f",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Outgoing callback list call initiated by a user
Property name | Value type | Description |
---|---|---|
CallAsNumber | string | Optional call as number |
CallBackId | Guid | CallBack Id this event relates to. |
CallerNumber | string | Original caller number. |
CallId | Guid | Id of core call event relates to. |
CallListId | Guid | Id of the CallList for this CallBack |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
TargetNumber | string | Original called number. |
UserId | Guid | Id of calling user. |
UserName | string | Username of calling user. |
Event: CallbackUserCallOutHoldEnd
Example payload of Event: CallbackUserCallOutHoldEnd
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "CallbackUserCallOutHoldEnd",
"EntityType": "CallList",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallBackId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"CallListId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Id": "c5c45b0f-5bca-45b7-bbe9-3f5366dbd131",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Notification indicating that the user's outgoing call is off hold.
Property name | Value type | Description |
---|---|---|
CallBackId | Guid | CallBack Id this event relates to. |
CallId | Guid | Id of core call event relates to. |
CallListId | Guid | Id of the CallList for this CallBack |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
UserId | Guid | Id of calling user. |
Event: CallbackUserCallOutHoldStart
Example payload of Event: CallbackUserCallOutHoldStart
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "CallbackUserCallOutHoldStart",
"EntityType": "CallList",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallBackId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"CallListId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"Id": "81781907-6a71-4c02-bdf2-b3ede2d1a1e1",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Notification indicating that the user's outgoing call is on hold.
Property name | Value type | Description |
---|---|---|
CallBackId | Guid | CallBack Id this event relates to. |
CallId | Guid | Id of core call event relates to. |
CallListId | Guid | Id of the CallList for this CallBack |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
UserId | Guid | Id of calling user. |
Event: CallbackUserCallOutRecordingConverted
Example payload of Event: CallbackUserCallOutRecordingConverted
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "CallbackUserCallOutRecordingConverted",
"EntityType": "CallList",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallListId": "00000000-0000-0000-0000-000000000000",
"CallBackId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"UserId": "00000000-0000-0000-0000-000000000000",
"RecordingId": "00000000-0000-0000-0000-000000000000",
"ConversionId": "00000000-0000-0000-0000-000000000000",
"Id": "39c2afb7-b79b-465b-9fce-579ad21dbc1e",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Outgoing call from user in the name of a callback list, recording converted
Property name | Value type | Description |
---|---|---|
CallBackId | Guid | CallBack Id this event relates to. |
CallId | Guid | Id of core call event relates to. |
CallListId | Guid | Id of the CallList for this CallBack |
ConversionId | Guid | ConversionId |
OrganizationId | Guid | Id of related organization. |
RecordingId | Guid | RecordingId |
UserId | Guid | UserId for the user who made the callout |
Event: CallbackUserCallRecorded
Example payload of Event: CallbackUserCallRecorded
{
"RootEntityType": "Organization",
"RootEntityId": "00000000-0000-0000-0000-000000000000",
"EventType": "CallbackUserCallRecorded",
"EntityType": "CallList",
"EntityId": "00000000-0000-0000-0000-000000000000",
"CallBackId": "00000000-0000-0000-0000-000000000000",
"CallId": "00000000-0000-0000-0000-000000000000",
"LegId": "Example LegId",
"UserId": "00000000-0000-0000-0000-000000000000",
"OrganizationId": "00000000-0000-0000-0000-000000000000",
"CallListId": "00000000-0000-0000-0000-000000000000",
"TargetNumber": "+123457890123",
"RecordedFilePath": "Example RecordedFilePath",
"Id": "9fae1da4-825a-4c26-81ed-f0273fd930db",
"Timestamp": "2020-01-01T12:00:00Z",
"MessageTTLSeconds": -1
}
Outgoing call for user in the name of a callback list recorded
Property name | Value type | Description |
---|---|---|
CallBackId | Guid | CallBack Id this event relates to. |
CallId | Guid | Id of core call event relates to. |
CallListId | Guid | Id of the CallList for this CallBack |
LegId | string | Id of core call leg event relates to. |
OrganizationId | Guid | Id of related organization. |
RecordedFilePath | string | Path to the recorded file |
TargetNumber | string | Original called number. |
UserId | Guid | Id of calling user. |
Misc: CallbackAttempt
Example payload of Misc: CallbackAttempt
{
"Id": "00000000-0000-0000-0000-000000000000",
"UserId": null,
"Timestamp": "2020-01-01T12:00:00Z",
"CallbackAttemptTypeId": null,
"Note": "Example Note",
"RecordingId": null,
"CallId": null
}
Helper for CallbackAttempt transportation
Property name | Value type | Description |
---|---|---|
CallbackAttemptTypeId | int? | Attempt result type |
CallId | Guid? | Call id in a case there is a call associated with the attempt |
Id | Guid | Attempt id |
Note | string | User-provided note |
RecordingId | Guid? | Recording id in the case the attempt was recorded |
Timestamp | DateTime? | Attempt timestamp |
UserId | Guid? | UserId attempt relates to |
Misc: CallbackExtra
Example payload of Misc: CallbackExtra
{
"Id": 0,
"Name": "Example Name",
"Value": "Example Value"
}
Helper for CallBackExtraData transportation
Property name | Value type | Description |
---|---|---|
Id | int | Property name |
Name | string | Property name |
Value | string | Property value |
Misc: CallbackRelatedItem
Example payload of Misc: CallbackRelatedItem
{
"Id": "00000000-0000-0000-0000-000000000000",
"ListId": null,
"IsClosed": false,
"StatusId": null
}
Helper for CallbackRelatedItem transportation
Property name | Value type | Description |
---|---|---|
Id | Guid | Related request id |
IsClosed | bool | IsClosed : if the related request is already closed |
ListId | Guid? | Related request list id |
StatusId | int? | StatusId : Raw status id for the last Attempt |