Need Help in Scripting

Unanswered Question
Feb 7th, 2008
User Badges:

I am setting up a test script where the caller will be prompted to enter 6 digits address code. For testing, we don not need to dip into the database to validate the address code. For now, I just need to collect those digits and insert it as a variable to the URL (see below) to search the information portal that was provided to me by our programmer.

C:\Program Files\Internet Explorer\iexplore.exe[VariableFromAddressCode]

The call will then be presented to the next available agent and will pop-up on the agent's desktop.

My problem is how create a script to collect and store those 6 digits address code entered by the caller and insert it as a variable to the [VariableFromAddressCode]in the above url.

Any help will be greatly appareciated. Thank you.

  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 4.5 (7 ratings)
david.macias Thu, 02/07/2008 - 14:47
User Badges:
  • Blue, 1500 points or more

Assuming UCCE, you will have to pass the call to an IVR/VRU to do the prompting and collection of digits, then pass this information to ICM. Perhaps you have specify what product you're using I can be more specific.


mt6322_vdc Thu, 02/07/2008 - 16:45
User Badges:

Thank you for your response. We have UCCX 4.x Premium. I am using the ICD script to route calls to the queue. I need additional script to collect the digits that will be entered by the caller and store it as variable. I created a work flow that will launch an external application using the url mentioned above that should pop-up on the agent's screen while the agent's phone is ringing. As you can see, there is an area at the end of the url that will require to use the address code variable collected from the caller. So I need some guidance on how to create that additional script to perform the digit collection and insert the digits in my URL. Again, thank you in advance for your help.

Abdulbaseer Mohammed Thu, 02/07/2008 - 16:46
User Badges:
  • Silver, 250 points or more

Your IP IVR or CRS script will be the same for prompt and collect digits.

Attached is my script for prompting user to enter digits I take that, store it in a variable then compare it.

This should guide and help you what you need to accomplish. Let me know if you need further help.

All you need is Get Digit string. Step found under Media.

from CRS help:

Get Digit String Step

Use the Get Digit String step to capture either a DTMF or spoken digit string from the caller in response to a prompt. When using ASR, the prompt used should ask the caller to "press or say" the digit string, because this step automatically supports spoken digits as well as DTMF digits when executed with ASR.

The Get Digit String step waits for input until the caller does one of the following:

Presses the terminating key (DTMF only)

Exhausts the maximum number of retries

Enters the maximum number of keys (DTMF only)

Does not respond before the timeout length is reached

In ASR mode, the step will take an entire spoken digit string but will return the digit result only up the specified Input Length.

Users must speak digits sequentially; for example, 1 2 3 4 must be spoken "one-two-three-four" instead of "twelve thirty-four".

Note When any previous escalating prompt in the script enters the Get Digit String step, it is reset to the first prompt in its list.

The Get Digit String step provides three output branches:

Successful--Input was valid.

Timeout--After the retry limit was reached, the last try timed out.

Unsuccessful--After the retry limit was reached, an invalid key was pressed or an invalid value was spoken.

Note In the event of an error, the accumulated digits are returned and saved in the specified variable before the script exits through the unsuccessful or timeout output branches.

The customizer window of the Get Digit String step contains four tabs:

General tab (Get Digit String step)l

Prompt tab (Get Digit String)

Input tab (Get Digit String)

Filter tab (Get Digit String)

The following sections describe these



mt6322_vdc Fri, 02/08/2008 - 04:49
User Badges:

Thanks for the detailed explanation on collecting the digits. I have that portion added to my ICD script. Now, my question is - how do I automatically insert these digit strings in place of Address code variable in my URL so it will pop-up the application while the agent's phone is ringing. I need further need on this. Thank you.

mmelbourne Fri, 02/08/2008 - 08:10
User Badges:
  • Silver, 250 points or more

In Desktop Administrator, you need to set up a Workflow (and assign it to agents), which runs an HTTP Action on a 'Ringing' event.

You can use the Set Enterprise Info step in the script to store the digits in the 'Caller Entered Digits' (or similar) variable. This can then be accessed in the "Request Data" section of the HTTP action window.

Attached is a screenshot of a sample HTTP action.

Please rate helpful posts!

mt6322_vdc Fri, 02/08/2008 - 08:49
User Badges:

This is my first post and I am very impressed by the amount of help and information that I have received. Thanks a lot for all your responses.

I will try to assemble all the pieces gathered from this post and hopefully I could make my script work.

mt6322_vdc Fri, 02/08/2008 - 11:33
User Badges:

I created an agent workflow - called Telecom and added the enterprise data addressCode as part of the TelecomLayout. On the work flow setup, I created an action to launch phone user website with the required URL with arguments= addressCode. I completed and tested my attached script, and it works to a point that

1. it collects the digits and store it in addressCode variable.

2. it then routes the call to the next available agent and immdiately pops up the application.

The problem is my application does not pick up the digits in the address code variable.

Please see attached script and please advise what I am missing or any errors in my script. Thanks a lot.

mmelbourne Fri, 02/08/2008 - 11:43
User Badges:
  • Silver, 250 points or more

Unfortunately, I can't open your 4.0(4) script with the 4.0(5) editor I have here.

Is the script not popping the information on the agent CAD? Can you perform a debug of the script and ensure the variables are being populated correctly?

In your Select Resource Step, you need to select "Connect=No" and under the Selected branch place a "Set Enterprise Info" step, and then use a Connect step after to manually connect the call to the (now reserved) agent.

mt6322_vdc Fri, 02/08/2008 - 12:00
User Badges:

From the dedug - the addressCode variable is being populated by the digits entered by the caller. On the agent's CAD, I do not see the addressCode field and the layout field is still showing as default (should be TelecomLayout).

Using the set enterprise info step what should be my values ? Thanks.

mt6322_vdc Fri, 02/08/2008 - 13:10
User Badges:

It is now showing my correct layout and the addressCode variable on the agent desktop. The only problem now is that once it inserts the addressCode into the URL it is adding %20 infront of the address code.

Here is an example:

C:\Program Files\Internet Explorer\iexplore.exe

The digit 266992 is the variable from addressCode as show on the agent desktop. Where is the %20 coming from ? Any advise ?

Again, thank you all for your assistance. It was a great learning experience for me with all your valuable inputs.

mmelbourne Fri, 02/08/2008 - 13:51
User Badges:
  • Silver, 250 points or more

%20 is a space; do you have any trailing spaces in the URL path anywhere?

You've probably worked out you can also use the Set Enterprise Info step to select the name of the layout to use when popping the Enterprise Data.

Abdulbaseer Mohammed Fri, 02/08/2008 - 15:05
User Badges:
  • Silver, 250 points or more

You are welcome. You got it just play with CRS editor to debug can help as well.

But %20 is for space if you get that padded or normalize your data you will be set.

Thanks for your ratings as well.

Good luck,


mt6322_vdc Mon, 02/11/2008 - 07:17
User Badges:

I still could not figure out where the space (%20) is coming from. As I have mentioned, it will pop up the external application but I am getting a response of no data found from the Info Portal server because of the %20 being added infront of my address code.

I also tried the suggestion of mmelbourne to use the http action as a ringing event. If I preview and test my entry within the http action setup- it will launch the application correctly. But, if it is done through the script, it will ring the agent but will not pop the application using the same http action that I have configured.

Any advise in resolving the 2 above issues? Thanks in advance.

david.macias Mon, 02/11/2008 - 08:01
User Badges:
  • Blue, 1500 points or more

On the %20 problem, try bringing up notepad as an external application and pasting the URL on Notepad using CAD. This will remove IE from the mix and will let you know if the issue is with your CAD configuration or with IE.


mt6322_vdc Mon, 02/11/2008 - 10:28
User Badges:

Thanks for you reply. I used notepad and I can confirm that a space is being inserted by the CAD. But I don't see any space after the data field or the URL that I have setup using the desktop administrator.Any other suggestions ? Thank you.

david.macias Mon, 02/11/2008 - 10:50
User Badges:
  • Blue, 1500 points or more

Post screen shots of the CAD configuration please.



This Discussion