01-26-2017 11:16 PM - edited 03-15-2019 06:26 AM
I'm currently trying to simplify an emergency evac script. At the moment it's not triggering the change to the emergency prompts when activated.
Scenerio:
Call Center A
Dial : 2777 (2777_trigger.aef)
Prompt Voice – please enter your pin
Pin - 12345
The "EMERGENCY" message is currently inactive, please press 1 to activate the message
Pressed 1
The "EMERGENCY" message has been successfully activated…
At this stage all inbound calls for Call Center A should be redirected to an EMERGENCY prompt stating that due to an emergency the office is closed and then call is then terminated.
Once all is clear, user in Call Center X dial 2777, goes through the prompts and deactivate the "EMERGENCY" message. All inbound calls for Call Center A will forward to the usual business call flow to the agents.
The nz_cs_emcheck.aef is meant to check if the XML file has a value of "1" when activated from dialing 2777. If "1" is presented, then sends a value of "true" back to the script forum_emergencyscript.aef (If(AdhocMsg) > True.
NOTE: This should not affect Call Centers B, C and D which is also part of the same UCCX cluster.
Sorry for the caps.
Hope this makes sense....
Thanks
01-27-2017 09:27 AM
If you want a simple version, here's something to try. It keeps the Emergency routine inside of the Call Center script, but uses a different phone number (Trigger) to detect what you're trying to do. Either manage the status, or call the Call Center.
The repo_user can be any CUCM End User account, as long as the PIN is set and you know what it is.
I'm using a plain TXT file as opposed to an XML document, because you don't NEED the stucture of XML here, just a simple container holding a value. The document should be uploaded to the repository first, otherwise you'll have to build in some exception handling.
Which brings me to, you'll likely want to make this a little nicer for the user. I've created the bare bones framework to make this work. E.g., Soft sounding error messages, and more retries.
Triggers
1000 - Call Center A Main Number
1001 - Call Center A Emergency Management
Application
Call Center A
Script
call-center-a.aef
Script Variables
String pin = ""
User repo_user = USER[uccxadmin]
String called_number = ""
String current_status = ""
String filename = "call-center-a.txt"
Document emergency = DOC[call-center-a.txt]
Script Steps
Start
Accept (--Triggering Contact--)
Get Call Contact Info (--Triggering Contact--)
Switch (called_number)
1001 - Emergency Management
Goto Emergency Management Routine
Default
Goto Check for Emergency Closing
Label Emergency Management Routine:
pin = Get Digit String (--Triggering Contact--, enter_pin)
Successful
Authenticate User (repo_user, pin)
Successful
Label Play Current Emergency Status:
Set current_status = emergency
Play Prompt (--Triggering Contact--, current_setting_is)
Switch (current_setting)
"1" = Emergency
Play Prompt (--Triggering Contact--, emergency)
Default
Play Prompt (--Triggering Contact--, default)
Menu (--Triggering Contact--, emergency_menu)
1 - Normal Mode
Set current_status = "0"
2 - Emergency Mode
Set current_status = "1"
Timeout
Unsuccessful
Upload Document (repo_user, L[], filename, current_status)
Successful
Delay 3 sec
Goto Play Current Emergency Status
Unsuccessful
Unsuccessful
Timeout
Unsuccessful
End
Label Check for Emergency Closing:
Set current_status = emergency
Switch (current_status)
"1" = Emergency
Play Prompt (--Triggering Contact-- emergency_msg)
Terminate (--Triggering Contact--)
End
Default
...Continue with normal call center logic...
End
01-27-2017 10:22 PM
Thanks Anthony.
I tried it and works as expected. The problem I will face is if Call Center B, C or D wants to use the same function. That would require utilizing a unique DID number per call center.
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: