cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1140
Views
0
Helpful
2
Replies

UCCX 8.5 scripting question

johnhsnow
Level 1
Level 1

I need to modify a call center script which will redirect the customer to another contact center(call center) basically after they press option 1 for example, it redirects them back to another script.

I don't have a test env for this to test..

here is the flow

Script A

start

start_call

Accept

Get Call Contact Info

Mainmenu

Menu

0 <---------------------------------------------------------- call goes to the Customer Contact Center

*mainmenu_option0

1  

    * call Subflow ( script B )

2

3

4

Script B

start

start_call

Accept

Get Call Contact Info

ApplicationMenu

Menu

1 <---------------------------------------------------after the customer presses option 1 here, i want to send them back to option 0 in the above script to the                 *Call Subflow ( script C)

                                                                                                                          Customer Contact Center for call handling.

if

true

false

2

3

4

Can i use Goto to send them from script B option1, to script A option 0 or does Goto only work within the same script? 

How else could i do this? I dont want to send them back to script A at the start of the call, i need to send them to script A, option 0 directly.

Thanks All, really appreciate the help.

1 Accepted Solution

Accepted Solutions

Jonathan Schulenberg
Hall of Fame
Hall of Fame
Can i use Goto to send them from script B option1, to script A option 0 or does Goto only work within the same script? 

No. Goto steps only work within the same script.

How else could i do this? I dont want to send them back to script A at the start of the call, i need to send them to script A, option 0 directly.

This depends how you got to scriptB in the first place. If you called scriptB as a subflow you can skip to the end of the subflow script using a Goto step. When the subflow ends the call will return to the calling/parent script. Just have the next step after call subflow be a Goto that jumps back to the menu.

If on the other hand you used a Call Redirect or Transfer you'll need to redirect it back and add a switch step after the Get Call Contact Info step in scriptA. Use the called number as the cases with the "normal" trigger being the default case. You then add additional triggers to the application and define them as cases. In each of those cases you have a goto step that jumps forward in the code. Example:

  • Script A: Start
  • Accept
  • Get Call Contact Info (calledNumber)
  • Switch
    • 2001
      • Goto MENU1
    • 2002
      • Goto MENU2
    • Default
      • Annotate: Debug placeholder
  • Main Menu
    • 1
      • Label: MENU1
      • Menu
        • 1
        • 2
        • 3
    • 2
      • Label: MENU2
      • Menu
      • 1
      • 2
      • 3

Footnotes:

  1. As a reminder you must enter the actual trigger numbers when moving between applications. You cannot set the destination to a translation, route, or other CUCM pattern that will ultimately hairpin it back to CCX. CCX checks to see if the destination is itself (using the configured trigger DNs) and keeps it "in the family" to prevent a race condition. This won't work if the destination is not a real trigger DN.
  2. Your examples didn't show an On Exception (contactInactiveException) step. You should add this to the script immediately above the Accept step. The destination should be the End step (not Terminate, just End). This forces the script to stop processing when the caller hangs up.

View solution in original post

2 Replies 2

Jonathan Schulenberg
Hall of Fame
Hall of Fame
Can i use Goto to send them from script B option1, to script A option 0 or does Goto only work within the same script? 

No. Goto steps only work within the same script.

How else could i do this? I dont want to send them back to script A at the start of the call, i need to send them to script A, option 0 directly.

This depends how you got to scriptB in the first place. If you called scriptB as a subflow you can skip to the end of the subflow script using a Goto step. When the subflow ends the call will return to the calling/parent script. Just have the next step after call subflow be a Goto that jumps back to the menu.

If on the other hand you used a Call Redirect or Transfer you'll need to redirect it back and add a switch step after the Get Call Contact Info step in scriptA. Use the called number as the cases with the "normal" trigger being the default case. You then add additional triggers to the application and define them as cases. In each of those cases you have a goto step that jumps forward in the code. Example:

  • Script A: Start
  • Accept
  • Get Call Contact Info (calledNumber)
  • Switch
    • 2001
      • Goto MENU1
    • 2002
      • Goto MENU2
    • Default
      • Annotate: Debug placeholder
  • Main Menu
    • 1
      • Label: MENU1
      • Menu
        • 1
        • 2
        • 3
    • 2
      • Label: MENU2
      • Menu
      • 1
      • 2
      • 3

Footnotes:

  1. As a reminder you must enter the actual trigger numbers when moving between applications. You cannot set the destination to a translation, route, or other CUCM pattern that will ultimately hairpin it back to CCX. CCX checks to see if the destination is itself (using the configured trigger DNs) and keeps it "in the family" to prevent a race condition. This won't work if the destination is not a real trigger DN.
  2. Your examples didn't show an On Exception (contactInactiveException) step. You should add this to the script immediately above the Accept step. The destination should be the End step (not Terminate, just End). This forces the script to stop processing when the caller hangs up.

Thanks Jon, bare with me.

What im understanding from your explanation i just need to be clear - and i need to do this in baby steps thanks for the design suggestions, i need to make as little modifications as possible to keep this change low risk.

this is true assumption

This depends how you got to scriptB in the first place. If you called scriptB as a subflow you can skip to the end of the subflow script using a Goto step. When the subflow ends the call will return to the calling/parent script. Just have the next step after call subflow be a Goto that jumps back to the menu.

where do i put the Goto step? scriptA or B?

here is more detail on the flow.

scriptA start

accept

get call contact info

Mainmenu

Menu(Triggering contact, mainmenu)

0 - mainmenu option 0 <----------------------------------------- (i need) the call to end up here after pressing option 1 in script B.

call redirect (triggering contact, to mainmenu option 0 )

successful

Goto End

busy

Goto Terminate call

invalid

Goto Terminate call

unsuccessful

Goto Terminate call

1 - call subflow(scriptB)

jump over to scriptB - what (i need) is in parenthesis

script B

start call

accept

get call contact info

application menu

menu (triggering contact, application menu)

1 - call subflow  (scriptC) <------------- (I need) After the customer presses option 1 - then go to script A option 0 - not call the subflow C which presents menu options and then goes to a queue or voicemail.

if (setroutineAvm =true ) then

true

call redirect <----------------------------------------------------sends to mailboxA

false

if (setroutineBvm=true)then

true

call redirect <----------------------------------------------------------sends to mailboxB

false

Goto end

hope that makes sense or help me make sense of it