Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Install Docker and Docker Compose on the host operating system.
  2. Download the deployment script deployment.sh and place it in the user home or any desired directory. This script will:
    1. delete the recording-solution directory if it exists.
  3. To execute the script, give it the execute permissions and execute it. 

    Code Block
    languagebash
    $ chmod 755 deployment.sh
    $ ./deployment.sh


  4. change to newly created directory with name recording-solution. This directory contains all the required files.

  5. Run SQL script in SqlServer to create database and tables.  (recording-solution/db_schema_sqlserver.sql).
  6. 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_TYPECisco Contact center type (UCCX or UCCE)
    TZTimezone (Asia/Karachi)
    ENCRYPTION_ENABLED

    To enable/disable recorded file encryption

    true = enabled

    false = disabled

    AMQ_PRIMARYPrimary ActiveMQ URL, 
    tcp://192.168.1.242:61616
    AMQ_SECONDARYSecondary ActiveMQ URL, Keep it same as primary if ActiveMQ not available in HA
    AMQ_TIMEOUT3000, keep it same
    AMQ_RANDOMIZEfalse, keep it same
    AMQ_PRIORITY_BACKUPtrue, keep it same
    LOCAL_MACHINE_IPVRS machine IP
    CUCM IPCisco Call Manager IP
    TIME_CUSHIONThe 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_TIMERTime is minutes to clear dangling calls. set it to 1
    CALL_TIMEOUTTime in milliseconds to clear call after BYE invite is received, set it to 20000
    THREAD_TIMEInterval in milliseconds between two jobs that clears dangling records, set it to 15000
    ENCODED_FILE_EXTENSIONExtension to use with encryption file. It should be set to "enc"
    DIRECTORY_PATH_TO_MONITORThis and following 9 variables are used for the archival process. This variable will hold the path of the recording
    ARCHIVED_MEDIA_FILES_EXTENSIONThe archival process will archive recordings with this extension, set it to "wav"
    NO_OF_DAYSThe number of days to keep recordings in the primary server. Recordings older than this value days will be archived
    SFTP_HOSTSFTP hostname or IP
    SFTP_PORTSFTP port
    SFTP_USERNAMESFTP username
    SFTP_PASSWORDSFTP password
    ARCHIVAL_JOB_INTERVALArchival process will run every this values seconds and archive any pending archival recordings
    RETRY_LIMITNumber of retries on pending archival recording folders
    ARCHIVE_PATHThe shared path on the archival server where archival process archive recordings
    ARCHIVE_PATH_USERArchive path's machine user
    ARCHIVE_PATH_PASSArchive 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_URLUCCX URL, used for fetching agent details, 
    https://192.168.1.101
    UCCX_USERNAMEUCCX user,  should have privileges to fetch agents
    UCCX_PASSWORDUCCX user password
    ui-environment.env
    DB_IPVRS database machine IP
    DB_USERVRS database user
    DB_PASSWORDDatabase password
    DB_NAMEDatabase name
    VRS_URLRecording solution Rest APIs URL, (VRS Machine IP and Rest APIs service port exposed in docker-compose)
    http://192.168.1.232:8080/
    LOCAL_URLLocal authentication server URL, (VRS IP and front-end port exposed in docker-compose)
    http://192.168.1.232:8081/


  7. Execute following commands to allow specific port required for voice recording. 

    Code Block
    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


  8. Having environment configurations done,  navigate to the recording-solution directory and execute the following commands: 

    Code Block
    languagebash
    $  chmod 755 install.sh
    $ ./install.sh


  9. Run the following command to ensure that all the components are up and running: 

    Code Block
    languagebash
    $ docker ps -a


...