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?

Segment Kinds

While a Segment represents granular data and is primarily associated with customer conversations, we also use segments to represent other call center events and activities. You can distinguish between these using the attribute Kind in your WFO reporting.

Using Kind, you can filter out events that you're interested in to analyze the following:

Kind Description
Agent Status A segment that represents an agent's activity state in a given time period. Not related to conversations.
Conversation A segment representing a piece of a conversation between customers and agents. A conversation can consist of several segments of the kind conversation.
Missed Conversation A segment representing an unsuccessful attempt to connect a customer to an agent which ended because of timeout (agent didn't pick up the phone within an expected time interval). On the TaskRouter level, this is a reservation that an agent missed due to a timeout. There may be multiple missed conversation segments for a single conversation, as each agent who missed a reservation is represented by a single segment.
Queue A segment representing a customer or agent waiting in a queue.
Rejected Conversation A segment representing a reservation that was explicitly rejected by an agent. There may be multiple rejected conversation segments for a single conversation, as each agent who missed a reservation is represented by a single segment.

Below you can find more details about each segment kind, what to use them for, and with which metrics and attributes.

Agent Status

Segments of this kind can be used in order to measure agent activities and the time they spent in activities.

An Agent Status segment is virtual - there is no real Task SID associated with it because we're creating artificial segments in order to allow you to mix activity-based metrics with conversation-based ones. At the same time, it's important to remember that agent activities are not tied to agent phone activities (unless you explicitly set it in your implementation). This means agent activity can be "Available" while they are on the call.

We gather activity values from WorkerActivityUpdate events. Activities in WFO do not overlap – rather, the end of one activity indicates the beginning of the next one.

Here's the list of built-in metrics and attributes you can use to build custom reports for agent activity analysis:

Activity Time

The time (in seconds) that an agent spent with this activity.

SELECT Activity Time WHERE Kind = Agent Status

Time in Seconds

Activity start time expressed in seconds.

SELECT Time in Seconds

Activity Attributes

You could slice activity-based metrics by the following attributes Activity, Agent, Date, Time, Segment. Make sure you also include the Kind attribute filtered for the value "Agent Status".

A sample activity report:

Segment Date Time Agent Activity Activity Time
1 05/09/2019 0:19 Danny Richt Planned Break 0:15:55
2 05/09/2019 0:35 Danny Richt Busy 1:32
3 05/09/2019 0:36 Danny Richt Available 2h 33:34
4 05/09/2019 3:10 Danny Richt Lunch 9:12
5 05/09/2019 4:07 Danny Richt Available 1h 29:21

Conversation

Conversation segments are segments you'll use most often for analyzing handled conversations.

These segments contain the vast majority of data points, as segments come directly from Task attributes in TaskRouter. There are a lot of various metrics associated with conversation segments, but here are the basic ones:

Queue Time

The amount of time a customer spends in a queue before this segment.

SELECT Queue Time

Ring Time

The time (in seconds) that a customer or an agent spends on ring tone before reaching the other side.

SELECT Ring Time 

Talk Time

The time a customer spends talking with an agent. This includes all silences and can be thought of as the time between picking the phone and hanging up.

SELECT Talk Time 

Wrap Up Time

The time an agent spent wrapping up a conversation with a customer.

SELECT Wrap Up Time

Time in Seconds

Segments start time expressed in seconds.

SELECT Time in Seconds

Conversation Attributes

You can slice conversation metrics by many attributes. Some of the most frequently used are Queue, Agent, Customer, Date, Time, Segment, Conversation.

Make sure you also include the Kind attribute filtered for value "Conversation".

Conversation Segment Queue Date Time in Seconds Agent Queue Time Ring Time Talk Time Wrap Up Time

1

1 Level 1 05/10/2019 6h 42:15 John Doe 00:08 00:07 00:34 00:57
1 2 Level 2 05/10/2019 6h 42:59 Alba Perez 00:09 00:09 02:40 08:00
1 3 Level 3 05/10/2019 6h 45:45 Dwayne Right 00:07 00:06 02:51 12:27

Missed Conversation

Missed Conversation Segments are typically analyzed on the agent level to track individual performance.

Because agents are expected to pick up calls within a specified time limit it's important to monitor agents who consistently fail to comply with this standard.

Missed Segments

The distinct count of missed segments by an agent.

SELECT COUNT(Segment) WHERE Kind = Missed Conversation

Ring Time

Time in seconds an agent spent on ring tone before the call timed out.

SELECT Ring Time

Missed Conversation Attributes

You can slice metrics related to missed conversations by the following attributes: Agent, Queue, Date, Time, Segment.

Make sure you also include the Kind attribute filtered for value "Missed Conversation".

Segment Kind Agent Queue Date Time Missed Segments Ring Time
1 Missed Conversation John Doe Support 04/03/2019 11:56 1 20
2 Missed Conversation John Doe Support 03/28/2019 12:34 1 20
3 Missed Conversation John Doe Support 04/02/2019 14:48 1 20
4 Missed Conversation John Doe Support 04/02/2019 14:49 1 20

Queue

Segments of Kind=Queue show the initial interval of the call when a customer entered the queue and time spent waiting before being connected with an agent.

For each queue, a customer enters a new Queue segment that is created in WFO. This can come especially handy when your customer flows from one queue to another before connecting with an agent.

Using Queue segments is also convenient if you'd like to analyze the volume of calls from the timestamp when a call entered the queue rather than when it was answered.

The following metrics and attributes can be combined together for Queue segments:

Queue Time

The time a customer spends in a given queue.

SELECT Queue Time

Time in Seconds

Segment start time expressed in seconds.

SELECT Time in Seconds

Queue Attributes

You can slice queue metrics by the following attributes: Queue, Date, Time, Segment, Conversation.

Make sure you also include the Kind attribute filtered for value "Queue".

Conversation Segment Kind Queue Date Queue Time Time in Seconds

1234

1 Queue Level 1 05/10/2019 00:07 6h 42:08
1234 2 Queue Level 2 05/10/2019 03:31 6h 42:50
1234 3 Queue Level 3 05/10/2019 00:09 6h 45:39

Rejected Conversation

Rejected Conversation Segments are typically analyzed on the agent level to track individual performance.

Because agents are not expected to reject calls, it's important to monitor agents who do not comply with this requirement.

Rejected Segments

Distinct count of rejected segments by an agent.

SELECT COUNT(Segment) WHERE Kind = Rejected Conversation

Ring Time

Time in seconds the agents spent on ring tone before rejecting the call.

SELECT Ring Time

Rejected Conversation Attributes

You can slice metrics related to rejected calls by the following attributes: Agent, Date, Time, Segment.

Make sure you also include the Kind attribute filtered for value "Rejected Conversation".

Segment Kind Agent Queue Date Time Rejected Segments Ring Time
1 Rejected Conversation John Doe Support 04/03/2019 13:06 1 2
2 Rejected Conversation John Doe Support 03/28/2019 15:02 1 4

Task Lifecycle in a single Conversation

WFO provides a birds-eye view of crucial events that happen within each Task.

By breaking a conversation into segments of different kinds, you can retrospectively present the whole path of customer contact.

Segment Kind Queue Agent Abandoned Time in Seconds Ring Time Talk Time Queue Time
1 Queue Level 1 No 7h 21:33 01:12
2 Conversation Level 1 John Doe No 7h 22:44 00:04 02:17 01:12
3 Queue Level 2 Yes 7h 25:01 00:03
4 Missed Conversation Level 2 Alba Perez 7h 25:02 00:02 00:00
5 Conversation Level 2 Yes 7h 25:04 00:03

Here's how you can read this type of WFO report:

07:21:33 - Customer entered the queue "Level 1", waited for 1:12 (72 seconds).

07:22:44 - Customer connected with an agent John Doe, from Level 1 queue. They talked for 02:17 min and then customer got transferred to the "Level 2" queue.

07:25:01 - Customer entered queue "Level 2"

07:25:02 - agent Alba Perez was ringed for 2 seconds for connection with the customer

07:25:04 - Customer hangup after 3 seconds waiting in "Level 2" queue.

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.