cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1296
Views
0
Helpful
5
Replies

Call Return Script

mightyking
Level 6
Level 6

Hi experts,

I have completed a script that calls back those callers who decide to leave their phone number while keeping their priority in the queue. All prompts are in two languages. They start a message in English and finish the same in Spanish. The last prompt says. One of our agents will call you back as soon as it's your turn, goodbye. This message starts in English and ends in Spanish. Everything works perfectly well if the system plays the entire prompt and hangs up. The problem begins when the caller ends the call before the system. Here is the issue I am facing:

 

Most of the callers are English and as soon as they hear the prompt that says goodbye, they hang up before the Spanish version of the message is played. As soon as the caller hangs up, the system removes the call from the queue and ends the call.

 

Is it possible to prevent the caller from ending the call before the prompt is fully heard? For this to happen, I have to make the caller wait until the system ends the call.

 

Would you guys happen to have a solution to share?

1 Accepted Solution

Accepted Solutions

Anthony Holloway
Cisco Employee
Cisco Employee

This is very easy to solve, and a common gotcha for people new to UCCX scripting.

 

You probably have something like this now:

...some script steps up here to collect the callback number...
Play Prompt (--Triggering Contact--, p[call_you_back_your_turn.wav])
Terminate (--Triggering Contact--)
Place Call (Call Back Number)
  Successful
    ...some script steps here to handle the call back...

 

And what you need to add is the following, which captures the caller's hang up event, and doesn't just puke.

...some script steps up here to collect the callback number...
On Exception (ContactInactiveException) Goto Place Callback
Play Prompt (--Triggering Contact--, p[call_you_back_your_turn.wav])
Terminate (--Triggering Contact--)
Place Callback:
Clear Exception (ContactInactiveException)
Place Call (Call Back Number)
  Successful
    ...some script steps here to handle the call back...

Give that a shot, and let us know.

View solution in original post

5 Replies 5

mightyking
Level 6
Level 6

Anybody with any ideas?

 

MK

Chris Thomas
Level 1
Level 1

Without knowing exactly what's going on here, I'm assuming you're doing some type of web service call and/or DB call to "schedule" the customer for a callback. If so, why not do that first, then play your goodbye message?

Anthony Holloway
Cisco Employee
Cisco Employee

This is very easy to solve, and a common gotcha for people new to UCCX scripting.

 

You probably have something like this now:

...some script steps up here to collect the callback number...
Play Prompt (--Triggering Contact--, p[call_you_back_your_turn.wav])
Terminate (--Triggering Contact--)
Place Call (Call Back Number)
  Successful
    ...some script steps here to handle the call back...

 

And what you need to add is the following, which captures the caller's hang up event, and doesn't just puke.

...some script steps up here to collect the callback number...
On Exception (ContactInactiveException) Goto Place Callback
Play Prompt (--Triggering Contact--, p[call_you_back_your_turn.wav])
Terminate (--Triggering Contact--)
Place Callback:
Clear Exception (ContactInactiveException)
Place Call (Call Back Number)
  Successful
    ...some script steps here to handle the call back...

Give that a shot, and let us know.

Hi Anthony,

Thank you very much for your precious support.  Your solution makes very much sense. I will be able to test the solution tomorrow and let you know. But I had in mind the following solution

1) Create a lable called ExceptionDelay (10 seconds)

2) Point the On Exception Goto ExceptionDelay

.

.

.

ExceotionDelay

Delay 10 Sec

Clear Excemption(ContactInactiveException)

PlaceCallBack

.

.

.

.

.

What do you think about this solution?

 

Thanks,

 

MK

Other than the delay 10 seconds, I don't see how this is any different than the example I gave you. Therefore, my question to you is: why the delay? Not that it's a bad thing, but it seems unnecessary.