Regarding AgentRealtime table of CUCCE

Version 1
    This document was generated from CDN thread

    Created by: Akihiro Akihiro on 24-09-2009 09:09:52 AM
    I am making an custom application that shows talk time of agents using
    "Agent Realtime" table.
    When I hold and retrieve the call, the time of Talking turns to be 0.
    On the other hand,  "DateTimeTaskLevelChange" field has values of time
    that is close to the time of incoming call.
    Now I am thinking of showing the talk time by calculating the difference
    between the time of "DateTimeTaskLevelChange" and the current time.
    Can anyone answer the following questions?
    Is this way of calculating correct?
    What is specifically "DateTimeTaskLevelChange"?
    Is it ok to recognize that it is the start time of talk when MRD is
    Cisco Voice?

    Subject: RE: Regarding AgentRealtime table of CUCCE
    Replied by: Carmen Logue on 28-09-2009 01:48:28 PM
    Database schema Guide, which is available here:  ( )
    defines the field as:
    <font face="Times New Roman" size="3"><font face="Times New Roman" size="3">
    The date and time of the agent's last
    </font></font><font face="Times New Roman" size="3">
    task level change in this MRD.
    To answer the question about whether or not this is the correct formula, please describe what you need to display -- is it just active time for voice calls that are currently active?  Should it include non-voice contacts as well?  Presume this is only displayed whe the call is currently in the Active state?

    Subject: RE: Regarding AgentRealtime table of CUCCE
    Replied by: Akihiro Akihiro on 30-09-2009 03:27:44 AM
    Basically, I would like to show the same as Webview.
    But precicely speaking, I would like to show the value subtracting 'hold' time only in talk time.
    (I have recognized that talk time turns '0' when you hold)
    There are the following fields on the table which records times:
      'DateTimeLastStateChange' *1
      'DateTimeTaskLevelChange' *2
    I can't check how they are implemented because I don't have Infomaker here,
    but I believe that it uses the value of *1.
    Therefore, I am thinking of custom application referencing the elapsed time from *1,
    and the time from *2 only in the case of 'Talking' status.

    Subject: RE: Regarding AgentRealtime table of CUCCE
    Replied by: Nathan Luk on 06-01-2010 06:09:59 AM
    Hi Akihiro,
    Depends on how you want the stats to look. If you want to count the entire time the agent is on the line as "Talk" time then you would do a datediff between getdate and DateTimeTaskLevelChange as that is the DateTime when the task level change for the MRD last happened (ie accepted a call) so you can use it as a start time effectively. This however, would include the hold time as part of the stat. Not sure if you can do total real talk time in realtime as you only really have DateTimeLastStateChange as the other field you can use which will effectively reset hold time each time they go on and off hold which is how the out of the box realtime reports operate.