Skip to main content
Version: 2.5.0

Time in queue

Concept and Architecture

To display the elapsed time a call was in queue, a variable must be set and defined in the CCE script. This variabel is then being transferred to the MCAL. Based on the value of this variable, the MCAL calculates the time difference between the current time and the timestamp in this variable and passes the calculated value on to the CTA, which provides the data to the Siebel CRM.

Graphics

The defined variable must not be used for other purposes! If the variable is overwritten with a timestamp at a later time, the last timestamp is used to calculate the time in queue.

As soon as I call arrives in the CCE Script, the timestamp has to be stored into a variable to ensure accuracy of the time in queue. When a call is being routed to the longest available agent, the variable is passed with that call to the MCAL.

Graphics

The used time format is:

CT: <year> - <month> - <day> <hour> : <minute> : <second>

As example:

CT:2020-6-17 15:24:42

To write the timestamp in the CCE script, CCE uses the local time. Ensure that the MCAL is running in the same time zone as the CCE whenever possible. Otherwise, the value must be corrected with the available offset value.

When the call gets assigned to an agent, the filled up variable will also be passed to the corresponding MCAL. The MCAL then calculates the elapsed time and passes this value to Siebel.

Configuring

Before the configuration can be started, the variable (CV1 .. CV10, or ECC) must be defined. The dedicated variable shall only be used for this feature.

CCE Script

A 'Set Variable'-node is used for this.

Graphics

The desired variable must then be read out and the following string entered into the Value-field:

​ concatenate("CT:",year(),"-",month(),"-",day()," ",concatenate(hour(),":",minute(),":",second()))

Graphics

It is important to ensure that the notation is exactly adopted. The node can then be integrated into the desired CCE script.

Graphics

MCAL Config File

Two new parameters are available in the MCAL Config File:

NameRangeComment
CtiTimeInQueueVariableNameNONE (default), CV1 .. CV10, ECC.The variable in which the timestamp can be found is defined here. NONE or empty switch off the function.
CtiTimeInQueueOffsetValueint [sec]This value is added to the difference. This can be used to correct a time zone difference. The value can be + (positive) and - (negative).

If an ECC variable is being used to transport the timestamp, ensure that the variable is also listed in CtiAttachedDataEccVariableName-parameter.

Example:

  1. Use Call Variable 8 to transport timestamp:

    [config] ... CtiTimeInQueueVariableName=CV8 ...

  2. Use ECC Variable user.TimeInQueue

    [config] ... CtiTimeInQueueVariableName=ECC.user.TimeInQueue ...

  1. Use Call Variable 2 and correct a time zone difference of one hour

    [config]
    ...
    CtiTimeInQueueVariableName=CV2
    CtiTimeInQueueOffsetValue=3600
    ...