Engagement
Engagement data is a core data set containing all customer engagements organized into conversations and linked to important attributes that enable to filter and segment them.
Property | Type | Description |
---|---|---|
Engagement | PID | Unique identifier of this engagement. |
Agent | Reference to Agent | The agent who engaged with the customer. |
Contact | Reference to Customer | The [Problem Internal Link] the customer used during this engagement. Contact is a specific phone number, email, username, or other identifier. The original contact information is replaced by an anonymized identifier and is not visible in analytics. |
Start Time | Date and Time | The time when the engagement started including a preparation phase if there is any. Start time is available for all engagements. |
End Time | Date and Time | The time when the engagement ended including a wrap-up phase if there is any. End time is not available for engagements that are in progress. |
Campaign | Entity | Campaign this engagement is part of. This can be for example outbound call campaign, emailing campaign or marketing campaign with a dedicated company contact that enables to categorize engagements. |
Case | Entity | The case is associated with the current engagement. Cases are units that can span many engagements, conversations, and even customers. Thus cases are no directly part of a customer journey as they may touch multiple customers. However, cases might be useful to calculate aggregated metrics to associate effort, costs, etc. with them. |
Channel | Entity | Channel is a granular channel identifier. |
Channel Type | Enumeration Email, Chat, SMS, Task, Video, Voice | High level category of a channel which enables you to distinguish between engagements that may have very different expected metrics and attributes. |
Channel Vendor | Entity | The vendor used for handling this engagement. This enables you to understand what applications and service customers use or preffer. |
Company Contact | Entity | The company contact that the customer reached or your agents used to reach the customer. |
Conversation | Attribute | Conversation group together multiple Engagements into one conversation. |
Direction | Enumeration Inbound, Outbound, Internal, Unknown | The direction of the conversation. Direction should be the same for all engagements in the conversation based on the direction of the first engagement. |
Engaged Team | Entity | The team in which the agent when engaged in this engagement. |
Language | Entity | The predominant language is associated with the engagement. In a multi-lingual contact center. This enables you to segment engagements by the language you are serving. |
Location | Entity | Location in which the engagement happened. |
Menu Path | Entity | The menu path the customer went through during the last menu engagement. |
Outcome | Entity | Outcome of the engagement. How outcome is determined depends on the engagement type. |
Outcome Category | Entity | Higher level of outcome that enables to categorize them for example by kind of conversations they are related, by failure/success or categorize by other criteria. |
Platform | Entity | The platform name in which this engagement happened. |
Priority | Entity | The priority of the engagement represented by a category. |
Queue | Entity | The queue with which the engagement is associated with. The meaning differs by the type of the engagement. |
Reason | Entity | The reason why the customers contact the company. This may be based on customer input, agent input or automatically detected based on the environment. |
Service Level | Enumeration Within SLA, Out of SLA, Ignore | Information whether this engagement was handled according to set service level standards. |
Source | Entity | The account identifier in the platform in which this engagement happened. You can have multiple accounts in a single platform connected to one Salted CX account. This attribute enables you to show the engagements by this account. |
Status | Enumeration Completed, Corrupted, Deleted, In Progress, On Hold | Engagement state represents the current state of the engagement. The state can change over time as engagements may be long-running. In this case, they may appear as in progress and later be completed. |
Terminated By | Enumeration Agent, Customer, System, Technical, Unknown | Tells who has terminated the engagement. Typically a person who left the conversation. For example, during a phone call, this is when the participant hangs up. |
Type | Enumeration Agent, Agent Activity, Flow, Invitation, Menu, Queue, Technical | High-level type of the engagement. This categorizes engagements into very different kinds of categories that typically do not show in the single reporting. |
Cost | Fact | The cost of engaging in this conversation. This includes all costs that are possible to attribute in a given environment including agent salaries, technology stack costs, used services, etc. |
Engagement Time | Fact | The time from the moment when agent and a customer start talking together until they disconnect. |
Focus Time | Fact | The time the agent spent focused on the engagement. In a multitasking environment when agents can be engaged in multiple conversations at the same time the focus time tries to isolate the time when the agent’s attention is focused solely on this engagement. |
Hold Time | Fact | The time the customer spent waiting without the ability to talk to an agent during the engagement. Note that engagement time includes the hold time. |
Invitation Time | Fact | The time the agent was invited to join the conversation. |
Preparation Time | Fact | The time the agent spent before an engagement with a customer to prepare for it. This can be for example a research on customer history before reaching to them to ensure they better understand the customer. |
Time | Fact | Technical timestamp representing Start time. As fact this can be used for sorting and arithmetics. |
Wait Time | Fact | The time the customer or an agent spent in waiting to be connected to an agent. The meaning of wait time differs by engagement type. |
Wrap Up Time | Fact | The time the agent spent wrapping up the conversation after the customer is disconnected. |
Cases
Cases enable you to connect engagements by case if the conversations are grouped by cases and tickets or other high-level requests.
Channel Type
Channel type is a high-level way of categorizing channels.
Channel Type | Description |
---|---|
The engagement is an email conversation that has its specifics. It can have longer messages. | |
Chat | The engagement represents a chat where users communicate using messages instantly. |
SMS | The engagement represents SMS or a similar short message system engagement. |
Task | The engagement represents a generic task. |
Video | The engagement represents a video call. |
Voice | The engagement represents a voice call. |
Conversation
Conversation is an attribute that groups multiple Engagements into a single Conversation. There is an explicit data set containing individual conversations. In Logical Model the conversation is just a container for Engagements linked with the same permanent identifier.
Direction
Direction is the same for every engagement in a conversation and it is based on the first engagement. So even when agents consult during an inbound conversation with other agents the engagement representing the consulting part is still Inbound (not Internal). Keeping the direction the same for all engagements is intended to simplify reporting and remove unclarities.
Direction | Description |
---|---|
Inbound | The conversation was initiated by the customer. |
Internal | The conversation was initiated by an agent in the contact center and led to another agent in the contact center. |
Outbound | The conversation was initiated by an agent (or dialer) in the contact center and led to a customer outside of the contact center. |
Outcome
Available outcomes depend on your business needs. This is typically called wrap code or disposition code based on the platform.
Service Level
Service Level indicates whether the engagement was handled within a required SLA policy.
Service Level | Description |
---|---|
Within SLA | The engagement was handled according to service level requirements. |
Out of SLA | The engagement was not handled within the service level requirements. |
Ignore | The engagement should be excluded from any calculation of SLA-based metrics. |
Status
Engagement status represents the current state of the engagement. The status can change over time as engagements may be long-running. In this case, they may appear as in progress and lated be completed.
Status | Description |
---|---|
Completed | The Engagement is over. The agent handling that Engagement has no further work associated with the given engagement. After this, the engagement metrics and attributes should not change unless updated by loading custom data. |
Corrupted | Salted CX has not received all the data necessary to calculate some key metrics or attributes. These engagements may be the result of incomplete data received from a source platform. Corrupted engagements may appear when there is a problem with the underlying platform and it fails to deliver all the events it should, when there is a network issue between the source platform and Salted CX, or when there is an issue in Salted CX directly. Corrupted engagements are available for transparency and for being excluded from reporting when necessary. |
Deleted | The Engagement was flagged as deleted. This means it should be excluded from most of the reporting unless the reporting is not specifically targeted deleted engagements. |
In Progress | The Engagement has started but has not yet been completed. |
On Hold | The Engagement is in progress technically but has a hold state to indicate no agent is busy working on the engagement. |
Engagement Type
Engagement type splits engagements into very different categories of engagements that have very different meanings. In the vast majority of metrics and reports you will want to filter by this attribute to get expected results.
Type | Description |
---|---|
Agent | Single agent’s engagement in a conversation. The agent can be either a human or a service such as bot, voicemail, etc. |
Agent Activity | This engagement is a technical engagement that represents an agents in a given status. |
Flow | This engagement is an engagement when customer was in a flow. |
Invitation | Invitation that asks an agent to join the conversation. |
Menu | Engagement in which the agent went through a process of picking options in a menu. This can be IVR for phone calls. |
Queue | Customer or an agent waiting in a queue. |
Technical | Item in Engagement Data Set that is stored there only for technical reasons. Typically to make reporting easier to use. |
Agent Engagements
Agent engagements are engagements in which the customer and agent talk together.
Agent does not always have to be a person. There might be bots and other services that handle the customer. If you are interested in human only engagements you should make sure you use Agent Type to filter the data.
Invitation Engagements
Invitation Engagements represent an invitation of an agent to a conversation.
Property | Type | Description |
---|---|---|
Engagement | PID | Unique identifier of this engagement. |
Agent | Reference to Agent | The agent who was invited to join the conversation. |
Start Time | Date and time | The time when the invitation was created. |
End Time | Date and time | The time when the invitation was accepted by an agent, was rejected and timed out. |
Campaign | Attribute | Campaign this engagement is part of. This can be for example outbound call campaign, emailing campaign or marketing campaign with a dedicated company contact that enables to categorize engagements. |
Case | Attribute | Case associated with the current engagement. Cases are units that can span many engagements, conversations and even customers. Thus cases are no directly part of a customer journey as they may touch multiple customers. However cases might be useful to calculate aggregated metrics to associate effort, costs, etc. with them. |
Channel | Entity | Channel is a granular channel identifier. |
Channel Type | Attribute | High level category of a channel which enables you to distinguish between engagements that may have very different expected metrics and attributes. |
Channel Vendor | Attribute | The vendor used for handling this engagement. This enables you to understand what applications and service customers use or prefer. |
Company Contact | Entity | The company contact that the customer reached or your agents used to reach the customer. |
Conversation | Attribute | Conversation group together multiple Engagements into one conversation. |
Direction | Attribute | The direction of the conversation. Direction should be the same for all engagements in the conversation based on the direction of the first engagement. |
Engaged Team | Entity | The team in which the agent when engaged in this engagement. |
Language | Attribute | The predominant language associated with the engagement. In a multi-lingual contact center this enables you to segment engagements by the language you are serving. |
Menu Path | Entity | The menu path the customer went through during the last menu engagement. |
Outcome | Entity | Accepted for invitations that the agent acceptedRejected for invitations that the agent explicitly rejectedTime Out for invitations that the agent did not respond to a given time-outRevoked for invitations that were revoked before the time out and before the agent had any chance to respond |
Outcome Category | Entity | Invitation |
Platform | Attribute | The platform name in which this engagement happened. |
Priority | Attribute | The priority of the engagement. |
Queue | Entity | The queue with which the engagement is associated with. The meaning differs by the type of the engagement. |
Service Level | Attribute | — |
Source | Attribute | The account identifier in the platform in which this engagement happened. You can have multiple accounts in a single platform connected to one Salted CX account. This attribute enables you to show the engagements by this account. |
Status | Attribute | Completed for invitations that are accepted, rejected or timed outIn Progress for invitations that are created but were not yet accepted/rejected/timed out |
Type | Attribute | Invitation |
Cost | Fact | — |
Engagement Time | Fact | — |
Focus Time | Fact | — |
Hold Time | Fact | — |
Invitation Time | Fact | The time the agent was invited to join the conversation. |
Preparation Time | Fact | — |
Time | Fact | Technical timestamp representing Start time. As fact this can be used for sorting and arithmetics. |
Wait Time | Fact | — |
Wrap Up Time | Fact | — |
Queue Engagements
Queue engagement represents a customer (which can be of type agent) in a queue. Waiting in queue happens when you have limited number of people (eventually other resources) that can handle the customer request and you have nobody (or no resources) available for a given customer. Queues enable to overcome unavailability time period.
There might be multiple queue engagement when the customer moves from one queue to another.
Property | Type | Description |
---|---|---|
Engagement | PID | Unique identifier of this engagement. |
Agent | Reference to Agent | — |
Contact | Reference to Customer | The [Problem Internal Link] the customer used during this engagement. Contact is a specific phone number, email, username or other identifier. The original contact information is replaced by an anonymized identifier and is not visible in analytics. |
Start Time | Date and time | The time when the customer started to wait in the queue. |
End Time | Date and time | The time when the customer left the queue for any reason. |
Campaign | Attribute | Campaign this engagement is part of. This can be for example outbound call campaign, emailing campaign or marketing campaign with a dedicated company contact that enables to categorize engagements. |
Case | Attribute | Case associated with the current engagement. Cases are units that can span many engagements, conversations and even customers. Thus cases are no directly part of a customer journey as they may touch multiple customers. However cases might be useful to calculate aggregated metrics to associate effort, costs, etc. with them. |
Channel | Entity | Channel is a granular channel identifier. |
Channel Type | Attribute | High level category of a channel which enables you to distinguish between engagements that may have very different expected metrics and attributes. |
Channel Vendor | Attribute | The vendor used for handling this engagement. This enables you to understand what applications and services customers use or prefer. |
Company Contact | Entity | The company contact that the customer reached or your agents used to reach the customer. |
Conversation | Attribute | Conversation group together multiple Engagements into one conversation. |
Direction | Attribute | The direction of the conversation. Direction should be the same for all engagements in the conversation based on the direction of the first engagement. |
Engaged Team | Entity | — |
Language | Attribute | The predominant language is associated with the engagement. In a multi-lingual contact center, this enables you to segment engagements by the language you are serving. |
Menu Path | Entity | The menu path the customer went through during the last menu engagement. |
Outcome | Entity | Accepted when the |
Outcome Category | Entity | Queue |
Platform | Attribute | The platform name in which this engagement happened. |
Priority | Attribute | The priority of the engagement. |
Queue | Entity | The queue in which the customer is waiting. |
Service Level | Attribute | Within SLA if the customer waited within the range defined in the SLA.Out of SLA if the customer waited longer than defined in the SLA. |
Source | Attribute | The account identifier in the platform in which this engagement happened. You can have multiple accounts in a single platform connected to one Salted CX account. This attribute enables you to show the engagements by this account. |
Status | Attribute | Completed if the customer already left the queue |
Type | Attribute | High level type of the engagement. This categorizes engagements into very different kind of categories. |
Cost | Fact | The cost for engaging in this conversation. This includes all costs that are possible to attribute in a given environment including agent salaries, technology stack costs, used services, etc. |
Engagement Time | Fact | The time from the moment when agent and a customer start talking together until they disconnect. |
Focus Time | Fact | The time the agent spent focused on the engagement. In multitasking environment when agent can be engaged in multiple conversations in the same time the focus time tries to isolate the time when the agent’s attention is focused solely on this engagement. |
Hold Time | Fact | The time the customer spent waiting without the ability to talk to agent during the engagement. Note that engagement time includes the hold time. |
Invitation Time | Fact | The time the agent was invited to join the conversation. |
Preparation Time | Fact | The time the agent spent before an engagement with a customer to prepare for it. This can be for example a research on customer history before reaching to them to ensure they better understand the customer. |
Time | Fact | Technical timestamp representing Start time. As fact this can be used for sorting and arithmetics. |
Wait Time | Fact | The time the customer or an agent spent in waiting to be connected to an agent. The meaning of wait time differs by engagement type. |
Wrap Up Time | Fact | The time the agent spent wrapping up the conversation after the customer is disconnected. |
Terminated By
Indicates how the engagement was terminated and by whom.
Terminated By | Description |
---|---|
Agent | The agent left the engagement while the customer was still in the engagement. |
Customer | The customer left before the agent. |
System | The engagement was terminated by the system as expected. This is for example the case when a customer arrives at the end of an IVR. |
Other | The connection reason is none of the others. |
Technical | The connection was terminated due to technical reasons. |