.Installation with Docker Compose Single Site v13.0
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, (VRS machine IP) 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 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
- To change the default self-signed SSL certificates used with the application, replace server.crt and server.key files inside recording-solution/certificates folder.
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
- Create a SIP trunk in Cisco Call Manager with recorder being VRS machine. Follow this steps to configure sip trunk. Seek help from Call Manager administrator if you don't know what this is.
Troubleshooting
- If calls are not recorded, check the following things
- Verify SIP events are logged in in core-recorder service when call is connected. If events are not logged then it means SIP trunk is not configured properly or recording is not enabled on device.
- If SIP events are logged but still no recordings, search for No RTP payload received error in recorder logs, if there are such error then check if Recording Media Source is set to Phone Preferred in phone settings on CUCM.
- Make sure Built-in Bridge is enabled on phones.
- Check for any errors in Mixer services logs, calls may be recorded but not properly mixed.
- if core-recorder and Mixer services logs are okay still not recordings on UI, check apis logs for any error