Level up your Twilio API skills in TwilioQuest, an educational game for Mac, Windows, and Linux. Download Now

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 WFO

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.

WFO 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 WFO. 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 WFO. You can say that a Task is roughly one Segment of a Conversation. This may, however, differ, as WFO 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 WFO.

TaskRouter's Call may be directly represented as a Conversation in WFO. 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 WFO.

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 WFO 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 WFO.

The list of attributes that we extract from TaskRouter events:

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

Properties extracted from Task events:

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

Properties extracted from Worker events:

  • WorkerSid is used to uniquely identify agents in WFO
  • WorkerName to Agents ▸ Full Name
  • WorkerAttributes used for extracting custom properties
  • WorkerActivitySid is not used in WFO
  • 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 WFO
  • 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 WFO
  • 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 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.