Genesys CTI User Forum
Genesys CTI User Forum => Genesys CTI Technical Discussion => Topic started by: PFCCWA on May 26, 2010, 12:12:49 PM
-
Hello,
Does anyone know if it possible to report on the actual time an agent has logged in?
In the Tserver log files below we can see the agent has logged in at 09:03:40 - how can this be translated into a report. There is the login time statistic which will give me total amount of time the agent has been logged in? The example below is from an Alcatel 4400 handset but moving forward we will be using GAD/Genesys/Avaya.
@09:03:40.5350 [0] 7.5.001.04 distribute_event: message EventAgentLogin
AttributeEventSequenceNumber 000000000012a946
AttributeTimeinuSecs 535000
AttributeTimeinSecs 1274774620 (09:03:40)
AttributeExtensions [40] 00 01 00 00..
'GCTI_THIS_DEVICE_NAME' 'Agent One'
AttributeAgentWorkMode 1 (ManualIn)
AttributeOtherDN '4606'
AttributeThisQueue '6566'
AttributeAgentID '5247'
AttributeThisDN '5247'
Thanks,
WA
-
It's possible, the question is how do you wanna report.
• U can see the Login Time in CCpulse of course
• U can write a sql query, just adding the count of active states in RESOURCE_STATE_FACT, which should result in the total login time:
sum(CASE WHEN rsf.resource_state_key = 1 THEN rsf.total_duration ELSE 0 END) waiting_fnc,
sum(CASE WHEN rsf.resource_state_key = 2 THEN rsf.total_duration ELSE 0 END) offhook,
sum(CASE WHEN rsf.resource_state_key = 3 THEN rsf.total_duration ELSE 0 END) dialing,
sum(CASE WHEN rsf.resource_state_key = 4 THEN rsf.total_duration ELSE 0 END) ringing,
sum(CASE WHEN rsf.resource_state_key = 5 THEN rsf.total_duration ELSE 0 END) notready_fnc,
sum(CASE WHEN rsf.resource_state_key = 6 THEN rsf.total_duration ELSE 0 END) aftercallwork,
sum(CASE WHEN rsf.resource_state_key = 7 THEN rsf.total_duration ELSE 0 END) onhold,
sum(CASE WHEN rsf.resource_state_key = 8 THEN rsf.total_duration ELSE 0 END) callunknown,
sum(CASE WHEN rsf.resource_state_key = 9 THEN rsf.total_duration ELSE 0 END) callConsult,
sum(CASE WHEN rsf.resource_state_key = 10 THEN rsf.total_duration ELSE 0 END) callinternal,
sum(CASE WHEN rsf.resource_state_key = 11 THEN rsf.total_duration ELSE 0 END) calloutbound,
sum(CASE WHEN rsf.resource_state_key = 12 THEN rsf.total_duration ELSE 0 END) callinbound
Have i understood it right or did u mean something else?
P
-
I meant so we can produce a report as below:
Agent One Loggedin at 09:00:01
Agent One Logged in at 09:02:00
Agent Two Logged in at 09:05:00
Thanks,
WA
-
Can't you just use the Statserver login table?
-
:)
[quote author=BenTaylor link=topic=5572.msg24384#msg24384 date=1274884185]
Can't you just use the Statserver login table?
[/quote]
-
This seems like the answer but no idea what it mean!
Will this give me the actual time the agent logged in?
Thanks,
Wasim
-
Check statserver documentation, on your StatServer enable the option login-table to true, and then you need to create a table in some DB with the scripts that comes with the StatServer and add a DAP and DBServer so you add those to your StatServer and it will begin to store such information in that table.
-
You will also need to convert the UTC time (number of seconds past 01/01/1970 00:00:00) to something legible... If you have Hyperion or BO or you need a PL SQL decode...
Timestamp Format: GMT
= to_date('1970-01-01 00:00:00','yyyy-MM-dd hh:mm:ss')+(Login.Time)/86400
Bear in mind that you will need to adjust for Timezone and possibly daylight saving in your country...
TT
-
[quote author=phil link=topic=5572.msg24378#msg24378 date=1274877231]
It's possible, the question is how do you wanna report.
• U can see the Login Time in CCpulse of course
• U can write a sql query, just adding the count of active states in RESOURCE_STATE_FACT, which should result in the total login time:
sum(CASE WHEN rsf.resource_state_key = 1 THEN rsf.total_duration ELSE 0 END) waiting_fnc,
sum(CASE WHEN rsf.resource_state_key = 2 THEN rsf.total_duration ELSE 0 END) offhook,
sum(CASE WHEN rsf.resource_state_key = 3 THEN rsf.total_duration ELSE 0 END) dialing,
sum(CASE WHEN rsf.resource_state_key = 4 THEN rsf.total_duration ELSE 0 END) ringing,
sum(CASE WHEN rsf.resource_state_key = 5 THEN rsf.total_duration ELSE 0 END) notready_fnc,
sum(CASE WHEN rsf.resource_state_key = 6 THEN rsf.total_duration ELSE 0 END) aftercallwork,
sum(CASE WHEN rsf.resource_state_key = 7 THEN rsf.total_duration ELSE 0 END) onhold,
sum(CASE WHEN rsf.resource_state_key = 8 THEN rsf.total_duration ELSE 0 END) callunknown,
sum(CASE WHEN rsf.resource_state_key = 9 THEN rsf.total_duration ELSE 0 END) callConsult,
sum(CASE WHEN rsf.resource_state_key = 10 THEN rsf.total_duration ELSE 0 END) callinternal,
sum(CASE WHEN rsf.resource_state_key = 11 THEN rsf.total_duration ELSE 0 END) calloutbound,
sum(CASE WHEN rsf.resource_state_key = 12 THEN rsf.total_duration ELSE 0 END) callinbound
Have i understood it right or did u mean something else?
P
[/quote]
Are these state codes correct ? I thought they were :
1 LoggedIn
4 WaitForNextCall (Ready)
5 OffHook
6 CallDialing
7 CallRinging
8 NotReadyForNextCall
9 AfterCallWork
13 CallOnHold
16 ASM_Engaged
17 ASM_Outbound
18 CallUnknown
19 CallConsult
20 CallInternal
21 CallOutbound
22 CallInbound
0 LoggedOut
-
Do you have workforce manager? Agent States report, suitably filtered.
-
When you say the below
• U can see the Login Time in CCpulse of course
Does that mean you can actually see "live" the time an agent has logged in as we can only see their total logon time?
is this possible to do in CCPulse?
Tambo