Parameters
Data is aggregated according to the settings of the parameters:
Parameter | Default Value | Purpose |
Portal.ACD.Statistics.JTELStats2.Compress.StatisticsServiceNumbers.SecondsToWait | 7200 | The minimum time after the end of a time interval before statistics are aggregated. |
Portal.ACD.Statistics.JTELStats2.Compress.StatisticsServiceNumbers.NextTimeSlice | - | The date / time of the next time slice to be calculated. This parameter can be reset to an earlier date / time in which case the system will recalculate all intervals from the given date and time again. |
Query
Two tables are provided, compressed according to the following query:
SELECT (Various Aggregations) FROM JTELStats.StatisticsPartA a LEFT JOIN JTELStats.AcdStatisticsPartB acdb ON a.ID = acdb.StatisticsPartAID LEFT JOIN JTELStats.StatisticsPartB b ON acdb.ID = b.AcdStatisticsPartBID WHERE ( a.ClientsID = _ClientsID ) AND ( a.dtCallStart BETWEEN _Timeslice_Begin AND TIMESTAMPADD( MINUTE, 15, _Timeslice_Begin ) ) AND ( a.bOutbound = 0 ) GROUP BY a.ID;
Partitioning and Aggregations
When the data is aggregated, it is divided into several consistent partitions, according to the following logic. The resulting aggregations then either count a call, if a condition is met, or determine the time between two timestamps.
ServiceNumber_* Fields
Partitions all records only using fields from StatisticsPartA.
dtCallConnect | bCallerHangup | CauseCodesID | Field |
NULL | <> 0 |
| Abandoned |
NULL | 0 | 17 | Busy |
NULL | 0 | <> 17 | Reject |
NOT NULL |
|
| Offhook |
ACD_* Fields
Partitions records only for which an AcdStatisticsPartB record exists, and for which it is not a group transfer or group overflow.
The condition used is:
( AcdStatisticsPartB.ID IS NOT NULL ) AND ( AcdStatisticsPartB.AcdOriginGroupsID IS NULL )
Queue_* Fields
Further partitions records which have entered the ACD, only calls which enter the queue.
The additional condition used is:
( AcdStatisticsPartB.dtQueueStart IS NOT NULL )
Queue_Serviced_* Fields
Further partitions the AcdStatisticsPartB data, only calls which were answered by an agent are considered. The condition used is:
( StatisticsPartA.dtCallConnect IS NOT NULL ) AND ( AcdStatisticsPartB.dtAgentConnect IS NOT NULL )
Queue_Not_Serviced_* Fields
Further partitioning on AcdStatisticsPartB, only records where StatisticsPartA.dtCallConnect IS NOT NULL AcdStatisticsPartB.dtAgentConnect IS NULL – i.e. calls which were answered by the system but not serviced by an agent. Otherwise partitioning as ACD_*.
1.1.1.7 AgentCalls_* Fields
Only records for which StatisticsPartB.ID IS NOT NULL – i.e. where an agent or destination call was made.
If StatisticsPartB.StatisticsPartBOrigin IS NULL then an outcall to an agent was made. Otherwise it was a call transfer (see further sections below).
The rest of the partitioning is according to the CONNRES field.
CONNRES | Result |
1 | OK |
2 | NoAnswer |
3 | Busy |
4 | CallerHangup |
6 | Rejected |
0, 5, > 6 | Failure |
1.1.1.8 GroupTransfer_* Fields
If StatisticsPartB.StatisticsPartBOrigin IS NOT NULL and StatisticsPartB.AcdGroupsID <> AcdStatisticsPartB.AcdGroupsID then a group transfer was made. Otherwise partitioning as AgentCalls_* fields.
1.1.1.9 AgentTransfer_* Fields
If StatisticsPartB.StatisticsPartBOrigin IS NOT NULL and StatisticsPartB.AcdGroupsID = AcdStatisticsPartB.AcdGroupsID AND StatisticsPartB.bTransferAgent <> 0 then an agent to agent transfer was made. Otherwise partitioning as AgentCalls_* fields.
1.1.1.10 NumberTransfer_* Fields
If StatisticsPartB.StatisticsPartBOrigin IS NOT NULL and StatisticsPartB.AcdGroupsID = AcdStatisticsPartB.AcdGroupsID AND StatisticsPartB.bTransferExternalNumber <> 0 then an agent to number transfer was made. Otherwise partitioning as AgentCalls_* fields.
Tables
The field definitions are essentially the same, in both tables, only the aggregation intervals are different.
CompressedA15
This table contains compressed statistics for 15 minute intervals.
CompressedADay
This table contains compressed statistics for day intervals.
Fields