Solution Prerequisites
The following are the solution setup prerequisites.
Software requirements
Minimum requirement | |
---|---|
OS | CentOS 7 |
MSSQLServer | 2014 |
Docker CE | 18+ |
Docker compose | 1.21 |
Hardware requirements
Minimum requirement | |
---|---|
CPU | 4 cores |
RAM | 4 GB |
Disk | 300 GB |
NICs | 1 NIC per VM |
Installation Steps
- Install Docker and Docker Compose on the host operating system.
- Download the deployment script deployment.sh and place it in the user home or any desired directory. This script will:
- delete the recording-solution directory if it exists.
To execute the script, give it the execute permissions and execute it.
$ chmod 755 deployment.sh $ ./deployment.sh
change to newly created directory with name recording-solution. This directory contains all the required files.
- Run SQL script in SqlServer to create database and tables. (recording-solution/db_schema_sqlserver.sql).
Update the following environment variables in the files inside recording-solution/environment-variables folder.
general-environment.env Name
Description
DB_URL
VRS database connection URL
jdbc:jtds:sqlserver://192.168.1.92:1433/vrs;user=sa;password=Expertflow464
DB_DRIVER
JDBC driver
net.sourceforge.jtds.jdbcx.JtdsDataSource
CC_TYPE Cisco Contact center type (UCCX or UCCE) TZ Timezone (Asia/Karachi) ENCRYPTION_ENABLED To enable/disable recorded file encryption
true = enabled
false = disabled
AMQ_PRIMARY Primary ActiveMQ URL, tcp://192.168.1.242:61616
AMQ_SECONDARY Secondary ActiveMQ URL, Keep it same as primary if ActiveMQ not available in HA AMQ_TIMEOUT 3000, keep it same AMQ_RANDOMIZE false, keep it same AMQ_PRIORITY_BACKUP true, keep it same LOCAL_MACHINE_IP VRS machine IP CUCM IP Cisco Call Manager IP TIME_CUSHION The number of seconds to add to the start and end time of call when calling API from CIM. There are few seconds difference between CIM interaction's start and end time and recording solution start and end time since CIM fetch interactions from Finesse while recording solution gets time from CUCM ZOMBIE_TIMER Time is minutes to clear dangling calls. set it to 1 CALL_TIMEOUT Time in milliseconds to clear call after BYE invite is received, set it to 20000 THREAD_TIME Interval in milliseconds between two jobs that clears dangling records, set it to 15000 ENCODED_FILE_EXTENSION Extension to use with encryption file. It should be set to "enc" DIRECTORY_PATH_TO_MONITOR This and following 9 variables are used for the archival process. This variable will hold the path of the recording ARCHIVED_MEDIA_FILES_EXTENSION The archival process will archive recordings with this extension, set it to "wav" NO_OF_DAYS The number of days to keep recordings in the primary server. Recordings older than this value days will be archived SFTP_HOST SFTP hostname or IP SFTP_PORT SFTP port SFTP_USERNAME SFTP username SFTP_PASSWORD SFTP password ARCHIVAL_JOB_INTERVAL Archival process will run every this values seconds and archive any pending archival recordings RETRY_LIMIT Number of retries on pending archival recording folders ARCHIVE_PATH The shared path on the archival server where archival process archive recordings ARCHIVE_PATH_USER Archive path's machine user ARCHIVE_PATH_PASS Archive path's machine password UCCE_DB_URL UCCE awdb database connection URL, used for UCCE deployment only.
jdbc:jtds:sqlserver://192.168.1.87:1433/ucce_awdb;user=sa;password=Expertflow464
Used for UCCX deployment only... UCCX_URL UCCX URL, used for fetching agent details, https://192.168.1.101
UCCX_USERNAME UCCX user, should have privileges to fetch agents UCCX_PASSWORD UCCX user password ui-environment.env DB_IP VRS database machine IP DB_USER VRS database user DB_PASSWORD Database password DB_NAME Database name VRS_URL Recording solution Rest APIs URL, (VRS Machine IP and Rest APIs service port exposed in docker-compose) http://192.168.1.232:8080/
LOCAL_URL Local authentication server URL, (VRS IP and front-end port exposed in docker-compose) http://192.168.1.232:8081/
Execute following commands to allow specific port required for voice recording.
firewall-cmd --zone=public --permanent --add-port=5060/tcp firewall-cmd --zone=public --permanent --add-port=16384-18768/udp firewall-cmd --zone=public --permanent --add-port=16613-16617/tcp firewall-cmd --zone=public --permanent --add-port=8080-8081/tcp firewall-cmd --zone=public --permanent --add-port=8161-8162/tcp firewall-cmd --reload
Having environment configurations done, navigate to the
recording-solution
directory and execute the following commands:$ chmod 755 install.sh $ ./install.sh
Run the following command to ensure that all the components are up and running:
$ docker ps -a