Contact Center Scripting

Posted by Lou Person on Apr 05, 2012 in Cloud Journey
Setting up call routing based on Area Code –
Steps needed –
1.    Setup database
2.    Setup Windows ODBC hook
3.    Setup ECC hook into database
4.    Adding some recordings to the ECC system
5.    Creating the needed Script
6.    Director and ECC director configurations to access script and test

Create a Microsoft Access database – with 3 columns. ID, RegionID, Delivery Area
You can name your database anything you would like. This name is only used when making the Windows ODBC connection. In the database the ID = Caller ID, RegionID = identifier to control routing, Delivery Area is a reminder of what location the ID is from.

Here is an example of my database:


Setup ODBC hook into database file –

Copy the created database to the ECC server.

Open Start menu, All Programs, Administrative Tools and then Data Sources (ODBC)

Select the "system DNS" tab and click add –

You should see one of the drivers for Microsoft Access.

If you do not see any drivers except the SQL one, then try C:\Windows\SysWOW64\odbcad32.exe instead. This is because the 64-bit version of ODBC Data Source Administrator only lists 64-bit If you still cannot see your drivers, you can try installing them with the following link:
So select System DNS, then click add. Select *.mdb driver type and click Finished. A window will pop open, you can name your connection anything you would like. Click the Database Select button and navigate to your database you created and select it. Then click ok and ok. You have created the Windows ODBC connection to your database.

Here is what my ODBC connection looks like:

Creating ECC hook into database –

  • Go to Contact Center Director and navigate to System Parameters, External Interfaces, then select Database Connections.
  • On the right select new
  • Change database type to Microsoft Access
  • Click Refresh on the ODBC DSN link and your database name should appear.
  • Name the connection and click save. You have created the ECC hook into your databse.

Here is what my connection looks like:

Adding recording to the ECC system –

For testing and depending on what you want your caller to hear once the area code has been figured, I like to add some recordings to the system.

Ie: failure at test point A, failure at test point B, failure at test point C, your area code is, your call is being routed to.

The easiest way to create a good recording in the correct ECC format is to just leave yourself a number of VMs and then export the wav files. Copy the wave files to your ECC server, IVR, en_US folder. I like to create a custom folder inside the en_US folder to keep my recordings in one place. My path is C:\Program Files (x86)\ShoreTel\ShoreTel Contact Center Server\IVR\en_US\Custom

Creating the call script –
In the ECC system you will need to create a couple of call profiles to use as data holders for the process. I created 3 of them. "FrontFour”, "AreaCode" and "groupnumber"

You can add these to the ECC Director via Call Profile section.

Open the scripting tool and select new script – name it area code routing

You will need to add a SQL Connect, 3 SQL Executes and a SQL disconnect. Then add a play file to test your results.

Add the SQL connect

Add the SQL Execute – query SELECT LEFT('%ani%',5), Call Profile select FrontFour.

Add the SQL Execute – query SELECT RIGHT('%FrontFour%',3), call Profile select Area Code

Add the SQL Execute – query SELECT RegionID from AreaCode where ID=%AreaCode%, call

Profile select groupnumber

Add the SQL disconnect

Add Announce – from here you can select to play the various call profiles and recordings. I selected to play "Your Area Code is" and then have the system play the Call Profile areacode.

Also for testing purposes – I would add the various sound recordings to the different failure points, on the SQL Execute points – err, t.o., N.F, so if things are not working correctly, you can figure out where the failure is coming from.

For my client that is using this for call routing, I have setup the failure points to change the groupnumber to the default group, so all calls get handled. In the script to the client I removed the play file option and added a Logical Switch so if groupnumber equals xyz transfer the call to xyz.

Here is a copy of the script in test mode – meaning I have failure points for testing

Here is a copy of the script in production:

Now that you have your ECC script created you will want to be able to test the script. You will need to create a Route Point in the ShoreTel Director to get call into the ECC system. You will then need to setup a IRN in the ECC system to direct the call to the new script.

In Director - go to Call Control - Route Point – click new

Name your Route Point something like ECC Area Code Routing

You will want to set your Route Point server to the ECC Server

Set your no answer destination to your ECC fail over, typically a work group.

Make note of the extension number you assigned. You will need this in the ECC system.

Then open up Contact Center Director and select New IRN

Create the desired IRN with the same extension number used on your route point.

Then go to the IRN's Destination and select script and your Area Code Script.

One last step in ECC Director – If you would like to be able to run reports on the number of calls hitting your newly created script, you will need to add a DNIS record.
Create a new DNIS record – with the name Area Code Routing and the IRN number you used earlier.

Happy scripting.