ICM IPCC Enterprise on queue redirect to VM

Answered Question
Apr 16th, 2010

Hi all,

I have a IPCC Enterprise 4 and on the several applications I have I need to change the scripts in order to give an option to the customer that if he is waiting in the queue for 60 seconds if he presses '1' it will be redirected to the voice mail, otherwise it will be kept in the queue.

I need to incorporate this in the ICM scripts I have, but after reading a lot I still having doubts on how to do this.

Can I use the variable 'TimeInQueue'? And where should I use this variable?

Any help is welcome.

Regards

I have this problem too.
0 votes
Correct Answer by david.macias about 6 years 7 months ago

Ok, so here's what you need to do.  In your excisting IVR script you will need to decide when to send the call back to ICM.  Usually this is done after playing 30 seconds or 60 seconds of music.  At this point, you can have an if statement which will check how long the caller has been in queue, if it's greater than 60 seconds then send the call to another IVR script which prompts the caller to leave a VM, if thy don't press anything then send them back to the first IVR script for more music.  Now, you will have to play around with the placement of the queues as to not prompt the caller for VM every single time, unless you want to do that.

So your script might look like:

QtoSG > RunExtScript (PleaseHold.aef)> If QTime>60 s

     If Yes RunExtScript (PleaseHoldVMOption.aef)>If CED = 1

          If Yes Label (VM Label)

          If No Send back to RunExtScript(PleaseHold.aef)

     If No Send back to RunExtScript(PleaseHold.aef)

David

  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 5 (3 ratings)
Loading.
david.macias Fri, 04/16/2010 - 12:20

What type of IVR are you using?  A very simple way of donig this is to time your prompts to be 60 seconds for example, 60 seconds of music and a 10 second message, then the next node will be the VM option.

david

rcordeiro Fri, 04/16/2010 - 15:24

Hi, thanks for your reply.

I need to do that other way, I cannot do it directly in the IVR script. I need to do it in the ICM (although I can call a new IVR script for this).

I need a way to take the call from the queue when it reaches 60 seconds, give a new prompt to the customer, if he desires it can press '1' to go to voicemail, otherwise get back to queue, but it won't get the 60 seconds prompt again.

Regards

david.macias Fri, 04/16/2010 - 15:43

You don't seem to understand how the IVR and ICM works.  Either you do it in that IVR script or do it in another one, but ultimately it's the same thing, might as well consolidate.  Can you describe the current IVR script you have?

david

rcordeiro Sat, 04/17/2010 - 02:21

I'll try to explain.

I have a call flow in ICM that at some point puts the call on a queue (skill queue), while in this queue the call gets a prompt (music) in a loop until it gets answered by an agent.

What I need is to give a prompt to the call when it reaches 60 seconds giving the option to leave a message (Voice mail) or stay in the queue.

I cannot do the script based on the time the music prompt plays because this changes a lot with different sizes files (and time), there is a variable "TimeInQueue" that I believe I can use but the thing is how? Should I create a 'If' in ICM and when the 'TimeInQueue' reaches 60 seconds it will play the VM script? Do I have to take the call from the queue?

I know I can use the IVR script to give the option to go to VM and the prompt but my problem is with the 60 seconds, how do I give that prompt to the call when it reaches 60 seconds in the queue?

Regards

Correct Answer
david.macias Sat, 04/17/2010 - 05:21

Ok, so here's what you need to do.  In your excisting IVR script you will need to decide when to send the call back to ICM.  Usually this is done after playing 30 seconds or 60 seconds of music.  At this point, you can have an if statement which will check how long the caller has been in queue, if it's greater than 60 seconds then send the call to another IVR script which prompts the caller to leave a VM, if thy don't press anything then send them back to the first IVR script for more music.  Now, you will have to play around with the placement of the queues as to not prompt the caller for VM every single time, unless you want to do that.

So your script might look like:

QtoSG > RunExtScript (PleaseHold.aef)> If QTime>60 s

     If Yes RunExtScript (PleaseHoldVMOption.aef)>If CED = 1

          If Yes Label (VM Label)

          If No Send back to RunExtScript(PleaseHold.aef)

     If No Send back to RunExtScript(PleaseHold.aef)

David

rcordeiro Mon, 04/26/2010 - 07:06

Hi David,

Sorry to bother again...

I have done something similar to this:

QtoSG > RunExtScript (PleaseHold.aef)> If QTime>60 s

     If Yes RunExtScript (PleaseHoldVMOption.aef)>If CED = 1

          If Yes Label (VM Label)

          If No Send back to RunExtScript(PleaseHold.aef)

     If No Send back to RunExtScript(PleaseHold.aef)

My problem is with the Qtime, I'm trying to use the variable TimeInQueue, but it always goes to "If NO", is there any other variable I can use? Can I work with the "second()" variable?

Best regards

You have the right idea, but just use a loop counter. You don't need the queue time - just add up the prompt times.

This advice has been given several times and you don't seem to want to take it. We are wondering why? Everyone does it that way - why not follow the crowd?

(By the way, you have a very old system - some of those versions are no longer supported and may not quite have the functionality of later versions. Do you have an upgrade plan?)

Regards,

Geoff

rcordeiro Mon, 04/26/2010 - 07:36

Hi Geoff,

I'm just trying to integrate this a an Avaya Voice Mail... I don't do the dayli management of the system.

I know it will be easy to work with the prompt time but this must be done better because they have several scripts and several prompts with different playing time and sometimes with times like 43 seconds. One other thing is they don't know how to work with the system and make changes but they know how to change prompts and if they change the prompt this might no longer work well (this must be with 60 seconds maximum because of the government rules created for the contact centers that only allows someone to be in queue for 60 seconds without an option to leave the contact for a call back).

I though that by using some system variable I could take care of this (TimeInQueue)...

Any idea?

Best regards

I understand what you are saying and I know about government regulations, but I still claim you can easily do this.

Introduce an integer variable. Start at 0. Whenever you play a prompt, no matter where you are, increment the variable by the length of the prompt in seconds when it has finished. Go through the application and find all paths and time all prompts - make the appropriate edits.

Now I guarantee you can know how many seconds have played.

Explain to the customer that if they change a prompt that today is 27 seconds long to one that is 37 seconds long, it will put them in contravention of Government regulations. That should focus their minds.

Regards,

Geoff

rcordeiro Mon, 04/26/2010 - 13:13

Hi Geoff,

Thanks for all your help.

I'm know I'm almost there but I need to solve one of two things:

1- if I tranfers the call to VoiceMail from the IVR script (that works) I get an abort on the ICM "run external script", is there any variable I can send back to ICM to get the call ended? (I already tryied with the SET ICM options on the IVR)

2- if I transfer the call with a LABEL in the ICM I always get "unable to transfer the call", maybe it's something with the routes and PG?

Either one will do.

One other thing, is there a way to play the prompt just once in the IVR option "Menu" if you just don't want the customer to press any key?

Best regards

I don't do IPIVR much these days - I do CVP. But I have plenty of places where I do exactly what you want to do - transfer to Unity - and I just set the label on the correct routing client. Are the calls coming in directly to your IP IVR, or do they come into CUCM and you trans route to IPIVR (preferred method). If so, all you need to do is return the Unity label on the CUCM RC.

If that is not working, check the router trace to make sure there are no errors; if that's OK, you have a call manager issue. The call is sitting on a CTI port in IPIVR and you want to get the call to a Unity pilot. Make sure your CUCM allows this.

Regards,

Geoff

rcordeiro Wed, 04/28/2010 - 05:44

Hi Geoff,

It's working, I was doing the hardest road... Just had to create a Label for the correct PG.

Many thanks for all your help.

Best regards

rcordeiro wrote:

I cannot do the script based on the time the music prompt plays because this changes a lot with different sizes files (and time) ...


Nevertheless, you have played the prompts in your script and you know exactly what prompts you have played and can compute the time. It would be simple to make the calculations.

There is no problem with the 60 seconds - you can work it out. Going back to ICM is a bad move.

With CVP you can go in and out of ICM very easily - not so with IP IVR.

Regards,

Geoff

rcordeiro Sat, 04/17/2010 - 02:11

Well, I'm not in front of the machine but ICM is version 4, installed back in 2003.

david.macias Sat, 04/17/2010 - 05:17

Again, there is no such version, but I would love to see a screen shot of it to prove me wrong.

david

rcordeiro Mon, 04/26/2010 - 03:01

Hi David,

This is Call Center Enterprise with ICM version 5.0, CRAA (Customer Response Applications Administration) 3.1(2), running allong with Call Manager 3.3(3)sr4a.

This is not my world (contact centers), I'm just trying to help after the h.323 integration between the Call Manager and the system that is going to save the voice mails messages redirected after the 60 seconds in the queue, but if you want some more info to believe what I'm saying just tell me where to get it.

Best regards

david.macias Mon, 04/26/2010 - 03:31

ICM version 5.0 sounds right.  Hope you got the answers you were looking for.

david

Actions

This Discussion