cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
434
Views
0
Helpful
3
Replies

CRS Script design strategy

shikamarunara
Level 4
Level 4

I'm attempting to put together a script that is a departure from what I am used to writing. It's pretty much a basic call queue except that;

1) When there are 3 to 6 calls, an audible notifier is played every 45 secs

2) When there are 7 to 9 calls, an audible notifier is played every 30 secs

3) When there are over 10 calls, an audible notified is played every 10 secs.

The audible notifier is really just a call placed by the script to our 1-to-many broadcast platform SA-Announce. Mechanically, everything seems to work okay as the calls can be placed and an audible sound is played. No problem.

I am running into problems with the triggering event. Right now, when a call is placed into the queue, it triggers off the other scripts that place the call to the audible alert. Well, this can be a problem since I don't want every call to set off the alert. My question is; can I set up a script to check the queue statistics independently at regular intervals and play the appropriate alert based on the queue stats at that point? I need to find another triggering mechanism.

Thanks,

-Shikamaru

1 Accepted Solution

Accepted Solutions

You could create an application with an HTTP trigger (if you have premium licensing). CCX cannot self-trigger an application so you would need to write an external mechanism to do this.

View solution in original post

3 Replies 3

Jonathan Schulenberg
Hall of Fame
Hall of Fame

My recommendation would be to:

1) Create a simple XML file in the Document Repository with an element for a time stamp of each CSQ.

2) Use the Get Reporting Statistics step and nested If statements to create your various conditions.

3) Within the appropriate True branches of your If steps, add the logic to retrieve the timestamp within the XML file and compare it to the current system time.

5) If the delta matches your defined requirements (45, 30, or 10 seconds respectively), place a call to SA-Announce.

6) Update the XML file with a new time stamp indicating another call has been made within the Success branch of your Place Call step.

I would add this as a simple subflow within the Queued branch of the Select Resource step for sanity. It will still count against your overall step count limit (watch out for that) but you're scripts will be easier to maintain.

There is no mechanism of a file lock within the Document Repository so I'm not sure this gets you guaranteed avoidance of duplicate calls since it would be conceivable that another call could retrieve the file from the repository within the split second before another script writes the XML file back to the repository after making a call.

Is there a way of triggering the call independently of the activity to the call center queue?

You could create an application with an HTTP trigger (if you have premium licensing). CCX cannot self-trigger an application so you would need to write an external mechanism to do this.