Reporting Database Specification

Bright Pattern Documentation

Generated: 10/22/2021 1:42 pm
Content is available under license unless otherwise noted.

Purpose

The Bright Pattern Contact Center Reporting Database Specification describes the historical data that is collected and stored in the Reporting Database, also known as DB2. This database contains detailed records about interactions and agent activities as well as many pre-aggregated statistical values.

Note: The Reporting Database tables that are not documented in this guide are for internal use only.

The data collected in the Reporting Database is used for generating the out-of-the-box Bright Pattern Contact Center reports. The reports have been developed using TIBCO Jaspersoft Studio, an Eclipse-based report designer for JasperReports and JasperReports Server. For information about these reports, see the Bright Pattern Contact Center Reporting Reference Guide.


Creating Custom Reports with TIBCO Jaspersoft Studio

You can use any SQL-based reporting application to create your custom reports. However, using Jaspersoft Studio for custom report creation offers the following advantages:

Note: Jaspersoft has two different tools for report development: iReport Designer and Jaspersoft Studio. Only Jaspersoft Studio is supported as the tool for the creation of custom report templates for your Bright Pattern Contact Center solution.


Creating Custom CSV Exports Using BPXML Templates

To export a large amount of data from the Reporting Database in CSV format, .bpxml report templates can be used. For more information, see the Custom Reporting Tutorial, section Customizing BPXML Report Templates.



Audience

This guide is intended primarily for professionals responsible for the design, development, and testing of custom applications and reports in your contact center.

Readers are expected to have experience with relational databases and reporting tools, as well as a solid understanding of contact center operations and resources that are involved in such operations.




How to Use This Guide

The Bright Pattern Contact Center Reporting Database Specification provides descriptions of the statistical data and types of detailed records that may be queried from the database.

This guide organizes such information into two main parts: Statistical Data and Detailed Records. Statistical Data specifies tables that contain metrics for the main contact center resources, such as agents and services. The data in these tables is mainly used for generating typical reports described in the Bright Pattern Contact Center Reports Reference Guide. Detailed Records specifies tables that contain detailed information about all agent activities and all interactions that either entered, or were initiated from, the Bright Pattern Contact Center system. Data from these tables can be used, for example, for quality management tasks, which require searching for specific interactions based on combinations of specific criteria.

You should familiarize yourself with each part by first reading the "general information" sections, which provide basic information about retrieving data from the database, metrics/tables and their meanings, media types, and so forth. After you have begun to query the database, you should use the metric-specific sections of this guide for reference purposes.

Metrics include underscores ("_") in their names; such metrics are the names of the tables of data that are retrieved from the database.


General Information About Statistical Data

The tables specified in this section contain metrics for the main contact center resources, such as agents and services, arranged in 15-minute statistical intervals. The data in these tables is used, in particular, for generating the out-of-the-box reports described in the Bright Pattern Contact Center Reports Reference Guide. You can see the actual queries used in these reports by downloading the corresponding .jrxml templates.

The data source for these metrics is the raw event data that is initially written to the Collector Database (DB1) in real-time by various Bright Pattern Contact Center components. This raw data is then periodically extracted by the Aggregator component, transformed into the specified metrics for the base 15-minute statistical intervals, and loaded into the tables of the Reporting Database (DB2). A SQL-compliant reporting application can be used for aggregating these basic metrics into desired higher-level reporting intervals (i.e., hour, day, week, month, etc.).

The following considerations apply to all statistical data tables:




agent_performance

The agent_performance table contains agent metrics. Note that interaction-related metrics are counted separately for each service that the agent provided within the aggregation interval. Thus, unless noted otherwise with respect to a particular metric, any interaction mentioned in this table shall be interpreted as an interaction associated with the service specified in the service_name field that was handled by the agent identified by the login_id field.


Description of Data

The following table offers the name (i.e., ID), data type (e.g., BIGINT, BINARY, BIT, DATETIME, ENUM, INT, VARCHAR, etc.), and description for each metric (i.e., column) of the agent_performance table.


Column Name Data Type Description
id BINARY (16) Reserved
pkid INT Primary key
login_id VARCHAR Agent login as defined in configuration
first_name VARCHAR Agent first name as defined in configuration
last_name VARCHAR Agent last name as defined in configuration
team_name VARCHAR Name of the team that the agent is assigned to as defined in configuration
rank VARCHAR Agent rank as defined in configuration
no_service BIT Reserved
service_name VARCHAR service_name is the name of the service associated with the calls handled by the agent.

If the agent handled calls for multiple services, the agent's call-related metrics will be provided for each service separately

For services of media type chat, any call mentioned in this table shall be interpreted as a chat interaction in the same context.

is_internal BIT TRUE for internal calls; if set to TRUE, all inbound calls in this row shall be interpreted as internal calls received by the agent, and all outbound calls as internal calls made by the agent.
is_campaign BIT Services of blended type will have two rows of metrics: one where this bit is set to TRUE, counting campaign calls only; the other row with this bit set to FALSE, counting inbound and non-campaign outbound calls.
media_type ENUM This is the media type. Possible values include VOICE, CHAT, and EMAIL.

If set to CHAT, any call mentioned in this table shall be interpreted as a service chat interaction in the same context.

start_time DATETIME Start time of the aggregation interval
end_time DATETIME End time of the aggregation interval
agg_run_id BINARY (16) Aggregator run that produced this record
total_num_calls BIGINT Reserved
num_calls_in BIGINT For voice, num_calls_in specifies the number of inbound calls offered to the agent.

For email, it specifies the number of emails that were pushed to the agent.

num_calls_answered BIGINT For voice, num_calls_answered specifies the number of inbound calls handled by the agent.

For email, it specifies the total number of inbound emails processed by the agent in any manner (replied to, closed without reply, or transferred).

num_calls_out BIGINT For voice, num_calls_out specifies the number of initiated outbound calls.

For email, it specifies the number of outbound emails that were sent by this agent. Outbound emails include unsolicited emails and possible additional responses to inbound emails that previously received a reply.

num_calls_answered_outbound BIGINT Number of outbound calls handled by the agent
num_calls_agent_abandoned BIGINT Reserved
num_calls_rejected BIGINT Number of inbound or predictive outbound calls the agent rejected
num_calls_no_answer BIGINT For voice, num_calls_no_answer specifies the number of inbound or predictive outbound calls the agent did not answer within the specified No Answer timeout.

For email, it specifies the number of emails that were pushed to the agent and were explicitly rejected (i.e., returned to the queue or to the transferring agent). This excludes emails that went into agent’s My Queue.

num_calls_graded BIGINT Number of calls handled by the agent that were graded
num_initiated_transfers BIGINT For voice, num_initiated_transfers specifies the number of transfers made by the agent.

For email, it specifies the number of emails transferred by the agent to any other resource.

total_login_time BIGINT Total time the agent was logged on during the aggregation interval (the sum of all times in states indicating that the agent was logged in)
total_working_time BIGINT Total time that the agent spent handling calls or being ready to handle calls during the aggregation interval (the sum of times in Talk, Hold, After-Call Work and Ready states)
total_ready_time BIGINT Total time the agent spent in the Ready state during the aggregation interval
total_handling_time BIGINT Reserved
total_handling_call_time BIGINT Reserved
total_handling_call_time_in BIGINT The sum of talk and hold times for inbound calls; includes ringing time
total_handling_call_time_out BIGINT The sum of talk and hold times for outbound calls; includes dialing time
total_handling_acw_time BIGINT Reserved
total_handling_acw_time_in BIGINT For voice, total_handling_acw_time_in specifies the sum of after-call work times for inbound calls.

For email, it specifies the total time the agent spent doing after call work related to emails. It includes only the emails that have received an agent's reply.

total_handling_acw_time_out BIGINT The sum of after-call work times for outbound calls
total_busy_time_in BIGINT total_busy_time_in specifies the sum of times the agent was busy with inbound calls.

It includes hold times, but it does not include ringing time or after call work time.

total_busy_time_out BIGINT total_busy_time_out specifies the sum of times the agent was busy with outbound calls.

It includes hold times, but it does not include dialing time or after call work time.

For email, this is the sum of times that the agent was busy with outbound emails. Outbound emails include unsolicited emails and possible additional responses to inbound emails that previously received a reply.

total_ringing_time_in BIGINT The sum of ringing times for inbound calls delivered to the agent (between call initiation and either remote party answer or abandonment)
total_ringing_time_out BIGINT The sum of ringing times for outbound calls initiated by the agent (between call initiation and either remote party answer or abandonment)
total_acw_time_in BIGINT Reserved
total_acw_time_out BIGINT Reserved
total_hold_time_in BIGINT For voice, total_hold_time_in specifies the sum of hold times for inbound calls.

For email, it specifies the total time emails spent in an inactive state on the agent desktop. It includes only the emails that have received an agent reply.

total_hold_time_out BIGINT The sum of hold times for outbound calls
num_surveys BIGINT Number of surveys available for calls handled by this agent
num_surveys_with_cs BIGINT Number of surveys where the agent has responded to the contact satisfaction question
num_surveys_with_nps BIGINT Number of surveys where a response has been given for the net promoter score question
num_surveys_with_fcr BIGINT Number of surveys where a response has been given for the first-call resolution question
cs BIGINT The sum of contact satisfaction marks for all surveys where a response has been given for the contact satisfaction question
nps BIGINT The sum of net promoter score points for all surveys where a response has been given for the contact satisfaction question
num_fcr BIGINT Number of surveys that indicated first-call resolution relative to the total number of surveys where a response has been given for the first-call resolution question
grade_name VARCHAR Name of the call grading category
grade_count BIGINT Number of calls handled by the agent that received any grades in the category specified in grade_name
grade_total_value BIGINT The sum of all grades for the calls counted in grade_count
grade_order_num INT The order in which the category specified in grade_name is supposed to appear in reports relative to the other grading categories (as defined in configuration)
not_ready_reason VARCHAR Not Ready reason as defined in configuration
not_ready_time BIGINT Total time the agent spent in the Not Ready state with the reason specified in not_ready_reason
num_emails_pulled BIGINT Number of inbound emails that the agent pulled from the service queue
num_emails_received_as_transfers BIGINT Number of inbound emails that were transferred to the agent
num_emails_replied_by_agent BIGINT This is the number of emails that have received an agent reply. It includes only the first meaningful response.

Note that only the first response is counted.

Possible follow-up email messages related to previously replied emails are considered outbound emails and are counted in the num_calls_out field.

num_emails_closed_without_reply BIGINT Number of inbound emails that this agent closed without reply
num_emails_discarded BIGINT Number of outbound emails that this agent initiated and subsequently discarded without sending
email_answer_time BIGINT email_answer_time is the total time this agent spent replying to inbound emails.

The time is measured from the moment an email arrives at the agent desktop to the moment when the first meaningful response leaves the agent's My Queue.

num_emails_in_carried_over BIGINT Number of inbound emails that were delivered to this agent by any method before the given reporting interval and remained unprocessed at the beginning of the interval.
num_emails_in_waiting_

in_personal_queues

BIGINT Number of inbound emails that were in the agent’s My Queue at the end of the interval
num_emails_out_waiting_in_

personal_queues

BIGINT Number of outbound emails that were in the agent’s My Queue at the end of the interval
num_emails_in_service_changed BIGINT Number of inbound emails to the given service that the agent recategorized (i.e., assigned another service to them and continued their processing)
num_emails_in_waiting_in_

personal_queues_breached_sla

BIGINT Number of inbound emails remaining in the agent’s My Queue at the end of the interval that breached SLA (i.e., the emails whose time in the system exceeded the service level threshold configured for the given service)


< Previous | Next >

team_performance

The team_performance table is currently not used. If any team-level metrics are desired in custom reports, such metrics can be obtained by combining the corresponding data from the agent_performance table for all team members selected using the team_name field.


< Previous | Next >

service_in_time_counters

This table contains general metrics for all services defined in your contact center configuration.

Note the following:


Description of Data

The following table offers the name (i.e., ID), data type (e.g., BIGINT, BINARY, BIT, DATETIME, ENUM, INT, VARCHAR, etc.), and description for each metric (i.e., column) of the service_in_time_counters table.


Column Name Data Type Description
id BINARY (16) Primary key
agg_run_id BINARY (16) Aggregator run that produced this record
start_time DATETIME Start time of the aggregation interval; time is given in Universal Coordinated Time (UTC)
end_time DATETIME End time of the aggregation interval; time is given in Universal Coordinated Time (UTC)
service_name VARCHAR Name of the service as defined in service configuration
destination_phone VARCHAR destination_phone specifies the access number for this service as defined in the Dial-in Scenario Entry associated with service. If a service is associated with multiple access numbers, metrics specified in this table will be provided for each access number separately.
team_name VARCHAR team_name is the name of the team that handled calls associated with this service.

This field is empty for the service metrics that are not team specific.

If several teams handled calls associated with the service, the team metrics will be provided for each team separately.

media_type ENUM This is the media type of this service.

Possible values include VOICE, CHAT, and EMAIL.

If set to CHAT, any call mentioned in this table shall be interpreted as a service chat interaction in the same context.

num_calls_received BIGINT For voice, num_calls_received specifies the number of received service calls.

For email, it specifies the number of received service emails, including new emails and emails related to existing thread.

For new emails only, see num_emails_received_new.

num_calls_received_as_transfers BIGINT For voice, this specifies the number of service calls received as transfers.

For email, it specifies the number of service emails received as transfers.

num_calls_received_as_transfers_

from_same_service

BIGINT Number of service calls received as transfers from the same service
num_calls_received_as_transfers_

from_other_service

BIGINT Number of service calls received as transfers from different services
num_calls_queued BIGINT Number of service calls that were queued
num_calls_answered BIGINT For voice, this specifies the number of service calls that were answered (i.e., the agent answered while the Connect Call block was executing).

For email, it specifies the number of inbound service emails processed in any manner (replied to, closed without reply, transferred, or service changed).

num_calls_transferred_internally BIGINT For voice, this specifies the number of service calls that were answered and then transferred to another internal number (queue or extension).

For email, it specifies the number of service emails that were transferred.

num_calls_transferred_externally BIGINT Number of service calls that were answered and then transferred to an external number
answer_time BIGINT Total answer time for all calls counted in num_calls_answered
num_calls_abandoned BIGINT Total number of service calls that were abandoned at any time after entering the queue
num_calls_abandoned_after_threshold BIGINT This specifies the number of service calls that were abandoned outside of the Service Level threshold (i.e., after the time set by parameter Within threshold in service configuration).

It includes the calls that were abandoned while ringing.

num_calls_abandoned_in_ivr BIGINT Number of service calls that were abandoned before entering the queue (i.e., while still at the IVR stage)
num_calls_self_service BIGINT Number of service calls that were serviced by an IVR application (as indicated by execution of scenario block Self-Service Provided)
num_calls_in_service_level BIGINT For voice, this specifies the number of service calls that were answered within the Service Level threshold (i.e., within the time set by parameter Within threshold in service configuration).

For email, number of inbound emails that were replied to within the Service Level threshold. Note that for service level purposes, the reply time excludes the hours when the service was closed according to the configured HOP.

num_overflow_calls BIGINT Number of service calls that were distributed to overflow destinations
num_calls_held BIGINT Number of service calls that were held at any time during their handling
num_calls_recv_as_transfers_

answered

BIGINT Number of service calls received as transfers that were answered
num_calls_recv_as_transfers_

in_service_level

BIGINT Number of service calls received as transfers that were answered within the Service Level threshold (i.e., within the time set by parameter Within threshold in service configuration)
num_calls_recv_as_transfers_

abandoned

BIGINT Number of service calls received as transfers that were abandoned
num_calls_recv_as_transfers_

abandoned_in_ivr

BIGINT Number of service calls received as transfers that were abandoned before entering the queue (i.e., while still at the IVR stage)
num_calls_recv_as_transfers_

abandoned_after_threshold

BIGINT This specifies the number of service calls received as transfers that were abandoned outside of the Service Level threshold (i.e., after the time set by parameter Within threshold in service configuration).

Includes the calls that were abandoned while ringing.

num_calls_recv_as_transfers_

queued

BIGINT Number of service calls received as transfers that were queued
num_calls_recv_as_transfers_held BIGINT Number of service calls received as transfers that were held at any time during their handling
num_calls_queued_answered BIGINT This specifies the number of queued service calls that were answered. "Queued" means the scenario went through the Find Agent scenario block with appropriate service requested and regardless of service level.

Unlike num_calls_answered, this metric counts only calls that passed through the given service queue.

answer_time_queued BIGINT Total answer time for all calls counted in num_calls_queued_answered
num_calls_queued_abandoned BIGINT This specifies the number of queued service calls that were abandoned. "Queued" means the scenario went through the Find Agent scenario block with appropriate service requested and regardless of service level.

Unlike num_calls_abandoned, this metric counts only calls that passed through the given service queue.

num_calls_queued_abandoned_

after_threshold

BIGINT This metric specifies the number of queued service calls that were abandoned outside of the Service Level threshold (i.e., after the time set by parameter Within threshold in service configuration).

It includes the calls that were abandoned while ringing. Unlike num_calls_abandoned_after_threshold, this metric counts only calls that passed through the given service queue.

num_calls_queued_in_service_level BIGINT This specifies the number of queued service calls that were answered within the Service Level threshold (i.e., within the time set by parameter Within threshold in service configuration).

Unlike num_calls_in_service_level, this metric counts only calls that passed through the given service queue.

num_calls_queued_held BIGINT This metric specifies the number of queued service calls that were held at any time during their handling.

Unlike num_calls_held, this metric counts only calls that passed through the given service queue.

abandonment_time_queued BIGINT Total abandonment time for all calls counted in num_calls_queued_abandoned
abandonment_time_after_

threshold_queued

BIGINT Total abandonment time for all calls counted in num_calls_queued_abandoned_after_threshold
abandonment_time BIGINT Total abandonment time for all calls counted in num_calls_abandoned
abandonment_time_after_threshold BIGINT Total abandonment time for all calls counted in num_calls_abandoned_after_threshold
total_duration_in BIGINT This specifies the sum of total durations of inbound service calls.

It includes time in IVR, queue, as well as ringing, talk, and hold times.

It does not include after-call work time.

busy_time_in BIGINT Total talk and hold time for inbound service calls
busy_time_out BIGINT Total talk and hold time for outbound calls excluding campaign calls
acw_time BIGINT Total after-call work time for inbound and outbound service calls excluding campaign calls
acw_time_in BIGINT Total after-call work time for inbound service calls
acw_time_out BIGINT Total after-call work time for outbound service calls excluding campaign calls
hold_time_in BIGINT Total hold time for inbound service calls
hold_time_out BIGINT Total hold time for outbound service calls excluding campaign calls
ringing_time_in BIGINT Total ringing time for inbound service calls
ringing_time_out BIGINT Total dialing time for outbound service calls excluding campaign calls (time from the moment an outbound call is initiated till it is answered by the remote party)
num_calls_outbound BIGINT This specifies the number of outbound calls that were made with respect to this service.

It does not include campaign calls.

For email, num_calls_outbound specifies the number of outbound emails that were sent. Outbound emails include unsolicited emails and possible additional responses to inbound emails that previously received a reply.

num_calls_answered_outbound BIGINT This specifies the number of outbound calls made with respect to this service that were answered.

It does not include campaign calls.

num_calls_held_outbound BIGINT This metric specifies the number of answered outbound calls made with respect to this service that were held by agents at any time during their handling. It does not include campaign calls.
ready_time BIGINT Total time in the Ready state for all team agents within the aggregation interval
not_ready_time BIGINT Total time in the Not Ready state for all team agents within the aggregation interval
login_time BIGINT Total login time for all team agents within the aggregation interval
handling_time BIGINT This metric specifies the total handling time for calls of the given service/campaign handled by all team agents within the aggregation interval.

It includes talk, hold, and after-call work time.

handling_call_time BIGINT This specifies the total on-call time for calls of the given service/campaign handled by all team agents within the aggregation interval.

It includes ringing/dialing, talk, and hold time.

handling_acw_time BIGINT Total after-call work time for calls of the given service/campaign handled by all team agents within the aggregation interval
assigned_handling_call_time BIGINT This metric specifies the total handling time for all calls handled by all team agents within the aggregation interval.

It includes talk, hold, and after-call work time.

assigned_handling_acw_time BIGINT Total after-call work time for all calls handled by all team agents within the aggregation interval
min_agents BIGINT Minimum number of agents possessing this service skill who were simultaneously logged on within the aggregation interval
max_agents BIGINT Maximum number of agents possessing this service skill who were simultaneously logged on within the aggregation interval
campaign_calls_attempted BIGINT Number of campaign calls that were attempted
campaign_dialer_calls_queued BIGINT Reserved
campaign_dialer_calls_handled BIGINT Reserved
campaign_calls_live_answered BIGINT For Preview campaigns: Number of campaign calls that were answered by the called party


For Predictive, Progressive, and Automatic campaigns: The CPA result "VOICE"
Note: If CPA is disabled in the configuration, the result will be "NULL" and then all calls are counted as they are for Preview campaigns.

campaign_calls_queued BIGINT Number of campaign calls that were queued
campaign_calls_abandoned BIGINT Number of campaign calls that were abandoned (terminated by the remote party while waiting in queue to be connected to an agent)
campaign_calls_handled BIGINT Number of campaign calls that were handled by agents
campaign_calls_held BIGINT Number of campaign calls that were held any number of times during their handling
campaign_calls_rpc BIGINT Reserved
campaign_records_completed BIGINT Number of campaign records completed within the reporting interval, including the records for which no attempts were made because of DNC match or filter exclusion
campaign_records_valid BIGINT Number of campaign records completed within the reporting interval except the ones counted in campaign_records_excluded
campaign_records_dialed BIGINT Number of campaign records completed within the reporting interval for which at least one number was dialed
campaign_records_queued BIGINT Number of campaign records completed within the reporting interval for which at least one call was queued
campaign_records_handled BIGINT Number of campaign records completed within the reporting interval for which at least one call was handled by an agent
campaign_records_excluded BIGINT Number of campaign records completed within the reporting interval for which no attempts were made because of DNC match or filter exclusion
campaign_records_rpc BIGINT Reserved
campaign_ivr_time BIGINT Total IVR time for campaign calls (the sum of times spent in an IVR application)
campaign_queue_time BIGINT Total queue time for campaign calls (the sum of times between entering the queue and exiting the queue in any manner for all campaign calls that were queued)
campaign_abandonment_time BIGINT Total abandonment time (the sum of times between entering the queue and being abandoned by remote party for all campaign calls that were abandoned or dropped)
campaign_answer_time BIGINT Total answer time (the sum of times between entering the queue and being picked up by agents for all campaign calls that were connected to agents)
campaign_talk_time BIGINT Total talk time for campaign calls (the sum of times between the moments of being established and being released)
campaign_hold_time BIGINT Total hold time for campaign calls (the sum of all hold times for all handled campaign calls)
campaign_acw_time BIGINT Total after-call work time for campaign calls (the sum of times between the moment of release and the end of after-call work)
campaign_handling_call_time BIGINT Reserved
campaign_handling_acw_time BIGINT Reserved
campaign_assigned_handling_

call_time

BIGINT Reserved
campaign_assigned_handling_

acw_time

BIGINT Reserved
num_surveys BIGINT Number of surveys available for calls handled for this service/campaign
num_surveys_with_cs BIGINT Number of surveys where a response was given for the contact satisfaction question
num_surveys_with_nps BIGINT Number of surveys where a response was given for the net promoter score question
num_surveys_with_fcr BIGINT Number of surveys where a response was given for the first-call resolution question
cs BIGINT The sum of contact satisfaction marks for all surveys where a response was given for the contact satisfaction question
nps BIGINT The sum of net promoter score points for all surveys where a response was given for the contact satisfaction question
num_fcr BIGINT Number of surveys that indicated first-call resolution relative to total number of surveys where a response was given for the first-call resolution question
campaign_calls_unattended BIGINT Number of campaign calls that were answered at destination and subsequently either diverted to an IVR at any time, or dropped at any time, or connected to an agent with time exceeding two seconds
campaign_preview_items BIGINT Number of preview records associated with the given campaign that were delivered to agents
campaign_preview_time BIGINT This metric specifies the total time spent by agents working on preview records associated with the given campaign.

It does not include call time.

num_emails_replied_by_agent BIGINT This specifies the number of emails that were replied to by agents.

Note that only the first meaningful response is counted as a reply.

Possible follow-up message in response to the same incoming email are counted as outbound emails.

num_emails_closed_

without_reply

BIGINT Number of emails that were closed by agents without reply
email_routing_time BIGINT This metric specifies the total time that emails spent in the service queue before being pushed to agents or pulled by agents.

The time is counted only for emails that were both received and routed within the given interval.

email_reply_time BIGINT This specifies the total reply time for all emails that received a reply.

The reply time of a single email is counted from the moment the email is placed in the service queue to the moment when the first meaningful response is sent.

num_emails_received_new BIGINT This specifies the number of new emails that arrived at this service during the given reporting interval.

It excludes emails related to existing threads.

Note that the total number of received emails, which includes both new emails and emails related to existing email threads, is reported in column num_calls_received.

num_emails_carried_over BIGINT This specifies the number of emails that arrived at this service at any time before the given reporting interval and remained unprocessed at the beginning of the interval.

It includes both new emails and emails related to existing threads.

Note that unlike other metrics, this number is calculated only once in 24 hours.

num_emails_carried_over_new BIGINT This metric specifies the number of new emails that arrived at this service at any time before the given reporting interval and remained unprocessed at the beginning of the interval.

It excludes emails related to existing threads.

Note that unlike other metrics, this number is calculated only once in 24 hours.

num_emails_remaining_in_

personal_queues

BIGINT This metric specifies the number of emails associated with this service that remained in agents’ My Queue at the end of the interval.

It does not include emails that were being actively processed at the end of the interval.

num_emails_in_progress BIGINT Number of emails associated with this service that were being actively processed at the end of the interval (i.e., displayed in active communications lists of agents’ desktops)
num_emails_service_changed BIGINT Number of inbound emails that were recategorized by agents (i.e., the agent changed this service to another email service and continued processing the interaction)
num_emails_service_change_received BIGINT Number of inbound emails that were received via manual recategorization (i.e., the agent changed a previously assigned service to this service and continued processing the email)
num_emails_remaining_in_

personal_queues_breached_sla

BIGINT Number of emails remaining in agents’ personal queues at the end of the interval that breached the service level (i.e., the emails whose time in the system exceeded the service level threshold configured for the given service)



service_performance

service_performance metrics are a subset of metrics derived from the service_in_time_counters table.

Such metrics are maintained only in order to support existing service-related custom reports designed prior to the release of Bright Pattern Contact Center version 3.5.2. All service_performance metrics are available in the service_in_time_counters table, which is recommended for the development of any new service-related reports.



overflow_counters

This table contains metrics for the distribution of inbound interactions among various routing targets, including overflow destinations. The metrics are provided for all services defined in your contact center configuration. Note that if a service can be accessed via multiple access numbers, the metrics are provided for each access number separately.

Unless noted otherwise with respect to a particular metric, any call mentioned in this table shall be interpreted as a call that requested the service specified in the service_name field.


Description of Data

The following table offers the name (i.e., ID), data type (e.g., BIGINT, BINARY, BIT, DATETIME, ENUM, INT, VARCHAR, etc.), and description for each metric (i.e., column) of the overflow_counters table.


Column Name Data Type Description
id BINARY (16) Primary key
start_time DATETIME Start time of the aggregation interval; time is given in Universal Coordinated Time (UTC)
end_time DATETIME End time of the aggregation interval; time is given in Universal Coordinated Time (UTC)
agg_run_id BINARY (16) Aggregator run that produced this record
service_name VARCHAR Name of the service as defined in service configuration
destination_phone VARCHAR destination_phone specifies the access number for this service as defined in the Dial-in Scenario Entry associated with service.

If a service is associated with multiple access numbers, metrics specified in this table will be provided for each access number separately.

routed_to VARCHAR routed_to refers to the target destination to which the calls were routed, the name of the team for internally routed calls, and/or the external number for externally routed calls.

If calls were routed to multiple destinations, metrics specified in this table will be provided for each destination separately.

is_overflow BIT TRUE if the given destination is an overflow destination
no_team BIT TRUE if the given destination is an external number; FALSE if the given destination is a team
media_type ENUM This is the interaction media type.

Possible values include VOICE, CHAT, and EMAIL.

If set to CHAT, any call mentioned in this table shall be interpreted as a service chat interaction in the same context.

num_calls_received BIGINT Total number of calls that requested this service and were routed to the given destination
num_calls_answered BIGINT Number of calls that were answered at the given destination
num_calls_abandoned_

after_threshold

BIGINT This metric specifies the number of calls that abandoned while ringing after being routed to the given destination.

It includes only calls that were abandoned outside of the configured service level threshold.

handling_time BIGINT Total time that the answered calls were handled at the given destination (the sum of talk, hold, and after-call work times)



disposition_counters

Each row in the disposition_counters table provides metrics for interactions associated with the service specified in the service_name field whose processing ended with a particular disposition.


Description of Data

The following table offers the name (i.e., ID), data type (e.g., BIGINT, BINARY, BIT, DATETIME, ENUM, INT, VARCHAR, etc.), and description for each metric (i.e., column) of the disposition_counters table.


Column Name Data Type Description
id BINARY (16) Primary key
start_time DATETIME Start time of the aggregation interval; time is given in Universal Coordinated Time (UTC)
end_time DATETIME End time of the aggregation interval; time is given in Universal Coordinated Time (UTC)
agg_run_id BINARY (16) Aggregator run that produced this record
service_name VARCHAR Name of the service as defined in service configuration
disposition_name VARCHAR Disposition name
is_campaign BIT Services of blended type will have two rows of metrics: one where this bit is set to TRUE, counting campaign calls only; the other row with this bit set to FALSE, counting inbound and non-campaign outbound calls
media_type ENUM media_type specifies the interaction media type.

Possible values include VOICE, CHAT, and EMAIL.

If set to CHAT, any call mentioned in this table shall be interpreted as a service chat interaction in the same context.

num_records_completed BIGINT Number of outbound calling records associated with the given service that were completed with the disposition specified in the disposition_name field
num_calls_received BIGINT This metric specifies the number of calls associated with the given service received by agents whose processing ended with the disposition specified in the disposition_name field.

This included predictive campaign calls.

num_calls_outbound BIGINT This metric specifies the number of outbound calls associated with the given service whose processing ended with the disposition specified in the disposition_name field.

It includes regular outbound calls and calls of preview campaign calls that were actually dialed by agents.

num_preview_items BIGINT Number of preview records completed by agents without making a call with the disposition specified in the disposition_name field
num_campaign_calls BIGINT Number of campaign calls associated with the given service whose processing ended with the disposition specified in the disposition_name field
num_non_campaign_

calls_inbound

BIGINT Number of inbound calls associated with the given service whose processing ended with the disposition specified in the disposition_name field, excluding predictive campaign calls
num_non_campaign_

calls_outbound

BIGINT Number of non-campaign outbound calls associated with the given service whose processing ended with the disposition specified in the disposition_name field



callback_counters

The callback_counters table provides metrics about calls that selected the virtual queue option and about the related callback attempts.

Unless noted otherwise with respect to a particular metric, any callback mentioned in this table shall be interpreted as a callback attempt made with respect to the service specified in the service_name field. Note that callback attempts are counted for the aggregation intervals in which the inbound calls that produced the associated callback requests entered the system.


Description of Data

The following table offers the name (i.e., ID), data type (e.g., BIGINT, BINARY, BIT, DATETIME, ENUM, INT, VARCHAR, etc.), and description for each metric (i.e., column) of the callback_counters table.


Column Name Data Type Description
id BINARY (16) Primary key
start_time DATETIME Start time of the aggregation interval; time is given in Universal Coordinated Time (UTC)
end_time DATETIME End time of the aggregation interval; time is given in Universal Coordinated Time (UTC)
agg_run_id BINARY (16) Aggregator run that produced this record
service_name VARCHAR Name of the service as defined in configuration
num_calls_queued BIGINT Total number of calls that requested the given service and were queued
num_callbacks_requested BIGINT Number of queued calls that requested callbacks (i.e., selected the virtual queue option)
num_callbacks_attempted BIGINT Number of callbacks that were attempted
num_callbacks_busy BIGINT Number of callbacks that failed because the called party was busy
num_callbacks_no_answer BIGINT Number of callbacks that failed because the called party did not answer
num_callbacks_answered BIGINT Number of callbacks that were answered by the called party
num_callbacks_requeued BIGINT Number of callbacks that were re-queued after the initial unsuccessful attempt
num_callbacks_abandoned BIGINT Number of callbacks that were answered by customers and then abandoned by them while waiting for an agent (in queue or ringing)
num_callbacks_handled BIGINT Number of callbacks that were handled by agents
callback_wait_time BIGINT This metric specifies the total callback wait time, as well as the sum of times between the callback requests and the related initial callback attempts.
callback_customer_answer_time BIGINT This metric specifies the total callback answer time, as well as the sum of times between the moments when callback attempts were initiated and the customers answered them.
callback_agent_answer_time BIGINT This metric specifies the total callback connection time, as well as the sum of times between the moments when customers answered callback attempts and were connected to the agents.



requested_skills

The requested_skills table contains metrics for interactions that requested a specific skill.

Unless noted otherwise with respect to a particular metric, any call mentioned in this table shall be interpreted as a call that requested the skill specified in the skill_name field.


Description of Data

The following table offers the name (i.e., ID), data type (e.g., BIGINT, BINARY, BIT, DATETIME, ENUM, INT, VARCHAR, etc.), and description for each metric (i.e., column) of the requested_skills table.


Column Name Data Type Description
id BINARY (16) Primary key
start_time DATETIME Start time of the aggregation interval; time is given in Universal Coordinated Time (UTC)
end_time DATETIME End time of the aggregation interval; time is given in Universal Coordinated Time (UTC)
agg_run_id BINARY (16) Aggregator run that produced this record
media_type ENUM This is the interaction media type.

Possible values include VOICE, CHAT, and EMAIL.

If set to CHAT, any call mentioned in this table shall be interpreted as a service chat interaction in the same context.

skill_name VARCHAR Skill name as defined in configuration
skill_group_name VARCHAR Name of the skill group that the skill belongs to as defined in configuration
skill_type ENUM This is the skill type.

Possible values include the following:

  • SERVICE – Primary service skill (a skill that is created automatically for each new service)
  • SKILL – Auxiliary skill (a skill that is not directly associated with any particular service)
total_answer_time BIGINT Total answer time (the sum of times between the moments the calls entered queue and were answered by agents)
num_calls_received BIGINT Total number of received calls
num_calls_queued BIGINT Number of calls that were queued
num_calls_answered BIGINT Number of calls that were answered
num_calls_overflow BIGINT Number of calls that were distributed to overflow destinations



scenario_steps_counters

Each row of the scenario_steps_counters table counts the number of times a specific block of the scenario specified in the scenario_name field was executed with a specific result during the aggregation interval.

An example of table content for the scenario_steps_counters table is shown.


Example of scenario_steps_counters table


Description of Data

The following table offers the name (i.e., ID), data type (e.g., BIGINT, BINARY, BIT, DATETIME, ENUM, INT, VARCHAR, etc.), and description for each metric (i.e., column) of the scenario_steps_counters table.

Column Name Data Type Description
id BINARY (16) Primary key
agg_run_id BINARY (16) Aggregator run that produced this record
start_time DATETIME Start time of the aggregation interval; time is given in Universal Coordinated Time (UTC)
end_time DATETIME End time of the aggregation interval; time is given in Universal Coordinated Time (UTC)
scenario_name VARCHAR Name of the service as defined in configuration
block_type VARCHAR Type of scenario block
block_title VARCHAR Block title as defined in scenario
exit_id VARCHAR Block exit identifier
caller_disconnect BIT TRUE if the interaction was disconnected by the remote party while this block was executed
num_steps BIGINT Number of times the block specified in the block_title field was executed with the given result (either the exit specified in the exit_id field or abandoned by the caller as indicated by the caller_disconnect field)



concurrent_users

The concurrent_users table tracks the number of users that were using the system at any moment in the past. A new row is added every time when a number of logged in users changes from a non-zero value (i.e., when a non-first user logs in or any user logs out), but not more frequently than once a minute. (After a first login/logout within a given minute, all subsequent logins/logouts that happen within that same minute will be aggregated and written as a single record one minute after.) A new record is also created unconditionally at the configured Reset time for daily statistics.


Description of Data

The following table offers the name (i.e., ID), data type (e.g., BIGINT, BINARY, BIT, DATETIME, ENUM, INT, VARCHAR, etc.), and description for each metric (i.e., column) of the concurrent_users table.


Column Name Data Type Description
num_users INT Number of users that were logged into the system in the interval specified by start_time and end_time
users JSON array This is a list of usernames of users that were logged into the system in the interval specified by start_time and end_time.

Users are specified as JSON array of [username1, username2, … usernameN] where N = num_users.

start_time TIMESTAMP Start time of the interval for which the num_users and users data in this record remains valid.

Time is given in Universal Coordinated Time (UTC), and the time is rounded to a minute.

Note that it is normal for this time to differ by a few seconds from the time of state changes reported in the agent_activity table.

end_time TIMESTAMP End time of the interval for which the num_users and users data in this record remains valid.

Time is given in Universal Coordinated Time (UTC), and the time is rounded to a minute.

Note that it is normal for this time to differ by a few seconds from the time of state changes reported in the agent_activity table.



General Information About Detailed Records

The tables specified in this section contain detailed information about all agent activities and all interactions that either entered, or were initiated from, the Bright Pattern Contact Center system. The data in these tables can be used, for example, for quality management tasks, which require searching for specific interactions based on combinations of specific criteria. These data can also be used for developing custom metrics that are not available from the aggregation tables specified in the previous sections.

Detailed records are created from the raw event data that is initially written to the collector database (DB1) in real-time by various Bright Pattern Contact Center components. This raw data is periodically extracted by the Aggregator component, transformed into records, and loaded into the tables of the Reporting Database (DB2). The standard aggregation period is 15 minutes; therefore, under normal circumstances, the data in the detailed records for completed interactions and agent activities appear in these tables with a maximum delay of 15 minutes.

Note: All duration values in detailed records are calculated by subtracting the number of full calendar seconds in the start time form the same number in the end time (i.e., milliseconds are disregarded). The time is given in Universal Coordinated Time (UTC).

Consider these examples:



agent_activity

Each row of the agent_activity table contains a set of data related to a single agent activity. For interaction-handling activities, this data includes some basic aggregates, such as the agent’s talk time and hold time. Note that a single agent activity spanning multiple aggregation intervals will be reported separately for each aggregation interval that it spans, and all time-related metrics will count the time within the given interval only. For reporting purposes, time-related metrics of the activities that span multiple intervals can be combined using the activity_id field.

Unless noted otherwise with respect to a particular metric, any call mentioned in this table shall be interpreted as a call that was handled by the agent identified by the login_id field during the given activity.


Description of Data

The following table offers the name (i.e., ID), data type (e.g., BIGINT, BINARY, BIT, DATETIME, ENUM, INT, VARCHAR, etc.), and description for each metric (i.e., column) of the agent_activity table.


Column Name Data Type Description
id BINARY (16) Reserved
pkid INT Primary key
activity_id BINARY (16) activity_id is the unique identifier assigned to the activity.

If a single activity lasts through several adjacent aggregation intervals, it will have the same value of activity_id in each of those intervals.

login_id VARCHAR Agent login as defined in configuration
first_name VARCHAR Agent first name as defined in configuration
last_name VARCHAR Agent last name as defined in configuration
team_name VARCHAR Name of the team that the agent is assigned to as defined in configuration
rank VARCHAR Agent rank as defined in configuration
agg_run_id BINARY (16) Aggregator run that produced this record
start_time DATETIME Activity start time; time is given in Coordinated Universal Time (UTC)
activity ENUM activity is the activity type.

Possible values include INBOUND_CALL, LOGIN, LOGOUT, OUTBOUND_CALL, NOT_READY, PREVIEW, READY, and SUPERVISION.

Note the following:

  • Handling of both preview and predictive campaign calls is reported as activity OUTBOUND_CALL. Only the record preview phase (time before dialing begins) is reported as PREVIEW activity for agents participating in preview campaigns.
  • Time spent doing after-call work is reported as part of INBOUND_CALL and OUTBOUND_CALL activities.
  • Internal calls received by the agent are reported as activity INBOUND_CALL.
  • Internal calls made by the agent are reported as activity OUTBOUND_CALL.
  • The Supervisor state of "Supervising" in the Agent Desktop is reported as activity SUPERVISION.
  • Value of the other_party_phone_type field can be used to distinguish between service and internal calls.
  • Handling of a service chat is reported as activity INBOUND_CALL.
  • Handling of an inbound email is reported as activity INBOUND_CALL.
  • Handling of a follow-up or unsolicited email is reported as activity OUTBOUND_CALL.
  • The value of the media_type and/or service_name field can be used to distinguish between interactions of different media types.
duration BIGINT Activity duration within the aggregation interval.
detail VARCHAR For activity type NOT_READY, detail specifies the Not Ready reason.

For activity type OUTBOUND_CALL, detail specifies the login ID of the called party if the call was made internally and was answered.

pending_time BIGINT For activity type INBOUND_CALL, pending_time specifies the duration of the call ringing phase from the moment the call was distributed to this agent and until it was either answered or abandoned.

For activity type OUTBOUND_CALL, pending_time specifies the duration of the call dialing phase from the moment the number dialed by the agent was received by the system and until the call was either answered or abandoned.

talk_time BIGINT talk_time is the total talk time for activity types INBOUND_CALL and OUTBOUND_CALL within the aggregation interval.

It does not include hold times.

hold_time BIGINT Total hold time for activity types INBOUND_CALL and OUTBOUND_CALL within the aggregation interval
acw_time BIGINT After-call work time for activity types INBOUND_CALL and OUTBOUND_CALL within the aggregation interval
service_name VARCHAR For activity types INBOUND_CALL and OUTBOUND_CALL, service_name is the name of the service associated with the call.

It is not specified for internal calls.

For services of media type chat, any call mentioned in this table shall be interpreted as a service chat interaction in the same context.

origination_number VARCHAR For activity types INBOUND_CALL and OUTBOUND_CALL, the phone number from which the call was made.
destination_number VARCHAR For activity types INBOUND_CALL and OUTBOUND_CALL, the phone number dialed by the party that initiated the call.
external_number VARCHAR For activity type INBOUND_CALL, external_number is the access number through which the inbound call entered the system.

For activity type OUTBOUND_CALL, external_number is the Caller ID assigned to the outbound call.

other_party_phone_type ENUM For activity types INBOUND_CALL and OUTBOUND_CALL, other_party_phone_type specifies the location of the remote party on the call.

Possible values include INTERNAL and EXTERNAL.

disposition ENUM For activity types INBOUND_CALL and OUTBOUND_CALL, disposition specifies how the call-handling activity ended.

The term call in the following descriptions indicates that the given value may be applicable to calls and chats.

Possible values include the following:

  • CALLER_TERMINATED – Call terminated by the party that made the call
  • CALLEE_TERMINATED – Call terminated by the party that answered the call
  • REJECTED – Agent rejected the incoming call
  • ABANDONED – For inbound calls, abandoned by the remote party while ringing at the agent desktop; for outbound calls, terminated by the agent before it was answered by the remote party
  • TRANSFERRED – Agent transferred the interaction
  • CONFERENCED – Call became a conference (the conference phase is reported a separate activity)
  • SYSTEM_DISCONNECTED – Call was disconnected by the system
  • CALLER_TRANSFERRED – Remote party transferred the call (i.e., this agent stayed on the call but with another party); the after-transfer part of the call will be reported as the next activity
  • NO_ANSWER – Agent did not accept an incoming interaction
  • REPLIED – Agent replied to the email; applies to inbound emails only
  • CLOSED – Agent finished processing of the email without a reply (e.g., the email was a spam or no follow-up was necessary); applies to inbound emails only
  • SERVICE_CHANGED – Agent changed the service associated with the email and continued processing it (the after-service-change phase is reported as the next activity)
  • SAVED – Agent saved an email draft and the Busy state has ended, but the case remains in the agent's personal queue
  • SENT – Agent sent the email; applies to outbound emails only
  • DISCARDED – Agent discarded an email draft; applies to outbound emails only
agent_disposition_name VARCHAR For activity types INBOUND_CALL and OUTBOUND_CALL, the name of the disposition that the agent assigned to the call
agent_disposition_code INT For activity types INBOUND_CALL and OUTBOUND_CALL, the numerical code (if defined) of the disposition that the agent assigned to the call
agent_disposition_notes LONGTEXT For activity types INBOUND_CALL and OUTBOUND_CALL, the text notes that the agent wrote regarding the call
session_id BINARY session_id is the agent login session identifier.

A new identifier is assigned to each new LOGIN activity.

The same identifier is assigned to the corresponding LOGOUT and all READY and NOT_READY activities that happened in between.

media_type ENUM For activity types INBOUND_CALL and OUTBOUND_CALL, this is the media type of the interaction that the agent handled during this activity.

Possible values include VOICE, CHAT, and EMAIL.

case_number VARCHAR For activity types INBOUND_CALL and OUTBOUND_CALL, number of the case with which this interaction is associated; applies to emails only
email_completion_time BIGINT Email completion time from the moment the email interaction was accepted by the agent or entered his personal queue and until it was completed (including ACW if any) or transferred
held BIGINT The number of times the agent placed the call on hold during this activity; for emails and chats, the number of times the agent had the interaction out of focus during this activity)
max_hold BIGINT The duration of the longest of the number of times the agent placed the call on hold during this activity; for emails and chats, duration of the longest of the number of times the agent had the interaction out of focus during this activity
workitem_id VARCHAR Identifier of the outbound work item associated with this activity.\
call_detail_id BINARY Reference to the record in the call_detail table created for the interaction handled by the agent during this activity
has_screen_recording BIT Indication of whether agent's screen was recorded during this activity



call_detail

Each row of the call_detail table contains a set of data related to the processing of a single interaction, including some interaction-level aggregates, such as total interaction duration and total talk time. Note that the entire interaction record in this table is reported for the interval in which the corresponding interaction entered the system (for inbound interactions) or was initiated (for internal and outbound interactions), regardless of the number of intervals the interaction may have spanned. Note that for manual outbound calls, a Call Detail report is created for any call attempts that reached the carrier network (i.e., where the INVITE request was actually sent to a SIP trunk).

For emails, a record is created in this table as soon as an email arrives in the system (for inbound emails) or initiated by an agent (for outbound emails). The record is then updated every time it is saved as a draft. The record is updated and closed when the processing of the email is finished.

Except for the name of the table itself, the term call in the descriptions below indicates that the parameter applies to calls and chats. Where a parameter has the same meaning for all media types, the term interaction is used. Where a parameter applies to multiple media types with a different meaning, each media type is discussed separately.


Description of Data

The following table offers the name (i.e., ID), data type (e.g., BIGINT, BINARY, BIT, DATETIME, ENUM, INT, VARCHAR, etc.), and description for each metric (i.e., column) of the call_detail table.


Column Name Data Type Units Description
id BINARY (16) None Reserved
pkid INT None Primary key
agg_run_id BINARY (16) None Aggregator run that produced this record
media_type ENUM None media_type specifies the interaction media type with possible values of VOICE, CHAT, or EMAIL.

If set to CHAT, any call mentioned in this table shall be interpreted as a service chat interaction in the same context.

start_time DATETIME Seconds For inbound interactions, start_time specifies the date and time when the interaction entered the system.

For outbound and internal interactions, start_time specifies the date and time when the interaction was initiated.

The time is given in Universal Coordinated Time (UTC).

ivr_time BIGINT Seconds Total time the call spent in IVR
queue_time BIGINT Seconds Total time the interaction spent in the service queue
pending_time BIGINT Seconds For inbound calls, pending_time specifies the duration of call ringing phase from the moment the call was distributed to an extension and until it was either answered or abandoned. For internal and outbound calls, pending_time specifies the duration of call dialing phase from the moment the dialed number was received by the system and until the call was either answered or abandoned. It does not apply to email.
talk_time BIGINT Seconds talk_time specifies the total call talk time. It excludes hold time. For chats and emails, talk_time is the total in-focus time (the time the interaction was selected in the active communications lists of the agents who processed it).
hold_time BIGINT Seconds hold_time specifies the total time that the call spent on hold. For chats and emails, it is the total out-of-focus time (the time the interaction spent at the agents’ desktops excluding the Talk time).
acw_time BIGINT Seconds The amount of time the agents spent doing after-call work related to this interaction
duration BIGINT Seconds For calls and chats, duration is the total duration of the interaction from the moment it entered the system or was initiated and until it was released.

For inbound emails, duration is the time between the moment the email entered the system and the moment when the first meaningful response was sent (or the email was closed or transferred externally).

For outbound emails, duration is the time between the moment the email was initiated by the agent and the moment the email was sent.

Note that transferred and recategorized interactions produce multiple CDR records, where the first record shows "Duration" as empty string and the last record shows the total interaction duration.

Duration always shows calendar time (the total time between the specified moments) regardless of hours of operation of the associated service. For example, if an email was received at 4 pm and replied the next day at 10 am, the duration will show 18 hours, even if the call center was closed during the night.

service_name VARCHAR None service_name specifies the name of the service associated with the interaction. If the interaction was recategorized or transferred to a different service, each such event will produce a new record with the new service value.
scenario_name VARCHAR None scenario_name specifies the name of the scenario used to process this interaction. If the interaction was processed by multiple scenarios, the first applied scenario will appear in this field. (Other scenarios that may have been invoked from the main scenario do not affect this field.)
trunk_description VARCHAR None For inbound and outbound calls, the name of the trunk that was used to establish this call
caller_login_id VARCHAR None For outbound and internal interactions, caller_login_id specifies the login ID of the user who initiated this interaction. If the interaction was transferred, login ID of the user who initiated the transfer.
callee_login_id VARCHAR None For inbound and internal interactions, callee_login_id specifies the login ID of the user who received this interaction. If the interaction was transferred, it specifies the login ID of the user for which the interaction was last transferred.
caller_phone_type ENUM None caller_phone_type specifies the location of the party that initiated the interaction. Possible values are INTERNAL or EXTERNAL.
callee_phone_type ENUM None callee_phone_type specifies the location of the party that received the interaction. Possible values are INTERNAL or EXTERNAL.
caller_rank VARCHAR None For outbound and internal interactions, the rank of the user who initiated this interaction
callee_rank VARCHAR None For inbound and internal calls, the rank of the user who received this interaction
from_phone VARCHAR None The phone number from which the call was made, or for emails, the email address in the "From" field
original_destination_phone VARCHAR None original_destination_phone specifies the phone number that was dialed by the calling party. If the call or chat was transferred, it specifies the phone number dialed by the party that made the transfer. For emails, it is the email address used as the destination by the original sender.
connected_to_phone VARCHAR None connected_to_phone specifies the phone number of the party to which the call or chat was delivered. If the call/chat was transferred, it specifies the phone number of the party to which the call/chat was last transferred.
transferred_from_phone VARCHAR None For transferred calls and chats, the phone number from which the call/chat was last transferred
disposition ENUM None disposition specifies how the interaction ended. The term call in the descriptions below indicates that the given value may be applicable to calls and chats.

Possible values include the following:

  • CALLER_TERMINATED – Call terminated by the party that made the call (after the call was answered)
  • CALLEE_TERMINATED – Call terminated by the party that answered the call
  • TRANSFERRED – Interaction was transferred by the party who accepted it (the after-transfer phase is reported in a separate record)
  • CONFERENCED – Call became a conference (the conference phase is reported a separate call)
  • SYSTEM_DISCONNECTED – Call was terminated by the system
  • SELF_SERVICE – Requested service was provided by the IVR application (as indicated by execution of scenario block Self-Service Provided)
  • ABANDONED – Inbound call was terminated by the by the caller while processed in the IVR application (except the SELF_SERVICE case above)
  • ABANDONED_QUEUE – Inbound call was terminated by the caller while waiting in the service queue
  • ABANDONED_RINGING – Inbound or internal call was terminated by the caller after it was delivered to the called party and before it was answered (or before the No Answer timeout expired)
  • NO_ANSWER – Inbound, outbound or internal call attempt was terminated after it was delivered to the called party desktop and was not answered within the No Answer timeout
  • CALLED_PARTY_BUSY – Outbound call attempt was terminated because the called party was busy
  • NETWORK_BUSY – Outbound call attempt was terminated because of the network congestion
  • CALLER_TRANSFERRED – Call was transferred by the caller (the after-transfer phase is reported as a separate call)
  • CALLBACK_REQUESTED – Call was terminated because a callback was requested (the corresponding callback attempt is reported as a separate call)
  • REPLIED – Email was replied to; applies to inbound emails only
  • CLOSED_WITHOUT_REPLY – Processing of the email was finished without a reply (e.g., the email was a spam or no follow-up was necessary); applies to inbound emails only
  • SENT – Email was sent; applies to outbound emails only
  • DISCARDED – Email initiated and subsequently discarded without being sent; applies to outbound emails only
  • SERVICE_CHANGED – Agent changed the service associated with the email and continued processing it (the after-service-change phase is reported in a separate record)
  • CLOSED_BY_OTHER_RESPONSE – Email belongs to a resolved case with multiple incoming emails and this particular email was not replied to directly (i.e., the case was resolved by the response to another incoming email)
agent_disposition_name VARCHAR None Name of the disposition that was assigned to this interaction
agent_disposition_code INT None Numerical code (if defined) of the disposition that was assigned to this interaction
agent_disposition_notes LONGTEXT None The text note that the agent wrote regarding the interaction
reported_problem ENUM None reported_problem specifies the call quality problem as reported by the agent during this call using the report a call problem desktop control. Possible values include CALL_WENT_SILENT, CALL_DROPPED, POOR_VOICE_QUALITY, and OTHER
global_interaction_id BINARY None Global interaction identifier
initial_call_id BINARY None For transferred calls, initial_call_id is the identifier of the original interaction in the transfer sequence. It is maintained for backward compatibility only. Starting from release 3.11, use of the global_interaction_id is recommended for all interaction identification and linking purposes.
initial_start_time DATETIME Seconds For transferred calls, the start time of the original interaction in the transfer sequence; time is given in Universal Coordinated Time (UTC)
initial_service_name VARCHAR None For transferred interactions, the name of the service associated with the original interaction in the transfer sequence
initial_caller_phone_type ENUM None For transferred interaction, this is the location of the party that initiated the original interaction in the transfer sequence. Possible values include INTERNAL or EXTERNAL.
initial_callee_phone_type ENUM None For transferred interactions, this is location of the party that received the original interaction in the transfer sequence. Possible values include INTERNAL or EXTERNAL.
initial_from_phone VARCHAR None For transferred calls, the phone number from which the original call in the transfer sequence was made
initial_original_destination_phone VARCHAR None For transferred calls, this specifies the phone number that was dialed by the original calling party in the transfer sequence was made. For emails, it specifies the email address used as the destination by the original sender.
initial_connected_to_phone VARCHAR None For transferred calls, the phone number of the original party in the transfer sequence to which the call was delivered
flagged BIT None TRUE if the interaction was flagged by agent; FALSE otherwise
voice_signature BIT None TRUE if customer’s voice signature was collected during this call (i.e., the corresponding recording contains voice signature); FALSE otherwise
account_number VARCHAR None account_number gets the customer’s account number. If the calling list record that initiated this call has a list field of Account type, the value of that field will be stored here. Account numbers can be used as selection criteria in interaction records search.
caller_first_name VARCHAR None First name of the party that originated the interaction
callee_first_name VARCHAR None First name of the party that accepted the interaction
caller_last_name VARCHAR None Last name of the party that originated the interaction
callee_last_name VARCHAR None Last name of the party that accepted the interaction
caller_team_name VARCHAR None Name of the team that the agent who originated the interaction is a member of
callee_team_name VARCHAR None Name of the team that the agent who accepted the interaction is a member of
caller_monitored BIT None TRUE if the party that originated this interaction was monitored at any time during the interaction handling
callee_monitored BIT None TRUE if the party that accepted this interaction was monitored at any time during the interaction handling
caller_interaction_step_id BINARY None Identifier for the interaction segment of the party that originated this interaction
callee_interaction_step_id BINARY None Identifier for the interaction segment of the party that accepted this interaction
caller_rtp_server_id BINARY None Identifier of the RTP server that made the recording for the interaction segment of the party that originated this interaction
caller_cpa_rtp_server_id BINARY None Identifier of the RTP server that made the recording for the CPA portion of interaction segment of the party that originated this interaction
caller_cpa_recording_url VARCHAR None URL of the recording for the CPA portion of the interaction segment of the party that originated this interaction
callee_rtp_server_id BINARY None Identifier of the RTP server that made the recording for the interaction segment of the party that accepted this interaction
callee_cpa_rtp_server_id BINARY None Identifier of the RTP server that made the recording for the CPA portion of interaction segment of the party that accepted this interaction
callee_cpa_recording_url VARCHAR None URL of the recording for the CPA portion of the interaction segment of the party that accepted this interaction
caller_encryption_key_id BINARY None For internal use only.
callee_encryption_key_id BINARY None For internal use only.
detail_record_count INT None Number of segments in this interaction (i.e., number of records in the call_detail table related to this interaction)
email_id VARCHAR None Indentifier of the email interaction
email_detail_id VARCHAR None email_detail_id is the identifier of the given step in processing of the email. A single email may have several records in the call_detail table corresponding to email processing steps (e.g., before and after transfer). Such records will have the same email_id, but each will have its own email_detail_id.
email_subject VARCHAR None Content of the email subject field
email_kb_article_id VARCHAR None Identifier of the article used for replying to this email
response_email_id VARCHAR None Identifier of the article that was sent automatically to acknowledge receipt of this email
case_id VARCHAR None Identifier of the case with which this email is associated
thread_id VARCHAR None thread_id is the identifier of the email thread that this email is part of. This identifier is added to the subject of the email when the email is replied to and is used for case search during possible follow-up emails (see case_search_result).
case_number VARCHAR None case_number specifies the number of the case with which this email is associated. Unlike case_id, case number is a simple number suitable for manual processing.
case_search_result VARCHAR None For each incoming email, the system will look for possible association with an existing case using the thread_id added to the original reply.

Possible values include the following:

  • found – A unique case associated with this email was found; the case number is copied to the case_number field
  • found_mulitple – Multiple cases were found; the case_number field is not populated
  • created – No matching cases were found, a new case was created and its number is copied to the case_number field
  • error
held BIGINT None held specifies the number of times the call was placed on hold; for chats, the number of times the chat interaction was out of focus
max_hold BIGINT Seconds Duration of the longest of the number of times the call was placed on hold; for chats, the duration of the longest of the number of times the chat interaction was out of focus
caller_has_screen_recording BIT None Indication that screen of the party that originated this interaction was recorded during the interaction
callee_has_screen_recording BIT None Indication that screen of the party that accepted this interaction was recorded during the interaction
email_completion_time BIGINT Seconds Email completion time from the moment the email interaction was accepted or entered agent's personal queue and until it was completed (including ACW if any) or transferred



interaction_step_skills

Each row of the interaction_step_skills table specifies a skill requested during an interaction referred to in the interaction_step_id field.


Description of Data

The following table offers the name (i.e., ID), data type (e.g., BIGINT, BINARY, BIT, DATETIME, ENUM, INT, VARCHAR, etc.), and description for each metric (i.e., column) of the interaction_step_skills table.


Column Name Data Type Description
id BINARY (16) Primary key
interaction_step_id BINARY (16) interaction_step_id is the identifier of the interaction during which this skill was requested. Typically, this is the identifier for the interaction segment of the party that originated this interaction (field caller_interaction_step_id of the call_detail table).
name VARCHAR Skill name as defined in configuration
group_name VARCHAR Name of the group that this skill is assigned to as defined in configuration
type ENUM type is the skill type.

Possible values include the following:

  • SERVICE – Primary service skill (a skill that is created automatically for each new service)
  • SKILL – Auxiliary skill (a skill that is not directly associated with any particular service)
service_level INT Target percentage of calls that shall be answered within the time specified in the service_level_threshold field as defined in configuration
service_level_threshold INT Service level threshold as defined in configuration
short_abandonment_threshold INT Reserved




interaction_quality_monitoring

Each row in the interaction_quality_monitoring table represents an instance of review of an interaction segment referred to in the interaction_step_id field that was completed in the given aggregation interval.


Description of Data

The following table offers the name (i.e., ID), data type (e.g., BIGINT, BINARY, BIT, DATETIME, ENUM, INT, VARCHAR, etc.), and description for each metric (i.e., column) of the interaction_quality_monitoring table.


Column Name Data Type Description
id BINARY (16) Primary key
interaction_step_id BINARY (16) Reference to identifier of the reviewed interaction segment in the call_details table; depending on the type of call (inbound or outbound), it could be either the callee_interaction_step_id or callee_interaction_step_id field
review_time DATETIME Start time of the review activity; time is given in Universal Coordinated Time (UTC)
review_agent_login_id VARCHAR Reviewer’s login as defined in configuration
review_agent_first_name VARCHAR Reviewer’s first name as defined in configuration
review_agent_last_name VARCHAR Reviewer’s last name as defined in configuration
review_notes TEXT Reviewer’s notes for the reviewed interaction segment



interaction_quality_monitoring_grades

Each row in the interaction_quality_monitoring_grades table represents a grade in a single category given to an interaction segment during an instance of review referred to in the iqm_id field.


Description of Data

The following table offers the name (i.e., ID), data type (e.g., BIGINT, BINARY, BIT, DATETIME, ENUM, INT, VARCHAR, etc.), and description for each metric (i.e., column) of the interaction_quality_monitoring_grades table.


Column Name Data Type Description
id BINARY (16) Primary key
iqm_id BINARY (16) Reference to identifier of the review instance (field id in the interaction_quality_monitoring table)
grade_name VARCHAR Name of the call grading category
grade_value INT Grade assigned by the reviewer in the given category
order_num INT The order in which the given category is supposed to appear in reports relative to the other grading categories (as defined in configuration)



surveys

The surveys table contains data from survey responses, specifically from the Scenario Builder application's Save Survey Response block. All DATETIME times are given in Universal Coordinated Time (UTC).

Description of Data

The following table offers the name (i.e., ID), data type (e.g., BIGINT, BINARY, BIT, DATETIME, ENUM, INT, VARCHAR, etc.), and description for each metric (i.e., column) of the surveys table.


Column Name Data Type Description
comment_sentiment DECIMAL (5,3) The sentiment value of customer's comment
comment_transcript LONGTEXT The transcript of customer's comment
comment_url LONGTEXT The URL where referencing the recording of customer's comment
created_time DATETIME Specifies the date and time the survey was created
cs INT (11) A numeric answer given to the customer satisfaction question asked during this survey (e.g., "On a scale from 1 to 5, how would you describe your experience with our service?"). The answer can be used to follow up with the customer directly, or aggregated into a metric showing average customer satisfaction for interactions of the given service or handled by the given agent/team.
custom1 INT (11) custom1 through custom9 are custom survey fields configured in Custom Survey Fields; they are reserved for other customer-specific metrics.
custom2 INT (11) Custom survey field 2
custom3 INT (11) Custom survey field 3
custom4 INT (11) Custom survey field 4
custom5 INT (11) Custom survey field 5
custom6 INT (11) Custom survey field 6
custom7 INT (11) Custom survey field 7
custom8 INT (11) Custom survey field 8
custom9 INT (11) Custom survey field 9
fcr BIT (1) If a yes/no answer given to the First Call Resolution question asked during this survey (e.g., "Did we resolve your query the first time you contacted us?"), the answer can be used to follow up with the customer directly; additionally, it may be aggregated into a metric showing percentage of cases resolved on the first contact for a given agent/team/service.
global_interaction_id BINARY Global interaction identifier
interaction_id BINARY (16) PK Reserved for internal use
nps INT (11) A numeric answer given to the brand loyalty question asked during this survey (e.g., "On a scale from 0 to 10, how likely are you to recommend us to a friend or colleague?"). The answer can be used to follow up with the customer directly, or aggregated into the Net Promoter Score metric that uses a special formula to measure consumer loyalty to the business/brand. For more information, see https://en.wikipedia.org/wiki/Net_Promoter
ts DATETIME ts provides a time stamp when the survey was saved.