« Back to General Discussion - All Versions

RE: Checking the status of agent in ICM script

Combination View Flat View Tree View
Threads [ Previous | Next ]
Hi all ,
I am using a Queue to Agent node to route the call to a particular agent . I wanted to check the status of agent in case call is not handled and accordingly play messages and take decisions i.e. whether he was not ready / not logged in / Busy / Ring no answer happened . I can check the busy status and Ring No answer status with Call.RequeryStatus variable but how can I can check whether agent was " Not Ready / was not logged In" since requery will not happen in these two cases . Please help me to figure out the "Not Ready & Not logged In " states of agent since I have to play different message if he was "Not Ready " and different message if he was "not Logged In"
 
Thanks,
Dipika Gupta

Dipika, you may need to use a combination of the Queue to Agent and Agent to Agent nodes. The Queue to Agent node does have a checkbox setting for "queue if Agent is not logged on". If this is *not* checked, then the node should fail, but your RequeryStatus should still be 0 under normal conditions. I don't recall off hand whether the Queue Agent node has a Consider If like the other Queue nodes, but if it does, you could also use that to check LoggedOn and ICMAvailable.
The Agent to Agent node can also be used to check "Not Ready", as it also has a check box for "node fails if agent not available". Unfortunately I don't think it can distinguish LoggedOn.
 - Bill

>>> Queue to Agent node . . . how can I can check whether agent was " Not Ready / was not logged In"”

The ”not logged in” state is easy. You have the check box to say not to queue to the agent if not logged it – it will come out the X port and Call.RequeryStatus will be zero.

If the agent is not ready it will queue, just as it will with Queue to Skill Group.

Regards,
Geoff

Thanks Geoff. That helped me differentiate not logged in and Not ready states. 
But now I am facing issue in detecting if the agent was busy .According to the document I should check the X path for Call.RequeryStatus = 2 if agent is busy . But if my agent is busy the call is going through the success path and getting queued. Am I doing something wrong ? How can I check if my agent is busy ?
Also other scenarios like RONA(Call.RequeryStatus = 3) are working fine . Is there something extra which I need to take care while checking the busy scenario ?

** Out of office through Dec 4 **

I am on Out of Office through December 4. Responses to e-mails will be delayed until my return on Wednesday.

For immediate HCS assistance, please contact Kiran Surapaneni (ksurapan)@cisco.com, use the HCS community forum or send mail to ASK-HCS-CC@cisco.com

For CVP issues, please contact Sunil Vashist (svashist@cisco.com) If you have an urgent CVP licensing issue, please contact licensing@cisco.com.

Thank you,
Adam Mermel

You have queued to the agent who is currently on a call. I assume that you queue at a higher priority (lower number) than queue to skill groups that this agent is a member of. So the call waits, and when the agent finishes their current call, the queued call is delivered in preference to any skill group calls that could have been waiting longer. It will not come out the X node, assuming the agent answers. It’s working as we want it to. If the agent lets it ring it could do a CVP requery in the normal way.

Regards,
Geoff

Hi Geoff ,
I have not assigned my agent to any skillgroup and hence not prioritising based on skillgroup . I am simply using a Queue to agent node and checking for an agent . If this agent is busy I need to play a message to the caller that is agent is busy and give him an option of voicemail .If the agent is not ready I need to give different option to caller , if agent is not logged in  I want to give different option. I dont want the caller to get queued to that agent and wait for him to answer the call . I am using the Queue to agent node because I have to check all these scenarios . Is there any other way to achieve this ?
By using Queue to agent node I have covered all the scenarios except for checking if agent is busy .Because if agent is busy it not coming out of the x path and getting queued.
Please suggest me how can I achieve my requirement in case agent is busy.
Thanks,
Dipika Gupta

>>>>>>I am simply using a Queue to skillgroup node and checking for an agent .
>>>>>>If this agent is busy I need to play a message to the caller that is agent is busy and give him an option of voicemail

If the call comes out the check mark it has been queued to the agent. It’s either queued to the agent because they are not ready or are on another call (busy). Maybe you can attach an “IF” node to that path to see if the agent is in the not ready state – not sure if this is possible.

But in your case I don’t see that it makes any difference to the caller – you don’t want to queue to the agent in either case, so just propose the option.

Regards,
Geoff

Thanks Geoff . I have used in If condition on the check mark path to check if agent is busy and it worked . The only thing required was that I had to allocate my agent to a skillgroup since we can check that only with skillgroup variables . 
Thanks for your inputs .