Skip to main content
Skip table of contents

CX Voice Upgrade to 4.6 for PTCL

Voice Connector

Voice connector upgrade
  1. SSH onto the Debian server on which the Voice connector is installed.

    1. Use command

      CODE
      ssh <username>@<server-ip>
    2. Enter user password and press ENTER.

    3. Use command

      CODE
      su
    4. Enter root password and press ENTER.

  2. Navigate to the folder where the docker-compose.yml and env.txt files are located for the voice connector.

  3. Open the docker-compose.yml file and replace the image tag with 4.6:

    CODE
    version: "3.8"
    services:
      voice-connector:
        image: gitimages.expertflow.com/freeswitch/ecx_generic_connector:4.6
        container_name: unified-voice-connector
        ports:
          - PORT:8080
        env_file:
          - ./env.txt
        restart: always
  4. Run the command

    CODE
    docker compose up -d
  5. Confirm that the docker container is running by using the command

    CODE
    docker ps
  6. Confirm that the container is running correctly by opening the logs with command

    CODE
    docker logs -f containerID

VRS

Voice Recording Solution upgrade
  1. SSH onto the Debian server on which the Voice connector is installed.

    1. Use command

      CODE
      ssh <username>@<server-ip>
    2. Enter user password and press ENTER.

    3. Use command

      CODE
      su
    4. Enter root password and press ENTER.

  2. Navigate to the VRS deployment files.

  3. Find the file docker-compose-efcx.yml under recording-solution/docker

  4. Under the line containing vrs-apis:, find the line with image:

    1. Change the field value to gitimages.expertflow.com/voice-recording-solution/apis:14.3.1

  5. While in the recording-solution folder run:

    CODE
    docker compose -f docker/docker-compose-efcx.yml down
    docker compose -f docker/docker-compose-efcx.yml up -d

Media Server configuration

Scripts
  1. SSH onto the Debian server on which the Voice connector is installed.

    1. Use command

      CODE
      ssh <username>@<server-ip>
    2. Enter user password and press ENTER.

    3. Use command

      CODE
      su
    4. Enter root password and press ENTER.

  2. Confirm git is installed, and install it if is not.

  3. Clone the Media Server scripts repository:

    CODE
    rm -r freeswitch-scripts
    git clone -b 4.6-ptcl https://efcx:RecRpsuH34yqp56YRFUb@gitlab.expertflow.com/rtc/freeswitch-scripts.git
  4. Navigate to the cloned repository to access the files:

    CODE
    cd freeswitch-scripts
  5. Move scripts to the Media Server scripts folder:

    CODE
    mv cx_hangup.lua consult_conf.lua set_recording_name.lua /usr/share/freeswitch/scripts
  6. Run the following command:

    CODE
    chmod -R 777 /usr/share/freeswitch/scripts
Manual Outbound Dialplan
  • Login to Media Server web interface. 

    • Open in browser: https://IP-addr, where IP-addr is the IP address of the Media Server.

  • Add the username and password that was shown upon installation of Media Server and press LOGIN.

  • Press the IP address in the top right and select the Domain created in the Domain creation section above:

  • Open the Dialplan Manager section under the Dialplan tab.

  •  Add a new Dialplan by pressing the Add Button on the top.

  •  Fill the form with following details :

    • Name = Manual_Outbound

    • Condition 1 = Click the black arrow to the right of the first field. In the first field enter ${sip_h_X-CallType} and in the second field enter ^OUT$.

    • Condition 2 = Click the black arrow to the right of the first field. In the first field enter ${customer_leg_uuid} and in the second field enter ^$.

    • Action 1  =  Select first item from the list  

  • Save the form by pressing save button on top right Corner.

  • Re-open Manual_Outbound dialplan.

  • Delete the line with the Action tag (Click the checkbox in the right and press SAVE in the top right)

  • Add the following information to this dialplan:

Tag

Type

Data

Break

Inline

Group

Order

Enabled

condition

${sip_h_X-CallType}

^OUT$

on-false

5

true

condition

${customer_leg_uuid}

^$

never

10

true

action

set

custom_origination_uuid=${create_uuid()}

true

0

15

true

action

export

customer_leg_uuid=${custom_origination_uuid}

true

0

20

true

action

lua

customer_leg_uuid=${custom_origination_uuid}

true

0

25

true

anti-action

set

custom_origination_uuid=${create_uuid()}

30

true

image-20241015-140734.png

  • Set the Context field to the value of the Domain set in the Domain creation section.

  • Set the Domain field to the value of the Domain set in the Domain creation section.

  • Set the Order field to 49.

  • Set the Continue field to True.

  • Save the changes by pressing SAVE button in top right corner.

Changes in Local extension Dialplan
  • Login to Media Server web interface. 

    • Open in browser: https://IP-addr, where IP-addr is the IP address of the Media Server.

  • Add the username and password that was shown upon installation of Media Server and press LOGIN.

  • Press the IP address in the top right and select the Domain created in the Domain creation section above:

  • Open the Dialplan Manager section under the Dialplan tab.

  • Find and open the local_extension dialplan.

  • Add the following information to the last group:

Tag

Type

Data

Group

Order

Enabled

action

ring_ready

true

1

74

true

  • Secondly, replace the Data field in the line with Order 75 with: {origination_uuid=${custom_origination_uuid}}user/${destination_number}@${domain_name}

  • The result will look like this:

image-20241023-080154.png
  • Save the changes by pressing SAVE button in top right corner.

Changes in Call Recording Dialplan
  • Login to Media Server web interface. 

    • Open in browser: https://IP-addr, where IP-addr is the IP address of the Media Server.

  • Add the username and password that was shown upon installation of Media Server and press LOGIN.

  • Press the IP address in the top right and select the Domain created in the Domain creation section above:

  • Open the Dialplan Manager section under the Dialplan tab.

  • Find and open the user_record dialplan.

  • Add the following data to the table, such that the final version looks like the image below:

Tag

Type

Data

Inline

Group

Order

Enabled

action

set

record_path=${recordings_dir}/${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}

true

9

10

true

action

export

record_path=${recordings_dir}/${domain_name}/archive/${strftime(%Y)}/${strftime(%b)}/${strftime(%d)}

true

9

15

true

action

set

record_name=${uuid}.${record_ext}

true

9

20

true

action

mkdir

${record_path}

9

25

true

action

set

recording_follow_transfer=false

true

9

30

true

action

export

recording_follow_transfer=false

true

9

35

true

action

set

record_append=false

true

9

40

true

action

set

record_in_progress=true

true

9

45

true

action

set

RECORD_ANSWER_REQ=true

9

50

true

action

lua

set_recording_name.lua

9

55

true

action

export

${recording_command}

9

60

true

image-20241016-060412.png
  • Save the changes by pressing SAVE button in top right corner.

Configuring route For Outbound calls
  • Login to Media Server web interface. 

    • Open in browser: https://IP-addr, where IP-addr is the IP address of the Media Server.

  • Add the username and password that was shown upon installation of Media Server and press LOGIN.

  • Press the IP address in the top right and select the Domain created in the Domain creation section above:

  • Open the Outbound Routes section under the Dialplans tab.

  • Press the ADD button in the top right.

  • Set the following fields :

    • Gateway = The name of the gateway configured above.

    • Dialplan Expression =  The format of the number accepted by the SIP trunk e.g. for 11 digits the format is ^(\d{11})$

  • Press the SAVE button on top right corner.

  • Re-open this newly created Outbound Route.

  • Add the following information to the last group:

Tag

Type

Data

Group

Order

Enabled

action

ring_ready

true

0

125

true

  • To the last row, where the Type field is bridge, append {origination_uuid=${custom_origination_uuid}} to the start of the field in the Data column. The result will look as below:

image-20241023-080613.png
Change in Silent Monitoring Dialplan
  • Login to Media Server web interface. 

    • Open in browser: https://IP-addr, where IP-addr is the IP address of the Media Server.

  • Add the username and password that was shown upon installation of Media Server and press LOGIN.

  • Press the IP address in the top right and select the Domain created in the Domain creation section above:

  • Open the Dialplan Manager section under the Dialplan tab.

  •  Find and open the Silent_Monitoring dialplan.

  •  Edit the Data column of the first row to have the value ^\*44(.+)$

image-20241106-132733.png

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.