Author Topic: "Agent status cannot be determined" on agent screen  (Read 15308 times)

bluegrass

  • Newbie
  • *
  • Posts: 3
  • Karma: 1
    • View Profile
    • Email
"Agent status cannot be determined" on agent screen
« on: March 14, 2008, 16:41:34 »
I am having a problem that recently showed up after a disaster recovery with a customer. The agent screens are now telling them they cannot determine their status despite being logged in and not paused. Google returns virtually nothing in the way of a solution

QueueMetrics

  • Loway
  • Hero Member
  • *
  • Posts: 2999
  • Karma: 39
    • View Profile
    • QueueMetrics
Re: "Agent status cannot be determined" on agent screen
« Reply #1 on: March 17, 2008, 13:57:11 »
The error means that there is no agent data in the last X bytes of the queue_log file for that agent.

You should check that:
1. the realtime screen looks correct - calls appear and disappear with the right time and agents log in and log out
2. calls appear on the agent's page correctly
3. the realtime.max_bytes_agent=250000 for a start.

Are you using database or flat-file storage?

bluegrass

  • Newbie
  • *
  • Posts: 3
  • Karma: 1
    • View Profile
    • Email
Re: "Agent status cannot be determined" on agent screen
« Reply #2 on: March 17, 2008, 19:11:50 »
yes, i am using qloaderd to send the log into P01

QueueMetrics

  • Loway
  • Hero Member
  • *
  • Posts: 2999
  • Karma: 39
    • View Profile
    • QueueMetrics
Re: "Agent status cannot be determined" on agent screen
« Reply #3 on: March 17, 2008, 21:28:40 »
Do agents see calls coming their way (or just passed) on the Agent's page?

If you use SQL storage, use realtime.max_bytes_agent=7200 as the term is seconds to look back... :)

shm267

  • Newbie
  • *
  • Posts: 3
  • Karma: 0
    • View Profile
Re: "Agent status cannot be determined" on agent screen
« Reply #4 on: September 29, 2008, 22:41:31 »
We are having this issue too.

Some background, we have two asterisk boxes running TrixBox, both have qloaderd running and pushing the queuelog data to a third queuemetrics box. This appears to be working fine but there is a lot of data being pushed into the database. We have about ~20 queues with an average of 30 agents statically defined in each queue. We are also running Trixbox/Asterisk in device/user mode to allow our agents to move about between cisco phones. Right now they are using *11 and * 12 to login and logout, but we are moving toward using agent login in addition to allow agents to register their extension with *11, get DID and extension calls, without actually being in the queues. Then they can dial extension 299 to login/logout of the queues as an actual asterisk agent.

Right now we have the variable realtime.max_bytes_agent=30000. This seems to keep the calls on the agent GUI for about 30 seconds, then it disappears. Also the agent status goes to unknown.

After looking at the query behind the agent GUI, we are not sure if we may have asterisk configured in the most optimal way for queuemetrics. My major concern is the number of RINGNOANSWER rows in the database. Currently there are around 8.7 million rows in the queue_log table, of those, 8.5 are RINGNOANSWER records.

Right now, the GUI executed the following query based on the configuration above:

SELECT time_id , call_id , queue , agent , verb , data1 , data2 , data3 , data4
FROM queue_log  WHERE  partition ='P002' AND ( time_id >= ( UNIX_TIMESTAMP() - 30000)
AND time_id <=  UNIX_TIMESTAMP() ) ORDER BY time_id ASC , unique_row_count ASC

From our database, this returns around 155,300 rows (WOW).

**With a simple change to the query, the count can be reduced to 20 rows. (and agent like 'Agent/70017')

SELECT time_id , call_id , queue , agent , verb , data1 , data2 , data3 , data4
FROM queue_log  WHERE  partition ='P002' AND ( time_id >= ( UNIX_TIMESTAMP() - 30000)
AND time_id <=  UNIX_TIMESTAMP() ) and agent like 'Agent/70017' ORDER BY time_id ASC , unique_row_count ASC

QueueMetrics

  • Loway
  • Hero Member
  • *
  • Posts: 2999
  • Karma: 39
    • View Profile
    • QueueMetrics
Re: "Agent status cannot be determined" on agent screen
« Reply #5 on: September 30, 2008, 12:30:18 »
Ok this does not explain why you should bot get LOGON/LOGOFF infiormation though. There should be plenty of information in the last 30,000 secs, so it makes no sense that the status appears for 30 seconds or so.

shm267

  • Newbie
  • *
  • Posts: 3
  • Karma: 0
    • View Profile
Re: "Agent status cannot be determined" on agent screen
« Reply #6 on: September 30, 2008, 18:12:45 »
Ok, we have discovered what appears to be two related issues. 

1.  "max_bytes_agent" parameter is supposed to, while in database access mode, control the where clause for the time window to retrieve queue_log records from.  It does do that.  However, additionally, the temp file that is generated off this query (that is then java class filtered for agent portal display) is also byte restricted by the same parameter.  This is a problem since in order to process enough temp result file (in our case) you need to increase the parameter up to ~2,000,000. (2MB of temp file parsed).  However, this then also affects the database retreival in giving 23 days worth of activity even if you just are processing the first 2MB worth.  To fix this, the DB retreival window (in seconds) should be a separate parameter from the temporary results file parsing (in bytes).

2.  The database retreival query is not optimal.  It spools all records including ACD RINGNOANSWER rows, of which we have a large amount of, and are not revelant to this query.  Currently, we have had to modify the qloader to post RINGNOANSWER rows to another partition just so that we get something byte short enough to process (for problem #1 above).   Even if #1 above is fixed, the query time, java class temp file filtering is a tiny fraction of processing by making this query specific to the login.

Fix number #1 above would allows us to process 1 day (instead of 23 days) worth of records to assertain statuses and calls for the portal.  Fix #2 above allows the portal to process a few K worth of agent specific records instead of many many MB of records for a whole day of non-relevant records (once we cut the ACD record back to the proper partition).  In effect, if #1 is fixed and the parameters separated, without #2, we would need to put the DB windowing to 86400 secs (1 day) and the byte filtering to ~50MB :( once we cut the RINGNOANSWER back.

Thanks for your help!

QueueMetrics

  • Loway
  • Hero Member
  • *
  • Posts: 2999
  • Karma: 39
    • View Profile
    • QueueMetrics
Re: "Agent status cannot be determined" on agent screen
« Reply #7 on: October 01, 2008, 09:01:50 »
This is correct. We are tracking the issues as #471 (your #1) and #472 (your #2).  Of course #1 is top priority - if you can contact our offices, we'll send you a beta to be manually installed as soon as it's ready.

bonesyjr

  • Newbie
  • *
  • Posts: 5
  • Karma: 0
    • View Profile
Re: "Agent status cannot be determined" on agent screen
« Reply #8 on: October 24, 2008, 01:31:53 »
Can you also let me know when the beta is ready.  I am having the same issue as above.

QueueMetrics

  • Loway
  • Hero Member
  • *
  • Posts: 2999
  • Karma: 39
    • View Profile
    • QueueMetrics
Re: "Agent status cannot be determined" on agent screen
« Reply #9 on: October 24, 2008, 08:23:44 »
Please contact us by e-mail to have a beta abvailable.

bonesyjr

  • Newbie
  • *
  • Posts: 5
  • Karma: 0
    • View Profile
Re: "Agent status cannot be determined" on agent screen
« Reply #10 on: November 14, 2008, 06:30:12 »
Did anyone figure out what the issue was here?  I am having the same issue. Any help would be appreciated.

Thanks.

QueueMetrics

  • Loway
  • Hero Member
  • *
  • Posts: 2999
  • Karma: 39
    • View Profile
    • QueueMetrics
Re: "Agent status cannot be determined" on agent screen
« Reply #11 on: November 14, 2008, 10:09:14 »
The issue has been fixed and version 1.5.0 will be free of it. We are about to release it.

zpcanada

  • Newbie
  • *
  • Posts: 7
  • Karma: 0
    • View Profile
    • Email
Re: "Agent status cannot be determined" on agent screen
« Reply #12 on: April 25, 2010, 21:52:03 »
I am using Queuemetrics version 1.5.5 and I am having the same problem. This problem seems occurred after update the pbx using update-scripts, update-fixes and update-source(PBX in a Flash commands) Please help.
« Last Edit: April 25, 2010, 22:48:54 by zpcanada »

QueueMetrics

  • Loway
  • Hero Member
  • *
  • Posts: 2999
  • Karma: 39
    • View Profile
    • QueueMetrics
Re: "Agent status cannot be determined" on agent screen
« Reply #13 on: April 26, 2010, 11:18:45 »
Have you tried logging off and on agents manually?


torontob

  • Full Member
  • ***
  • Posts: 155
  • Karma: 0
    • View Profile
Re: "Agent status cannot be determined" on agent screen
« Reply #14 on: August 26, 2010, 01:40:23 »
Same problem. I am not using qloader or mysql but rather the simple queue_log file. I can even see this message on the documentation snapshot.