This document is written for customers and prospective customers interested in using Tenfold in an Avaya telephony environment where TSAPI will be used for CTI. Readers who will perform procedures in this guide should have a basic level of familiarity with IP telephony, general networking, the Linux operating system, Avaya telephony, and Tenfold.
To monitor events on Avaya CM Tenfold requires an available TSAPI license for each extension being used with Tenfold. This guide explains how to add a license to Avaya CM.
Goals
The goal of this document is to provide knowledge, reference, and procedural information necessary to understand a proposed Avaya/Tenfold integration using TSAPI, and to configure the Avaya equipment to support the integration.
This document is NOT intended as a specific system or network design document. If further clarification is needed, consult with your telephony vendor.
Terminology
To ensure a common frame of reference, this guide uses the following terms in conjunction with this Avaya integration:
- AES: Application Enablement Services. The AES server in an Avaya contact center hosts software that provides CTI events.
- TSAPI: Telephone Services Application Programming Interface. Avaya TSAPI is software that provides the call control events and metadata to Tenfold.
- DMCC: Device and Call Control APIs. Tenfold uses the DMCC APIs to communicate with AES.
- TCC: Tenfold Cloud Connect - Responsible for receiving events from Avaya and sending them to Tenfold Web Services to be processed.
- Tenfold Cloud: Receives events from TCC and takes further action, such as querying and saving to the CRM.
Customer responsibilities
You are responsible for supplying the physical and/or IP connections to your telephone system and LAN, and for obtaining and loading any licensing required by Avaya. You are also responsible for configuring Avaya system components to support the Tenfold integration.
Integration overview
The Avaya integration allows Tenfold to receive call-related events and metadata from the AES. These call events are received by Tenfold Cloud Connect (TCC) and published to Tenfold Cloud.
Avaya requirements
Licensing requirements
- One (1) TSAPI basic user license per extension/agent monitored by Tenfold, plus any physical transport (C-LAN, AES server, etc.) as appropriate.
- One (1) DMCC license for the Tenfold Avaya integration user in order to monitor agent login/logout events. DMCC licenses are not needed per agent. DMCC is used to get the device ID for each user but this does not consume a license.
- One (1) agent ID per agent.
The TSAPI basic user license is often referred to as either an "agent-based license" or a "station based license." It is intended for applications that want to monitor or control a station or monitor an ACD split. In the license file it is referred to as a "Simultaneous User" license. It is scaled in terms of the number of agents, stations, or ACD splits that you want to monitor and control.
The TSAPI basic user license requires that you license and enable Computer Telephony Adjunct Links on Communication Manager.
Firmware version required
- Avaya Communication Manager: 7.1 or later
- Avaya AES: version 7.1 or later
Network requirements from TCC to Avaya AES
- TCP port 4721 (or 4722 if required)
Advisories
- TCC supports H.323 and SIP extensions, but for SIP extensions additional help from Avaya might be required to make them work with DMCC.
- TCC supports transfer/conference of a call to a PSTN destination as long as dialing rules are set up correctly.
- In the conference scenario, when the PSTN party drops from the conference first, each agent desktop continues to reflect connection to the PSTN party.
- By design, Tenfold establishes two separate DMCC sessions with Application Enablement Services: one for device monitoring and call control, and the other for agent state queries.
- By design, after an agent logs out of ACD, Tenfold, and Salesforce.com, Tenfold retains the monitoring session on the associated agent station.
- When a call experiences a 60-second Ethernet disruption to the Tenfold Cloud Connect server, that call cannot be dropped from the agent desktop post link recovery. The workaround is to use the agent telephone to drop the active call.
- If leveraging agent status with Tenfold, the station must be logged in prior to signing in as an agent via Tenfold.
- One-X Communicator has a known limitation where reason codes may not be reflected properly when leveraging a third-party integration. Avaya Agent for Desktop does not have this same limitation. Avaya Agent for Desktop may require that reason codes are configured via Site Administration (Avaya utility) to display reason codes properly.
- Do not use the same skill on multiple TCC instances as this will cause issues with SIP extensions.
Required information
To perform an installation, you will need the following information.
CM IP Address | Enter the IP Address of the C-LAN interface |
---|
CM Switch Name | Switch Name of the CM |
Login Feature Access Code | CM Access Code required to log in |
Logout Feature Access Code | CM Access Code required to log out |
Busy Reason Code and Aux Code Lists | CM Busy Reason Codes and Aux Codes to add to be reflected in Tenfold’s UI via Agent Status |
Skill Extensions | All Agents need to be a part of a skill or skills for Tenfold to monitor the login/logout events |
Dialing Rules | Please share any prefix information that is needed for dialing external numbers |
Trunk access | The code that is required to make an external call |
TSAPI server | AES virtual IP or IPs associated with a geo-redundant configuration |
TSAPI stream | TSAPI stream names |
TSAPI username | TSAP User ID |
TSAPI password | Password for TSAPI user |
Context Store API URL (if applicable) | If authentication is required, we will need the certificates. |
Important
Completing the TCC x Avaya AES Prerequisites document is required prior to Integrating TCC.
Tenfold requirements
Tenfold Cloud Connect is an On-Premise agent that connects your PBX with Tenfold Cloud. The agent is deployed as a service running on a Linux server that retrieves the phone events from your PBX via the LAN; it then forwards these events to Tenfold Cloud for processing and handling. In addition, the agent enables the Tenfold UI to issue commands, such as call controls and setting the agent status..
TCC host requirements
A server or workstation that can be left on and operational 24x7.
System Requirements
Tenfold Cloud Connect Server:
Operating system (OS) requirements
- Redhat 7 or 8
- Windows Server 2016/2019/2022 with Desktop Experience
Hardware requirements
Quad-Core Processor
- 2.3 GHz minimum
- Hyper-threading enabled
- 16 GB RAM Memory
- 250 GB Free Hard Disk Space (minimum HD speed: 7200RPM)
Network specifications
- Gigabit Ethernet between TCC and AES Servers
- Virtual Environments are supported
- Must have access to the internet
- TCP port 4721 or 4722 to Avaya AES (bidirectional)
- ICMP requests must be allowed from TCC for all hops to Tenfold Cloud and for all hops to the phone system
External firewall access required
- ccm.tenfold.com:443 (Outbound HTTPS and Long-Lived WebSocket)
- events.tenfold.com:443 (Outbound HTTPS)
- downloads.tenfold.com:443 (Outbound HTTPS)
Whitelist list
Additional Tenfold whitelist domains are documented in the Tenfold Services IP Address/Domain Allow-list.
Testing firewall configuration
Ensure you can run the following commands from TCC in order to test your firewall configuration
Task (to run from the command line) | Expected output |
curl https://events.tenfold.com/ping | pong |
curl https://ccm.tenfold.com/ping | pong |
telnet <em><</em> <em><strong>Avaya_AES_IP</strong></em> <em>></em> <em><</em> <em><strong>Avaya_AES_Port</strong></em> <em>></em> | <Telnet Successful - blinking cursor> |
curl https://downloads.tenfold.com/app/tcc/README.txt | "This is a README for TCC installers. Tenfold Cloud Connect Installers" |
Avaya configuration
The Avaya Administrator should complete the actions outlined in this guide: Avaya AES TCC Integration Guide
TCC Installation Steps
Redhat based Linux:
- SSH into server
- curl -O https://downloads.tenfold.com/app/tcc/tcc-5.32.0.x86_64-rhel8.rpm
- chmod +x tcc-5.32.0.x86_64-rhel8.rpm
- sudo rpm -ivh --force tcc-5.32.0.x86_64-rhel8.rpm
- sudo sh /opt/tenfold/tcc/versions/5.32.0/tcc-version-selector.sh
- sudo service tcc restart
Windows:
- Download installer from downloads.tenfold.com for example: https://downloads.tenfold.com/app/tcc/tenfold-cloud-connect.5.32.0.exe
- Run as Administrator and finish installation.
- Start/Restart tcc service from the Windows task manager.
Required information:
- CM IP.
- CM Connection name - it can be found on AES in “Communication Manager Interface” -> “Switch Connections” -> “Connection Name” column in the displayed table.
- AES IP.
- AES username and password for the TCC user.
- Common skill extension for agents to be monitored by TCC.
- List of busy reason codes and labels to be displayed in the Tenfold app.
Optional information:
- Login and logout feature access codes - these might be needed when DMCC api login is failing, TCC is trying to use DMCC api login by default but for some customers it’s failing - this can be usually fixed by resetting agent passwords.
- List of dialing rules that have to be applied to make outbound calls.
- SMGR (recommended) or AES certificate if secure connection to AES is required.
These information should be added to TCC config in:
- Linux: /opt/tenfold/tcc/config.properties
- Windows: C:\ProgramData\Tenfold\TCC\config.properties
Example config:
https://drive.google.com/file/d/1g8aw2olnVr7nEzOmg6vYFNta49oKdxcG/view?usp=sharing
CM Connection name:
Setting up secure connection to AES (optional)
Linux:
- Copy java default truststore:
- cp /opt/tenfold/tcc/java/lib/security/cacerts /opt/tenfold/tcc/
- cd /opt/tenfold/tcc/
- Copy AES certificate to /opt/tenfold/tcc
- Import AES certificate to truststore:
- ./java/bin/keytool -importcert -file "server.cer" -keystore cacerts -alias avaya
- Default password is: changeit
Windows:
- Move server.cer to C:\ProgramData\Tenfold\TCC
- cd C:\ProgramData\Tenfold\TCC
- copy "C:\Program Files\Tenfold\TCC\java\lib\security\cacerts"
- "C:\Program Files\Tenfold\TCC\java\bin\keytool.exe" -importcert -file "server.cer" -keystore cacerts -alias avaya
TCC config changes:
avayaaes.cmapi.server.port=4722
avayaaes.cmapi.secure=true
app.truststore.password=changeit
Path for Linux:
app.truststore.location=/opt/tenfold/tcc/cacerts
Path for Windows:
app.truststore.location=C:\\ProgramData\\Tenfold\\TCC\\cacerts
SMGR certificate:
SIP extension setup
TLS must be used between CM and SM and SM and the station.
Station must properly be configured in CM as an off premises SIP station.
Station should be configured as SIPCC type.
CTI link must be ADJ-IP.
The firmware in the station set must be a minimum of:
- 16XX: SIP16CC_1_0_11_5_b2002S.bin
- 96XX: SIP96xx_2_0_3_0_b1S.bin
AST flag must show as enabled in SMGR for the registration status of the station:
Type of 3PCC Enabled must be set to “Avaya”:
If there are issues with call TCC please perform DMCC test from AES using “Make Third Party Call” using the TCC user and password, (passwords for extensions are not needed):
The expected result:
If the result matches then work with the Tenfold team to resolve it, otherwise the issue might be in Avaya configuration and intervention from Avaya Client Services might be required.
TCC HA
Customer needs to verify that ports used in app.port and app.ha.secondary.host.rest.api.port configuration property are opened and traffic is possible from:
- Primary TCC to the Secondary TCC
- Secondary TCC to the Primary TCC
Primary TCC configuration:
app.ha.state=active
app.ha.secondary.host.rest.api.port=8080
app.ha.secondary.host.ip=192.168.0.1
Secondary TCC configuration:
app.ha.state=hot_standby
app.ha.secondary.host.rest.api.port=8080
app.ha.secondary.host.ip=192.168.0.2
Time period after which TCC will consider primary TCC to be in failed state can be configured using below property (by default it is set to 30000 ms):
app.ha.max.open.period=30000