TSAPI

Avaya Call Abandon and Short Duration Call Monitoring Tool

Introduction

This tool uses Avaya TSAPI library, it monitors VDN, ACD Hunt Group and Extension objects. For VDN monitoring, it keeps track of call state of all incoming calls from the VDNs. When calls are cleared before answered, calls are recorded as ABANDON. When calls are answered then cleared before a predefined duration, calls are recorded as SHORT DURATION. You can use CALLINFO records to create real time and historical reports. The CALLINFO records can be logged to Splunk and ODBC databases such as MSSQL, MySQL and Oracle are supported. The CallAban tool is useful in the following situations:

  • To provide real time data for building of real time reports and dashboards
  • To trace a call from its beginning to ending, multiple call records are linked by UCID
  • To capture callers for the abandon and short duration calls
  • To detect nuisance call attacks
  • To check how long each customer waits for an agent
  • To check the frequency and duration of an agent to perform hold call
  • To check agent or customer who hangups the call first
  • Uses the VDN detail call logging which stored in the database for different kind of reports
  • To make use of the abandon and short duration data and have integration with different kind of CRM application

12 Mar 2016, CallAban 1.4.6 just released. This version supports logging of change of agent states to database and Splunk. Also, interval statistics data is now included in the real-time SplitSkillStatus report.

22 Feb 2016, CallAban 1.4.5 just released. This version supports logging of SplitSkillStatus report to Splunk and Database. Also, agent logon and logoff events are logged to Splunk and Database. This version also supports MySQL, MSSQL and Oracle for database logging.

10 Feb 2016, CallAban 1.4.4 just released. This version adds a REST interface to get real time information of split skill. The output is similar to the one that produced by CMS real time split skill status report.

16 Dec 2015, CallAban release 1.4.3 just released. This version support REST interfaces to get call queue and call answer CALLINFO list for development of wallboard or real time monitoring applications.

Preparation and Password Encryption

  • The access MDB file stored the the username and password of AE server. For security reason, a tool called encryptpasswd.exe is provided to generate encrypted password for the installation and configuration of the software
  • Execute the program, generate an encrypted passwords for the user of AE server, then paste the encrypted password to parameter ag_tlink. For example, the encrypted password for “p@ssword” is “R3NIw1yJMLlnPFzEQtuh2A==”
  • encryptpasswd

64 bit Windows System 

  • For 64 bit Windows system, please follow the steps below
    • For version >= 1.3.5, download and install the Microsoft Visual C++ 2008 Service Pack 1 Redistributable Package MFC Security Update http://www.microsoft.com/en-hk/download/details.aspx?id=26368, use the x86 version
    • For version =< 1.3.4, download and install the Microsoft Visual C++ 2005 Service Pack 1 Redistributable Package MFC Security Update, http://www.microsoft.com/en-us/download/details.aspx?id=26347, use the x86 version
    • Configure ODBC System DSN using
      C:WindowsSysWOW64odbcad32.exe
    • Stop the Windows firewall because it enables by default and I don’t have time to figure out what ports are required to open, you need to find them out by yourself.

Installation

  • Download the TSAPI client for Windows 32-bit from Avaya web site, it contains the library files. DevConnect registration is required before you can access the download page.
  • Download the Avaya Call Abandon and Short Duration Call Monitoring Tool zip file here.
  • Follow the installation steps below to install the software.
    • Extract all the files into directory c:\program files\callaban
    • Open Windows Command Prompt, enter the following commands to register the program as Windows Service
      • cd c:\program files\callaban
      • callaban -i
    • Open ODBC Setting, create System DSN called CALLABANCFG for Microsoft Access Driver and point to callaban.mdb which is located in the directory c:\program files\callaban
    • Open the Access file, edit the value of parameters ca_tlink_01 and ca_tlink_02 to the TLINK of your AES servers in the tParameter table
    • Edit the value of parameter ca_movingavgmin to define the moving average period for the calculation of abandon and short duration call rate. The default value is 15 minutes.
    • Edit the value of parameter ca_intervalstatmin to define the interval statistics period for the calculation of abandon and short duration call rate. The default value is 30 minutes.
    • Edit the value of parameter ca_shortduration to define the number of seconds for short duration calls. The default value is 3 seconds.
    • Edit the value of parameter ca_agengstatechecksplit to true when you want to poll agent status of agents that login to split
    • Edit the value of parameter ca_refresh_agentstate to define the number of seconds the system gets the state of each agent and update the difference to database and Splunk. The minimum value is 5 seconds.
    • Edit the value of parameter ca_cache_timeout to define the number of seconds as cache time for real time reports. The cache time setting reduce the AES logging when multiple clients retrieve the same report at same period of time.
    • Start the Windows Service callaban
    • Telnet to localhost and port number 14003, enter username tcpgate and password tcpgate01 to access the program console
    • Enter the following command in the program console, you will receive information when there is call abandon and short duration call
      • trace on asc
    • Enter the following command in the program console to add your VDN
      • add vdn xxxxx
    • Enter the following command in the program console, you will get the help message
      • help

Write Abandon and Short Duration Call Data to Database

  • Download the callaban-x.x.x.rar file, unzip the file and there is a SQL script called callaban.sql
  • Follow the steps below to create the required database, tables and user:
    • Create the callaban database in MYSQL
    • CREATE DATABASE callaban;
    • Create a user called “callaban” and password “abancall”
    • CREATE USER 'callaban'@'localhost' IDENTIFIED BY 'abancall';
    • CREATE USER 'callaban'@'%' IDENTIFIED BY 'abancall';
    • GRANT ALL ON callaban.* TO 'callaban'@'localhost';
    • GRANT ALL ON callaban.* TO 'callaban'@'%';
    • FLUSH PRIVILEGES;
    • Use mysql to import table definition:
    • mysql -h localhost -u callaban -p callaban < callaban.sql
  • Open ODBC Setting, create a System DSN called CALLABANDBCFG for MySQL ODBC Driver, MySQL is used to store abandon and short duration calls details information.
  • Edit the parameters follow:
    • ca_dbsqltype, supported database such as mysql, mssql and oracle
    • ca_dbdsn, enter the ODBC System DSN, the default value is CALLABANDBCFG
    • ca_dbusername, the username used to connect the database, default value is callaban
    • ca_dbpasswd, the password used to connect the database, default value is encrypted password 9wkWfxiBlM1L9qsJaDWwAA==
    • ca_writecallinfo, set it to true if CALLINFO data logging is required
    • ca_remotedb_errfile, the filename to store temporary SQL statements when database is not reachable
    • ca_dbmssqlobject, if you are using mssql and you want to change the object name of the database, then change the value of this parameter

Splunk Logging

  • Follow this link for the configuration

Customized DLL for User Data Logging 

  • Edit the parameters to enable logging of user data. A customized DLL is used to extract user data from UUI key
    • ca_custdatadll, the path and name of the DLL
    • ca_custdatamaxsize, the maximum size of user data
    • ca_custdatareplacenonprint, set it to true if replacement of non print characters to blank characters is required
    • ca_custdatatype, the data type of the UUI key for the extraction of user data, the default value is userspecific

Email Notification for Abandon and Short Duration Call

  • Edit the following parameters for email notification
    • Edit the value of parameterca_emailabancall, set it to true for email notification of abandon call
    • Edit the value of parameter ca_emailshortcall, set it to true for email notification of short duration call
    • Edit the value of parameter tg_emailserverip to define the IP address of your email server.
    • Edit the value of parameter tg_emailsmtpport to define the SMTP port number of your email server. The default value is 25.
    • Edit the value of parameter tg_emailusername to define the  username of email agent which is responsible to send notification emails.
    • Type genpass in the program console to generate an encrypted password string for the email agent, copy the string for later use.
    • Edit the value of parameter tg_emailpasswd to define the password of the email agent. The password should be in encrypted format, you can use console command genpass to generate the encrypted password.
    • Edit the value of parameter tg_emailsenderdisplay to define the display name of the email agent.
    • Edit the value of parameter tg_emailauth to define whether authentication is required between your CallAban machine and the email server. When your email server trust your machine, set it to false, otherwise set it to true.
    • Edit the value of parameter tg_emailssl to define whether SSL communication is required for the SMTP session. The default value is false, set it to true when SSL is required.
    • Enter the following command in the program console to add your email address
      • add email youremail@company.com
      • Hint: Replace my email address to yours
    • Enter the following command to test the configuration
      • test email

Display Statistics 

  • Call Abandon and Short Duration Call rates are calculated automatically. 
  • I have integrated Nagios to display them in graphical way, see the pictures below:
  • callaban
  • calabanstat
  • To enable Nagios integration, enter this command in program console to add a TCP port for Nagios plugin
    •  add tcp 5100 * * custom callaban
  • Download the Call Abandon Nagios plugin by this link.
  • Follow the steps to compile the Call Abandon Nagios plugin
    • tar xzvf cabanstat.tgz
    • cd cabanstat
    • make
  • Download the Short Duration Nagios plugin by this link.
  • Follow the steps to compile the Short Duration Nagios plugin
    • tar xzvf cshortstat.tgz
    • cd cshortstat
    • make
  • Ask your system administrator to config the Nagios

CAAPI32

  • Windows DLL API is developed for application integration, OCX version will be developed later. 
  • Sample application with header and library files can be download by this link.
  • You can use API to have the following functions:
    • Get abandon rate
    • Get short duration rate
    • Get the top 10 abandon call agents
    • Get the top 10 short duration call agents
    • Get the top 10 abandon call callers
    • Get the top 10 short duration call callers
    • Receive abandon and short duration call records via user provided callback function
  • To enable caapi32, type the following command in the program console
    • add tcp 5200 * * custom caapi

REST Interface 

Limitation

  • This software required AE server up and running. Missing events will be occurred when the AE server is down or during the fail over from one AE server to another.

2 thoughts on “Avaya Call Abandon and Short Duration Call Monitoring Tool

Leave a comment