Author Topic: Pause Status not changing in reports  (Read 4568 times)

bhenry

  • Jr. Member
  • **
  • Posts: 69
  • Karma: 1
    • View Profile
    • Email
Pause Status not changing in reports
« on: January 09, 2009, 19:45:36 »
I am having a problem with pause status not changing when an already paused agent updates his status.  In the agent pause details you only see the agents initial pause and not the subsequent pause when the agent changes his pause reason.  For instance we are seeing agents who are pausing under code "Lunch" then come back and change their pause code to "Filing".  This does update the realtime monitor but these changes are not reflected in the agent pause detail reports.  Please let me know if there is a solution ?

QueueMetrics

  • Loway
  • Hero Member
  • *
  • Posts: 2999
  • Karma: 39
    • View Profile
    • QueueMetrics
Re: Pause Status not changing in reports
« Reply #1 on: January 12, 2009, 10:04:25 »
I think this might be a bug - what usually happens is that the LAST code is set (so you can change it e.g. if you select a wrong one).
 
We are tracking this as #603.

marcos

  • Loway
  • Full Member
  • *
  • Posts: 138
  • Karma: 3
    • View Profile
Re: Pause Status not changing in reports
« Reply #2 on: January 12, 2009, 11:42:30 »
Hi,
I'm trying to replicate here the problem but I'm not able to do it.

These are the steps I've performed:
1. Log in as agent and set a pause (Launch)
2. Log off as agent
3. Log in as administrator and start a daily report. In the agent pause details report I can see the agent with the associated pause code at time HH:mm:ss
4. Log off as administrator
5. Log in as agent and set a new pause code (I tried with the default one, for example "backoffice", then I've repeated the complete procedure with a custom one "filing")
6. Log off as agent
7. Log in as administrator and start a daily report. In the agent pause details report I can see the agent with the new associated pause code, but the time is referring to the "first" pause event (as reported by the step 3).

For me this is the correct behavior.
If you are able to replicate the problem in a different way, please let me know that I'll investigate about.

Thank you and bye,

Marco

bhenry

  • Jr. Member
  • **
  • Posts: 69
  • Karma: 1
    • View Profile
    • Email
Re: Pause Status not changing in reports
« Reply #3 on: January 12, 2009, 16:22:37 »
The "correct behavior" seems to be the problem.  We are trying to track an agent's actions through out the day.  For instance:

1) an agent pauses with reason "smoke break" and returns after 5 minutes
2) The agent then has to go to a meeting so he pauses again (while still paused) using "code meeting"
3) The agent returns 2 hours later after their meeting and unpauses

In the reports It will look to the manager like the agent went on a 2 hour smoke break which is in fact not true.  This is the issue that we are having.

marcos

  • Loway
  • Full Member
  • *
  • Posts: 138
  • Karma: 3
    • View Profile
Re: Pause Status not changing in reports
« Reply #4 on: January 13, 2009, 15:43:05 »
Hi Bhenry

Looking at your last example, the agent starts the pause with the code "smoke break" for 5 minutes. It then change the pause code (while still paused) using "code meeting". This lasts for two hours.
In the report you should have "code meeting" for 2h and 5 minutes. This is what I'm replicating here and is what I assumed to be the "correct behavior".

To be able to track the list of activities an agent has during the day, the unpause-pause sequence is required instead. This is defined, by design, to let able the agent to correct their pause status in the case he specifies a wrong one by mistake.

In a short way, there are two different cases:
1. The agent wants to correct the last entered pause code: while still paused he pauses again with a different code. QM will overwrite the previous pause code but not the timestamp.
2. The agent wants to specify a new pause code: if in paused status, the agent has to unpause and then pause again with the new pause code.

That's what QM is supposed to behave.

Thank you and bye,
Marco.

bhenry

  • Jr. Member
  • **
  • Posts: 69
  • Karma: 1
    • View Profile
    • Email
Re: Pause Status not changing in reports
« Reply #5 on: January 13, 2009, 17:39:24 »
Marco,

You are correct that it would report code meeting for 2h and 5 minutes when I was thinking the reverse but the point is still the same.  I understand the ability to change mistaken pause codes.  The problem is that if an already paused agent has to unpause themselves to change their pause code then during a busy time of day they could receive a call.  They would then have to miss the call which then be reflected in the reports and they would then get a manager asking them why they missed a call.  This is clearly not a deal breaker but it does present a possible problem. 

Regards,
Brendan Henry

marcos

  • Loway
  • Full Member
  • *
  • Posts: 138
  • Karma: 3
    • View Profile
Re: Pause Status not changing in reports
« Reply #6 on: January 14, 2009, 11:59:27 »
Hi Behnry, I've understood the problem.

I think that you can overcome the problem modifying the dialplan used by QM to schedule pausing/unpausing commands to asterisk.
The idea is to "emulate" an unpausing event in the queue_log file, generated by asterisk and used by QM as datasource, every time that an agent wants to insert a pause code. Being "simulated", the PBX will not be alerted and the agent will not receive any call during the unpause period.

For example, forcing a system echo in order to generate events similar to the listed below log snip could be useful:

1231929752|NONE|NONE|Agent/300|UNPAUSEALL|
1231929752|NONE|200|Agent/300|UNPAUSE|

This could be implemented with lines like that:
exten => 22,n,System( echo "${EPOCH}|NONE|NONE|Agent/${AGENTCODE}|UNPAUSEALL|" >> /var/log/asterisk/queue_log ) in the extensions_queuemetrics.conf file you can find in the asterisk configuration folder.

I did not tried to implement it but I'm feeling it will works. Obviously you'll lose the ability to change mistaken pause codes.

Best regards,
Marco Signorini