Prerequisites
Software Requirements
|
Item |
Recommended |
Installation guide |
|
Operating System |
Debian 12 |
- |
|
Docker |
v24 or higher |
|
|
EF CX |
Latest version |
|
|
Media Server/Eleveo |
Latest version |
Media Server Installation Media Server Configuration |
Port Utilization Requirements
The following ports must be open on the server for the program to function.
|
Type |
Application |
Description |
Port |
|
TCP |
Postgres |
Database access port |
5432 |
|
TCP |
Recording Middle-ware |
Access port |
9115 |
The ports can be opened as follows:
-
SSH into the Debian server.
-
Use command:
ssh username@server-ip -
Enter the ssh password and press Enter.
-
-
Use command:
su -
Enter the root user's password
-
Run the following command and replace PORT with each of the required ports listed above:
sudo iptables -A INPUT -p tcp -m tcp --dport PORT-j ACCEPT -
Example:
sudo iptables -A INPUT -p tcp -m tcp --dport 8021 -j ACCEPT -
Save this port configuration with command:
sudo iptables-save
Container Deployment
The voice connector is deployed as a docker image.
-
Create a folder recording-middleware with the command:
mkdir recording-middleware -
Enter the folder with the command:
cd recording-middleware -
Create a file docker-compose.yml.
vi docker-compose.yml -
Enter editing mode with the 'I' or 'Insert' keys.
-
Copy the contents below and paste them into the file docker-compose.yml :
version: "3" services: recording-middleware: image: gitimages.expertflow.com/voice-recording-solution/recording-middleware:1.0 ports: - 9115:8080 env_file: - env.txt volumes: - /var/lib/freeswitch/recordings/:/var/lib/freeswitch/recordings/ restart: always -
Save and exit by :
-
Press the Esc key.
-
Enter the phrase :wq to save and exit.
-
-
Create a file env.txt
vi env.txt -
Enter editing mode with the 'I' or 'Insert' keys.
-
Copy the contents below and paste them into the file env.txt :
LOG_LEVEL=DEBUG RECORDING_BACKEND=ELEVEO ELEVEO_ADMIN=admin ELEVEO_PASSWORD=password ELEVEO_URL=http://192.168.1.10 DB_IP=192.168.1.10 DB_PORT=5432 DB_NAME=fusionpbx DB_USERNAME=fusionpbx DB_PASS=password-
RECORDING_BACKEND: The mechanism for recording files. Currently only supports ELEVEO or EFSWITCH.
-
EFSWITCH corresponds to the CX Media Server.
-
-
LOG_LEVEL: The amount of detail in the logs. Default is INFO, and for more detailed logs the value should be DEBUG.
-
The following are only to be set when setting ELEVEO for RECORDING_BACKEND (leave at default values otherwise:
-
ELEVEO_ADMIN: The administrator username for Eleveo.
-
ELEVEO_PASSWORD: The administrator password for Eleveo.
-
ELEVEO_URL: The IP address of the Eleveo deployment.
-
-
The following are only to be set when setting EFSWITCH for RECORDING_BACKEND (leave at default values otherwise:
-
DB_NAME: Media Server database name. Keep at default fusionpbx.
-
DB_URL: Media Server server IP address.
-
DB_PORT: Media Server database port. Keep at default 5432
-
DB_USERNAME: Media Server database name. Default is fusionpbx unless changed manually in Media Server.
-
DB_PASS: Media Server database password.
-
-
-
Run the command:
docker login gitimages.expertflow.com-
Enter your username and password as prompted (make sure that you were granted access to the repository).
-
-
Within the folder run the command:
docker compose up -d -
Confirm that the docker container is running by using the command:
docker ps
-
Confirm that the container is running correctly by opening the logs with command:
docker logs -f containerID