cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Announcements
Walkthrough Wednesdays
463
Views
5
Helpful
2
Replies
Peter Valdes
Participant

Simplify an Emergency Evacuation Trigger

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

2 REPLIES 2
Anthony Holloway
Cisco Employee

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
Peter Valdes
Participant

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.

Content for Community-Ad

Spotlight Awards 2021

This widget could not be displayed.