cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
20694
Views
5
Helpful
5
Comments

CUICM Routing Script

Create and schedule a routing script on AW by using the script editor software.

Following picture shows a sample routing script.

syali_ICM_Basic_Script.gif

The logic that is followed for creating this script is as under

  • Start the script with the start node
  • Set the value of media server HTTP URL in Call.user.microapp.media_server variable. This is the web server URL from where .wav files will be played
  • Set the value of language in Call.user.microapp.local
  • Set the value of input type (which is digits in this sample script) in Call.user.microapp.input_type variable
  • After setting the variables send the call to IVR using “Send to VRU” node
  • Run external script called “get4digits” that will ask customer to enter 4 digits
  • The value will be saved in Call.user.microapp.play_data variable
  • Then run another external scrip called playdigits. This script will play the value stored in Call.user.microapp.play_data variable
  • The select LAA (Longest Available Agent)
  • If agent is available, send the caller to agent using the Skill Group node
  • If agent is not available, send the caller to Queue
  • While the caller is in queue, play agent busy and music on hold .wav files in loop

Upgrading CUICM System

After or before the configuration is done, you may upgrade the ICM and CTIO Server software with the new versions.

UCCE Routing Script Example#2

Following screen shot shows another example of UCCE Routing Script. Following script is simpler than the previous one.

  • The Script is executed when call comes in from CVP by dialing 23490. Following diagram shows the scrip logic

UCCE_Script_RE_Demo_23490.PNG

  • Call flow is that a Jabber iPAD user dials 23490 from CUCM
  • CUCM sends this call to a SIP Trunk that points it to CVP Call Server (172.19.239.75)
  • CVP Call Server takes the call and send it to UCCE Router
  • A script is scheduled to run all the time and will be involked when the DN is 23490
  • Script will set the IP address of 172.19.239.75 which is also acting as Media Server (IIS is running as Medial Server)
  • "en-us" and "app" are IIS directory names where holdmusic.wav file is saved.
  • So basically the script will create a link http://172.19.239.75/en-us/app/holdmusic.wav at the end and CVP will send it to the VXML-Browser (VXML Browser is actually the VXML-GW)
  • The hold music will be payed until and agent becomes available
  • Till then call will be "Queue to Skill Group" in the CUCM_PIM_1.Cisco.Voice.CVE skill group
  • This audio will be played for the infinite amount of time, till the agent becomes available

Example#2 Screen Shots

Media Server should be added in the CVP Call Server

IIS_Screen_1.PNG

MakeSureDirectory_Browsing_Is_Enabled.PNG

You_Should_be_able_toSee_the_FilesInTheFolder.PNG

YouShouldBe_Able_2_PlayIt_FromBrowser.PNG

VXML Gateway debugs ("debug voice applicaton vxml") will show you the call coming in from CVP

CVE-DEMO-VXML-CUBE#//828/F84D03000000/VXML:/vxml_formitem_select:

   Status=VXML_STATUS_OK,

Mar 21 20:52:29.161: //828/F84D03000000/VXML:/vxml_formitem_select:

    AsyncStatus=VXML_STATUS_OK

Mar 21 20:52:29.161: vxml_object_proc:

Mar 21 20:52:29.161: //828/F84D03000000/VXML:/vxml_item_attrs_proc:

   name=dummyobj

Mar 21 20:52:29.161: vxml_param_proc: name=return expr=true valuetype=123

Mar 21 20:52:29.161: vxml_param_proc: name=app-uri expr='builtin://dummyobj' valuetype=123

Mar 21 20:52:29.161: //828/F84D03000000/VXML:/vxml_prompt_proc:

         <prompt>: typeaheadflush=0 alternative=0

Mar 21 20:52:29.161: //828/F84D03000000/VXML:/vxml_audio_proc:

         <audio>:

   URI(abs):http://172.19.239.75/en-us/app/holdmusic.wav

   scheme=http

   host=172.19.239.75

   path=/en-us/app/holdmusic.wav caching=fast fetchhint=invalid fetchtimeout=4 maxage=-1 maxstale=-1

Mar 21 20:52:29.161: //828/F84D03000000/VXML:/vxml_vapp_media_play:

   bargein=1 timeout=0 typeaheadflush=0 vcr=0 rate=0 alternative=0 hotword=0 maxtime=0

Mar 21 20:52:29.161: //828/F84D03000000/VXML:/vxml_vapp_media_play:

   str=http://172.19.239.75/en-us/app/holdmusic.wav cachable=1 timeout4 maxage=-1 maxstale=-1 codec=-1

Mar 21 20:52:29.161: //828//AFW_:/vapp_media_play:

Mar 21 20:52:29.161: //828//AFW_:/vapp_media_play: prompt=http://172.19.239.75/en-us/app/holdmusic.wav:

Mar 21 20:52:29.161: //828/F84D03000000/VXML:/vxml_formitem_select:

   loop cnt=0,

Mar 21 20:52:29.161: //828/F84D03000000/VXML:/vxml_load_immediate_done:

   sidp->status=104000000

Mar 21 20:52:29.161: //828//AFW_:/vapp_checksessionstate:

Mar 21 20:52:29.161: //828//AFW_:/vapp_checkifdone: Object: 1, Leg: 1

Mar 21 20:52:29.369: //828//AFW_:/vapp_driver: evtID: 181 vapp record state: 0

Mar 21 20:52:29.369: //828//AFW_:/vapp_play_done: evID=181 reason=12, protocol=2, status_code=404, dur=0, rate=0

Mar 21 20:52:29.369: //828/F84D03000000/VXML:/vxml_media_done:

   status 2 async_status 104000000 duration=0 rate=0

Mar 21 20:52:29.369: //828/F84D03000000/VXML:/vxml_save_lastprompt_info:

Comments
gerardoderosas
Level 1
Level 1

Hi Syed. About this routing script, what if you remove the SELECT LAA and SKILL GROUP nodes, and go directly to QUEUE TO SKILL GROUP? Does this suggested flow have any unexpected behavior or inconvenient?
Best regards!

raziel78kain
Level 2
Level 2

Hello,

I have the same question of gerardoderosas...

Regards.

shridhar reddy
Level 1
Level 1

Hello,

You cann't do, bcoz LAA is decision making Node for selecting agents based on certain algorithms which you implement like LAA, eventually in your business your customer's calls should be served by some available agents not queuing calls all the time of the day ,so SKILL GROUP Node is required.

Thanks !!

Shridhar Reddy

4deepakkaushikk
Level 1
Level 1

Hi Experts,

Can any one can explain and give details of PD Microapp.i have collected digits "9856" from the customer and I want to play these digits back to caller through PD Microapp.

i am able to play the captured single digit through GD microapp and storing it in Peripheral variable 1 and for playback i am using PM, -1 microapp. but i want to play 9,8,5,6 in single line. please help me for the same.

Best Regards,

Deepak Kumar

4deepakkaushikk
Level 1
Level 1

Hi,

in the above script we are collecting 4 digits from caller and for playback these 4 digits back to caller we are using PD Microapp.can anyone show me the format to create the network VRU script to play these 4 digits back to caller as mentioned in above script. one captured digit i am able to play through PM,-1 but for 4 digit i am not able to get the logic for playback.

Br,
Deepak

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: