cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1022
Views
5
Helpful
1
Replies

Variables across CCB script.

pmd4332
Level 1
Level 1

I am having an issue with a script that has a callback option, it has been requested that when the agent is ready the agent should be able to see the customers number and what CSQ they selected. Issue is, the first script calls the trigger to the CCB script and then it returns to the first script to complete the process. i cannot capture the information requested. what am i doing wrong? I have tried the usual steps (Call Info and Set Enterprise Info) any help would be great!!

Info flow: script 1---->CCB script-->script 1

1 Accepted Solution

Accepted Solutions

Anthony Holloway
Cisco Employee
Cisco Employee

The easiest way to pass information from the calling script (the one with the Place Call step), to the answering script (the one queuing the callback call), is to use Set/Get Enterprise Call Info steps.

 

In fact, the way in which the Set/Get Enterprise Call Info steps work, is by attaching data to a Contact.  The Contact in the calling script, the one you use in the Place Call step, is actually the same Contact in the answering step, the default --Triggering Contact--.  So, actions performed on one, are actually performed on both.

 

Example

 

Calling Script

Place Call (callback_contact)
  Success
    Set Enterprise Call Info (callback_contact) my_variable = "my value"

 

Answering Script

Accept (--Triggering Contact--)
Delay 3 sec
my_variable = Get Enterprise Call Info (--Triggering Contact--)
If (my_variable == "my value")
  True
    /* This should be true */

 

Note the delay in the answering step.  This is not accidental.  You are essentially firing two scripts to run in parallel here, and so we have a timing issue between when the calling script has set the variables, and when the answering script is trying to read them.

 

Tip for the pros: You can actually use this feature to understand when the Agent answers the call from the answering script, and then in the calling script poll the Enterprise data for a flag to be set to true.  E.g., is_answered.  This avoids the repeating message thing of "This is a callback call.  Press any key to blah blah blah"

 

It's confusing, no doubt, so just post back if this still doesn't make sense, and I'll keep helping.

View solution in original post

1 Reply 1

Anthony Holloway
Cisco Employee
Cisco Employee

The easiest way to pass information from the calling script (the one with the Place Call step), to the answering script (the one queuing the callback call), is to use Set/Get Enterprise Call Info steps.

 

In fact, the way in which the Set/Get Enterprise Call Info steps work, is by attaching data to a Contact.  The Contact in the calling script, the one you use in the Place Call step, is actually the same Contact in the answering step, the default --Triggering Contact--.  So, actions performed on one, are actually performed on both.

 

Example

 

Calling Script

Place Call (callback_contact)
  Success
    Set Enterprise Call Info (callback_contact) my_variable = "my value"

 

Answering Script

Accept (--Triggering Contact--)
Delay 3 sec
my_variable = Get Enterprise Call Info (--Triggering Contact--)
If (my_variable == "my value")
  True
    /* This should be true */

 

Note the delay in the answering step.  This is not accidental.  You are essentially firing two scripts to run in parallel here, and so we have a timing issue between when the calling script has set the variables, and when the answering script is trying to read them.

 

Tip for the pros: You can actually use this feature to understand when the Agent answers the call from the answering script, and then in the calling script poll the Enterprise data for a flag to be set to true.  E.g., is_answered.  This avoids the repeating message thing of "This is a callback call.  Press any key to blah blah blah"

 

It's confusing, no doubt, so just post back if this still doesn't make sense, and I'll keep helping.

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: