Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

Overview:

The Voice Recording Solution (VRS) includes an archival process designed to manage and maintain the storage of call recordings. The process archives recordings based on a configurable retention period and transfers them to an SFTP server for secure long-term storage. This ensures optimal use of storage resources and helps in compliance with data retention policies.

  • Archival Process Workflow

  1. Retention Period Configuration:

The environment variable NO_OF_DAYS specifies the retention period in days.

Recordings older than the specified number of days are marked for archival.

  • Archiving Recordings:

The recordings are moved from the primary storage directory (/var/lib/freeswitch/recordings) to the configured SFTP server.

The archival service runs periodically to ensure all eligible recordings are archived.

  • Database Updates:

After archiving, the database table (v_xml_cdr) is updated and the is_archived column is set to 1.

Automatic Service Activation:

If the archival service is added in the VRS deployment docker compose file, it automatically performs its tasks as per the schedule or configuration.

Environment Variables

The archival process relies on several environment variables for configuration. These variables are defined in the Docker Compose file and loaded from the specified environment file.

General Variables

Variable Description Example Value

ENV

Name

NO_OF_DAYS

Number of days to retain recordings before archiving them. 30

DEPLOYMENT_PROFILE

Deployment profile to distinguish between environments e.g, EFCX

Database Configuration

Variable Description Example Value

DB_DRIVER

JDBC driver class for database connectivity (org.postgresql.Driver)

DB_ENGINE

Database engine used by the application. postgres

DB_HOST

Hostname or IP address of the database server. 192.168.1.17

DB_NAME

Name of the database storing call records. fusionpbx

DB_USER

Database user with read/write permissions. fusionpbx

DB_PASSWORD

Password for the database user. KHT0ExtJSHnbTPyK0DzTKn3n4TE

DB_TABLE

Table name where call records are stored. v_xml_cdr

  • Archival Service Configuration in Docker Compose

Below is the Docker Compose configuration snippet for the archival process:

archival-process:
   container_name: archival-process
   image: gitlab.expertflow.com:9242/voice-recording-solution/archival-process:TAG
   volumes:
     - /var/lib/freeswitch/recordings:/var/lib/freeswitch/recordings
   env_file:
     - ${PWD}/docker/config.env
   environment:
     - DB_DRIVER=org.postgresql.Driver
     - DB_ENGINE=postgres
     - DB_HOST=192.168.1.00
     - DB_NAME=fusionpbxx
     - DB_USER=fusionpbxx
     - DB_PASSWORD=KHT0ExtJSHnbTPyK0DzTKn3n4Te
     - DB_TABLE=v_xml_cdr
     - DEPLOYMENT_PROFILE=EFCX

  • No labels