cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
931
Views
10
Helpful
1
Replies

Position in Queue, UCCX 8.5

destiny6366
Level 1
Level 1

Hello,

I could you some help figure this scenario out.  Any help would be appreciated.

I running UCCX 8.5 and in my script  I have and if statement.                  

1. Ex:  IF (position in Queue >3) Then

     True:

          session = Get Contact Info

          Set Session Info

          Set Enterprise Call Info

          Dequeues to outsite number.

So the problem is if the 4th caller calls the queue the call is sent to the dequeue number and the hold time is short.

My supervisor states thats unfair considering those 3 callers have been holding for awhile.

2.  This is what I would like to do.

     True:  Can we look at the 3 calls and send the longest holding call to the Dequeue step.

I would greatly appreciate if someone could help me with this.

Thank you in advance for your help

1 Reply 1

Anthony Holloway
Cisco Employee
Cisco Employee

So this is more of a business question than a technical one, yes?  If so, that's going to be a bit hard for the community to solve for you.  If not, then I missed the mark, and please let me know it.

On the business logic side of things:

1. I would have a problem with routing new callers to the offsite call center, who could potentially be handled quicker (idle agents) than those people still waiting for an internal Agent. (This is the point your supervisor brought up, and he/she is right)

2. I would also have a problem with routing old callers (waiting a long time) to the offsite call center, who could potentially wait even longer (busy agents) than those people still waiting for an internal Agent.

Unless you can pull metrics from the offsite call center, you're going to be in a sticky situation with either choice.

ICM solves this problem to some degree by using Peripheral Gateways which can monitor any PBX and its Agents to know where to route the call for the best caller experience.  UCCX cannot do that.  At least not in the same way.  We could get into requests/responses using backdoor numbers and DTMF signaling, but that has it's own challenges.

To answer your one technical question:

Can we look at the 3 calls and send the longest holding call to the Dequeue step

Yes, but looking at which one has been waiting the longet is not the metric you want, because then you would have to compare each caller's wait time to get that info, you would simply use Position in Queue, and PIQ == 1 is most likely the longest hold time.  I say most likely, because priorities can mess with that, but unless you're using priorirties I would just stick with PIQ for now.

E.g.,

Loop

/* only consider the first caller in queue to be sent off site */

if piq == 1

  true

    /* only consider sending this caller offsite if the queue is too large */

    if contacts waiting > 3

      true

        dequeue and send to offsite

      false

        /* do nothing because the queue is small */

  false

    /* do nothing because this is not the first caller in queue */

I hope that helps answer some of your questions.  The biggest thing here is that you have a business logic problem to solve, not a technical one.

Good luck and please do post back if you have more questions.  I don't want you to feel like the community can't help, it's just that this is more of a technical support forum.

Anthony Holloway

Please use the star ratings to help drive great content to the top of searches.