Menu

Expand
Rate this page:

Thanks for rating this page!

We are always striving to improve our documentation quality, and your feedback is valuable to us. How could this documentation serve you better?

TaskRouter Data in Flex Insights

Individual TaskRouter events are connected into a single Analytics Data Model that provides a unified look at conversations and their contexts across multiple contact centers and customer management systems. We transform and clean data to make it easy to understand and analyze.

Flex Insights provides wide context for conversations, giving you the most insight possible. Not all data is available from Twilio out-of-the-box, as this data might include CRM customer details, customer satisfaction surveys, data from non-voice channels, or data from other call center solutions.

Naming

TaskRouter's Worker is an Agent in Insights. We call people who handle conversations with customers Agents. There are a number of different names for workers in contact centers including Advisors, Agents, Associates, Customer Support Specialists, Operators, Representatives, Workers and more. We historically use Agents in documentation to make it consistent and easy to understand for the widest audience possible.

TaskRouter's Task has no direct representation in Insights. You can say that a Task is roughly one Segment of a Conversation. This may, however, differ, as Insights may split tasks into multiple Segments to properly represent transfers and other scenarios. See Datasets in Analytics Data Model and Conversation Structure for how conversations look like in Insights.

TaskRouter's Call may be directly represented as a Conversation in Insights. However multiple Calls in TaskRouter may be represented as a single Conversation to better represent the actual scenario. One of the examples is when a customer calls in and TaskRouter creates another Call to connect the customer with the Agent. This appears as two Calls in TaskRouter but as a single Conversation in Insights.

Data Available from TaskRouter

Measures based on this data will be available out-of-the-box:

  • Abandoned Conversations - the number of conversations where Agent and Customer have not talked to each other.
  • Abandonment Time - time a Customer or an Agent spends waiting on the other party before giving up.
  • Handled Conversations - the number of conversations handled by an Agent.
  • Queue Time - time a customer spends waiting in a queue before reaching an Agent.
  • Talk Time - time Agents spend talking to customers.
  • Wrap Up Time - time Agents spend after talking to customers to do after call work.

All the available measures can be sliced by the following attributes:

  • Agent
  • Channel
  • Customer City
  • Customer Country
  • Customer Phone
  • Customer ZIP
  • Date and Time including Days of Week, Days of Month and similar
  • Direction
  • Queue
  • Team

If you have Insights Speech Analytics enabled you can also use Speech Analytics-related measures and attributes.

Built-in Task Attributes

TaskRouter provides a set of attributes that are provided with each task by default. We extract these and save them as corresponding attributes and measures in Insights.

The list of attributes that we extract from TaskRouter events:

  • Sid is not used in Insights
  • AccountSid is used for splitting TaskRouter traffic to individual analytical workspaces
  • WorkspaceSid is not used in Insights
  • WorkflowSid is not used in Insights
  • WorkflowName to Conversations ▸ Workflow
  • Attributes used for extracting properties added by VoiceML and custom properties
  • Age is not used in Insights, we use events timestamps instead
  • Priority is not used in Insights
  • TaskQueueSid to Conversations ▸ Handling Team
  • AssignmentStatus is not used in Insights
  • Reason to Conversations ▸ Outcome
  • DateCreated is not used in Insights
  • DateUpdated is not used in Insights
  • Timeout is not used in Insights
  • TaskChannelSid is not used in Insights
  • TaskChannelUniqueName to Conversations ▸ Channel
  • Addons is not used in Insights

Properties extracted from Task events:

  • TaskSid used to uniquely identify the task within Insights
  • TaskAttributes used for extracting properties added by VoiceML and custom properties
  • TaskAge is not used in Insights, we use events timestamps instead
  • TaskQueueName to Conversations ▸ Handling Team Name
  • TaskQueueSid to Conversations ▸ Handling Team ID
  • TaskPriority is not used in Insights
  • TaskAssignmentStatus is not used in Insights
  • TaskCanceledReason to Conversations ▸ Outcome
  • TaskCompletedReason to Conversations ▸ Outcome

Properties extracted from Worker events:

  • WorkerSid is used to uniquely identify agents in Insights
  • WorkerName to Agents ▸ Full Name
  • WorkerAttributes used for extracting custom properties
  • WorkerActivitySid is not used in Insights
  • WorkerActivityName to Activities ▸ Activity

Properties extracted from the TaskAttributes property:

  • from_country to Customers ▸ Country for inbound calls
  • called to Customers ▸ Phone for outbound calls
  • to_country to Customers ▸ Country for outbound calls
  • to_city to Customers ▸ City for outbound calls
  • to_state to Customers ▸ State for outbound calls
  • caller_country to Customers ▸ Country for inbound calls
  • call_status is not used in Insights
  • call_sid is used for connecting tasks into a single Conversation with multiple Segments
  • account_sid is used for splitting TaskRouter traffic to individual analytical workspaces
  • from_zip to Customers ▸ ZIP for inbound calls
  • from to Customers ▸ Phone for inbound calls
  • direction to Conversations ▸ Direction
  • called_zip to Customers ▸ ZIP for outbound calls
  • caller_state to Customers ▸ State for inbound calls
  • to_zip to Customers ▸ ZIP for outbound calls
  • called_country to Customers ▸ Country for outbound calls
  • from_city to Customers ▸ City for inbound calls
  • called_city to Customers ▸ City for outbound calls
  • caller_zip to Customers ▸ ZIP for inbound calls
  • api_version is not used in Insights
  • called_state to Customers ▸ State for outbound calls
  • from_state to Customers ▸ State for inbound calls
  • caller to Customers ▸ Phone for inbound calls
  • caller_city to Customers ▸ City for inbound calls
  • to to Customers ▸ Phone for outbound calls

If you need to add data not provided by TaskRouter out-of-the-box, you can check how to add custom data task and worker attributes. See the documentation on TaskRouter built-in task attributes.

Rate this page:

Need some help?

We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd browsing the Twilio tag on Stack Overflow.