Calabrio queuelog and agentlog from Puzzel

Puzzel can generate a Calabrio queuelog (calls/chats/emails/tasks per queue) and agentlog (calls/chats/emails/tasks per agent) every 15 minute to be used in Calabrio WFM. The queuelog and agentlog is generated from the Puzzel Raw data.

Queuelog

Puzzel can generate a Calabrio queuelog (calls/chats/emails/tasks per queue) every 15 minute to be used in Calabrio WFM. 

The Calabrio queuelog is generated (from Puzzel Raw data) usually with a 2 hours delay to make sure all calls/chats that should be included have ended and raw data are available.

Example: At 1100 the queuelog for interval 0845-0900 is generated, and at 1115 the queuelog for 0900-0915 is generated. 
It is possible to have a shorter delay (e.g. 1 hour), but this increases the probability that some calls/chats that should be included in an interval will not be included (due to long queue time, long speaktime, call transfer to queues and callbacks).

Calabrio fetches a new queuelog from Puzzel (separate tables in the Raw data db) every 15 minute and imports data into Calabrio WFM.

We recommend that all the 15 minute queuelogs for yesterday is regenerated each night (around 0200), in case some very long calls/chats was not included in the correct time interval yesterday due to a too short delay.   

The main purpose of the queuelog is to be input to forecasting (and historical reporting), not to solve intra-day management challenges. The Puzzel SLA concept combined with skill-based routing makes sure requests in different queues are prioritized 'correctly'. In addition, there are lots of real-time views (Queue overview, Dashboards and Wallboards) showing status now (without any delays), and a KPI alarm system to notify supervisors/managers about very long queue wait times and few agents logged on.  

 

In which time period does a call belong?

  • In the NEW version of the Calabrio queuelog, a call/chat 'belongs' (as Offered and Answered) in the time period it arrived in queue (the Queue event's dte_start).
    • If a call arrived in Q1 and was connected to agent1, who transferred to Q2 where agent2 answered, then we report this as 1 call offered to Q1 and 1 call offered to Q2, possibly in two different 15 minute intervals (since the caller spends time in Q1 and connected to agent1 before the caller arrives in Q2).
  • In the OLD version of the Calabrio queuelog, a call/chat belongs in the time period it left the queue (the queue event's [dte_start + duration_tot_sec]). 
    (the average time in queue varies a lot between Contact centres and queues)
    • If you have the old version and want to be moved to the new version, please contact Puzzel.
      • After we have moved you to the new version, the queuelog will probably show some more calls offered (and answered) in the first quarter the contact centre is open each day, and fewer calls in the day's last quarter, and other variations during the day depends on variations in call volume.    

 

What about Puzzel statistics reports like Details per queue?

In Puzzel statistics reports Details per queue and other Puzzel reports, the main rule is that a call (with all its 'events') is reported in the time period the call ends (not when it arrives in queue). Ref this article

Due to this and the fact that callback in queue is not handled in exactly the same way, the number of calls (offered/answered), wait time and speaktime per 15 minute interval will not be the same in the Calabrio queuelog as in Puzzel's Details per queue. 

 

Calabrio queuelog field description

Name

Description

Columns in Puzzel table queuelog

Record Id

A unique id for each row. Can be used as a delta column or check if data has been updated for a queue for a specific 15 min period (i.e. after regeneration). 

Rec_id

Date/
interval

Start date and time of 15-minute interval of accumulated data. 

Date_from

Queue key

The queue_key where calls are handled while queued.

Queue

Queue name

The name of the queue where calls are handled while queued.

queue_description

Calls offered

 

 

 

 

Email offered 

Total number of calls that arrived in queue in this time period. (These calls are answered/hung up in this or a later time period).
[=Number of Queue events with its Start in this time period and result unlike a|d|e].

 

Chat: Total number of chats arriving in queue in this time period.
[Queue events with its Start in this time period]

 

Email/Social: Number of “new” emails/SoMe requests arriving in queue in this time period.
[=Number of Pre-Initiation events]

offd_direct_call_cnt

Answered calls

 

 

 

 

 

 

 

 

Answered Emails  

Number of calls that arrived in queue in this time period where the caller hold the line and were answered by agent (in this or a later time period). 
[=Queue events with its Start in this period and result=k]

+ Number of calls arrived in queue in this time period where callback was ordered and where callback was answered by agent and customer on 1st, 2nd or 3rd attempt, in this or a later time period. (Answered agent calls for unanswered callbacks are ignored)
[Queue events with its Start in this period and result=q and having belonging answered Conversation events for agent and caller]

 

Chat: Number of chats that arrived in queue in this time period and were answered by agent in this or a later time period. 
[Queue events with its Start in this time period and result=k]

 

Email/Social: Number of email/SoMe requests that were accepted/answered by agent in this time period. (These requests usually arrived in queue in a much earlier time period)
[=Queue events with Finish in this time period and result=k]

answ_call_cnt

Answered within
service
levels

Total number of calls that arrived in queue in the interval and were answered in this or a later interval, within the service levels. The different service levels are:

1 - 5 sec

2 - 20 sec

3 - 30 sec

4 - 60 sec

5 – 90 sec

6 – 180 sec

7 - 300 sec 

8 - 36000 sec

[=Queue events with its Start in this period and result=k and duration <xx sec, 
plus Queue events with its Start in this period and result=q that were answered, and having a calculated wait time  <xx sec]

 

 

ans_service_goal_1

ans_service_goal_2

ans_service_goal_3

ans_service_goal_4

ans_service_goal_5

ans_service_goal_6

ans_service_goal_7

ans_service_goal_8

Abandoned calls

Total number of calls that arrived in queue in the interval and were abandoned (=hang-ups) in this or a later interval.
[Queue events with Start in this time period and result=h]

aband_call_cnt

Abandoned within
service
levels

Total number of calls that arrived in queue in the interval and were abandoned on the queue within the service levels. 

1 - 5 sec

2 - 20 sec

3 - 30 sec

4 - 60 sec

5 – 90 sec

6 – 180 sec

7 - 300 sec 

8 - 36000 sec

[=Queue events with Start in this time period and result=h and duration < xx sec]

 

 

aband_service_goal_1

aband_service_goal_2

aband_service_goal_3

aband_service_goal_4

aband_service_goal_5

aband_service_goal_6

aband_service_goal_7

aband_service_goal_8

Overflow Out Calls

Total number of calls that arrived in queue in the interval that were sent to another queue or to a third party. 
(Number of Queue events with Start in the period and result = Timeout (t), Full (f) or Reject/Empty/Closed (s))

overflow_out_call_cnt

Overflow In Calls

Total number of calls entered in on this queue from another queue. 
(Total number of queue events for this queue with Start in the period minus the number of Queue events for this queue being the first queue event in its call_id). 

overflow_in_call_cnt

Speed of answer

SUM wait time for callers that arrived in queue in this time period and were answered after having waited (hold the line) in queue 
[duration for Queue event with Start in the time period and result=k].

+ SUM wait time for callers that arrived in queue in this time period and ordered callback [Queue event result=q] and were both agent and caller answered (after 1-3 tries). 
- For a callback answered on the 1st try, the wait time is until the agent answered. 
- For a callback answered on the 2nd or 3rd try, the wait time used here is until the 1st agent answered!

 

Chat: Sum wait time for chats that arrived in queue in this time period.
[duration for Queue events with Start in this time period and result=k]

 

Email/Social: Sum wait time for emails/SoMe requests where the Queue event ended in this period. 
(The Email arrived in queue in this period or more likely in a (much) earlier time period.)
[Duration for Queue events with its Finish in this time period and result=k]

queued_and_answ_call_dur

Talk time

Speaktime (in seconds) from Conversation events for calls that arrived in queue in this time period [Queue event Start] and were answered in this or a later time period.

For a Callback call we include the agent’s speaktime only for the agent call that was joined to the caller. 
(For unanswered callbacks the agent's speaktime is ignored)

 

Chat: Sum speaktime (in seconds) for chats that arrived in queue in this time period [Queue event Start] and were answered in this or a later time period.

 

Email/Social: Sum ‘speaktime’ (in seconds) for emails/SoMe requests that were ‘accepted’ by agent in this period 
[=speaktime from Conversation events ‘belonging’ to Queue events with its Finish in this period]  

(The email/SoMe request usually arrived in queue in an earlier time period)

talking_call_dur

After Call Work (acw)

Total after call work (=wrap-up) time for all calls that arrived in queue (Queue event Start) during the interval.

wrap_up_dur

Time to abandon

Total queue time for calls that arrived in queue in this time period and were abandoned.  

[=Queue events with Start in the time period and result=h) 

queued_and_aband_call_dur

Longest delay in Queue, Answered

Maximum queue time for calls that arrived in queue in this time period and were answered.

[The longest duration for Queue events with Start in this time period and result=k]

queued_answ_longest_que_dur

Longest delay in Queue, Abandoned

Maximum queue time for calls that arrived in queue in this time period and were abandoned 

[The longest duration for Queue events with Start in this time period and result=h]

queued_aband_longest_que_dur

Customer number

The customer number in Puzzel systems. Some customers have more than one number (one for each country for instance)

Customer_key

 

agentlog

The agentlog shows 1 row per agent per queue (with calls/chats/email/tasks) per 15 minute interval.

In which time period does a call to an agent belong?

A Conversation event (for a call, chat, email/task or SoMe request) to an agent with result = k (answered) belongs in the time interval it ended, that is, where [dte_start + duration_tot_sec] is. A call's wrap-up starts after the Conversation event ended.    

Column nameDescription
rec_idA unique id for each row. Can be used as a delta column or check if data has been updated for a queue for a specific 15 min period (i.e. after regeneration). 
queueThe queue's queue_key or «-1» (if not linked to queue but only to agent)
date_fromWhen the 15 minute period started, e.g. 2025-04-04 15:15:00
agent_idThe agent’s Raw data ‘user_num’ (aka Numeric id) if it exist, otherwise the Raw data ‘agent_id’ (aka PCC user_id). 
(Same as in statistics reports Details for agents and Details per agent per queue)
agent_nameThe user’s “Full name”.
Possible to configure that it is “Fullname (username)”
avail_durTime logged on excluding pause, in seconds. Reported on queue “-1”
tot_work_durTime logged on including pause, in seconds. Reported on queue “-1”
talking_call_durTotal Speaktime for the agent on this queue, in seconds.
(Sum speaktime for the Conversation events with result=k that ended in the interval). If a call started in Q1 and ended in Q2, Q1 will not get any speaktime from this Conversation event.  
pause_durTime in pause, in seconds. Reported on queue “-1”
answ_call_cntNumber of calls/requests answered by the agent on the given queue(s).
Conversation events with result=k that ended in the interval.
transfer_out_call_cntNumber of calls/requests transferred by this agent to another agent or queue. 
Conversation events that ended in the interval with result=k and transferred=1.
wrap_up_durThe agent’s total wrap-up time (in seconds) per queue.
(Sum wrap-up time in the conversation events with result=k that ended in the interval)
wait_dur"Idle time' = Time Logged on – Time in Pause – Speaktime (in seconds)
minimum 0 and maximum 900. 
Since agents can handle several written requests and/or a call in parallel, and since one answered request with ‘speaktime’ >15 minutes will not be divided into two (or more) 15-minute intervals, the sum of speaktime for a 15 minute interval for an agent might be > 15 minutes.  

 

 

Useful links/background:

Raw data introduction

Basic call flow and different call events

Call transfer, Consult and Put on hold

Call events result codes

Callback in queue

Several ways to enter and exit a queue

In which time period does a call belong in Puzzel statistics

Statistics - About time frames, periods and data storage

Why different numbers on different reporting levels?

Published

Last updated

2
0