RecordOmni

De VIVAitwiki
Ir a la navegaciónIr a la búsqueda

1 Introducción

Recordomni proporciona una gestión estructurada de los ficheros de grabaciones de Omnisuite, permitiendo:

  • Reorganizar las grabaciones en una estrucutura de directorios en arbol basada en año/mes/dia/hora/minuto
  • Almacenar las grabaciones en esa estructura de directorios y en formato mp3 (para reducir espacio)
  • Extraer uno de los canales de la comunicación (el del lado del cliente) para dejarlo además en otra carpeta

Para ello, en Omnisuite:

  • Se modifica en la tabla "voice_recordings" el campo "value" para reflejar el nuevo destino de la grabación (en vez de "/var/spool/asterisk/monitor" será por ejemplo "/mnt/grabaciones/2025/01/17/11/25")
  • Podemos escuchar la grabación (que ha quedado en formato mp3) desde el administrador voice/voice recordings y seleccionando en una grabación la opción "edit voice recording" en la pestaña "player"

El proceso que hemos realizado se basa en que actualmente Motion

  • Deja las grabaciones en /var/spool/asterisk/monitor
  • Escribe el dato en el campo "value" de la tabla "voice_recordings"
  • En el campo "type" de la tabla "voice_recordings" las llamadas pueden ser "inbound", "outbound", "dialer" (hay más tipos pero solo estamos usando esos de momento)


2 Instalación

Para instalar:

  • Instalar paquetes
       sudo apt install libdbi-perl
       sudo apt install libdbd-mysql-perl
  • Copiar el archivo recordOmni.pl a la carpeta /usr/local/sbin y darle los permisos 744 y usuario root:root
  • Copiar el archivo recordOmni.logrotate a la carpeta /etc/logrotate.d renombrarlo a recordOmni con los permisos 744 y usuario root:root
  • Crear la carpeta /etc/MDtel
  • Copiar el archivo recordOmni.pconf a la carpeta /etc/MDtel con los permisos 644 y usuario root:root
  • Copiar el archivo recordOmni.sh a la carpeta /etc/init.d y renombrarlo a recordOmni con los permisos 755 y el usuario root:root
  • Si se quiere habilitar el arranque automatico
  • Configurar el archivo /etc/MDtel/recordOmni.pconf.


Parametros importantes para configuración de recordOmni.pconf:

La conexion con la BD

       # Conexion de base de datos
       $db = 'motion2';
       $dbHost = 'localhost';
       $dbPort = '3306';
       $dbUsuario = 'root';
       $dbClave = 'aaaaaqaaaaaa';



Directorios donde se van a copiar los archivos

       # Directorio donde van las grabaciones
       $grabRutaDest = '/tmp/grabaciones';
       $grabRutaUsaTimestamp = 1;


El parametro grabRutaUsaTimestamp si vale 1 se crean los directorios con AAAA/MM/DD/HH/MM/SS

       # Directorio donde van el lado cliente de las grabaciones si  no se obtiene
       $grabRutaDestCli = '/tmp/grabacionesCli';
       $grabRutaCliUsaTimestamp = 0;



Compresion de los archivos MP3

       #Compresion del mp3 (valores permidos: 8k 16k 32k 128k)
       $grabCompresionMP3 = 32k



Dias que deben transcurrir para dar alarma al arrancar y subir el contador "Antiguas" en la monitorizacion

       # Dias transcurridos de la llamada a procesar para dar alarma
       $diasDesdeLlamada = 5;


Nueva versión de recordOmni v0.0.3

La nueva versión incorpora las siguientes modificaciones:

1)Corrección de un error que no hacia caso del nombre de la base de datos.

2)Nuevo parámetro de configuración (opcional)

Este parámetro fija el id por el que va a empezar la búsqueda de grabaciones, con este parámetro podemos saltarnos todos los registros de grabaciones realizados en las pruebas de carga y que no tarde tanto tiempo en buscar la primera grabación válida y el tiempo de comienzo de procesado tras un reinicio

$dbUsuario = 'root'; $dbClave = '**********'; indice inicial para empezar la busqueda de grabaciones (0 desde el principio) $dbIndInicial = 0; 3)Fichero marca para comprobar que los directorios están montados

Parámetro para comprobar que el directorio donde se van a mover las grabaciones es el correcto, si el parámetro está vacío la comprobación no se realiza, si el parámetro esta configurado y el fichero no se encuentra las grabaciones no se procesan y se genera una alarma.

Directorio donde van las grabaciones $grabRutaDest = '/tmp/grabaciones';

  1. Fichero que tiene que estar en la ruta destino para comprobar que si es una nas este montada. Si es no se comprueba

$grabDestFileMarca = ;


3 invocación

4 diagnósticos