Mover archivos de voz

Ahora por mi trabajo me pidieron que viera la forma de mover los archivos de voicemail del PBX de forma automática, que contactara al proveedor para ver si tenia en el sistema alguna forma de hacerlo en automático. Ya luego de hablar con él, me comento que no tenían esa funcionalidad y que para ello tenia que se de forma manual o mediante un script y bueno el detalle es que, para que lo hagan seria un costo, algo que se no tenia la posibilidad de hacer. Esto es no por que no se tenga la capacidad de almacenamiento, si no por la flojera del usuario para hacer depuración de su extensión y tener en orden sus mensajes, aun cuando se les dio un buen margen para tener en su buzón, no hacen la limpieza y es cuando me llaman para que se solucione el problema de no poder recibir más buzones de voz.

Ahora ya entrados en el asunto, fue de lo más fácil realizar este trabajo, solo fue crear un script que dejo como tarea para que se realice cada fin de mes a todos los buzones del sistema y los mueva una nueva carpeta en el mismo nivel donde está la carpeta INBOX, y el script es el siguiente.

#!/bin/bash
date=$(date +%c)

epo=$(date +"%d_%m_%y")
baseDir=/var/spool/asterisk/voicemail/c313dc556495bf11/
# Loop para  cada directorio

for voice in `ls $baseDir`
do
  cd $baseDir/$voice
  mkdir $baseDir/$voice/$epo
  cd $baseDir/$voice/INBOX
  mv * $baseDir/$voice/$epo
  chown -Rf asterisk:asterisk $baseDir/$voice/$epo
done

sleep 1s
mail -s "Liberación de carpeta INBOX $date" -r "pbx@midominio.com (Reportes Varios)" ruben@midominio.com < /opt/msg/msgVoice.txt

Primero definimos ciertas variables que no harán falta para cuando realicemos el ciclo en cada extensiones que tengamos, las variables que ocupe son una de fecha para el título del mensaje informativo, la del directorio que igual es la fecha, pero en este caso solo numérico y el directorio de trabajo donde haremos todo, ya con esto lo que hace es buscar en todo el directorio donde están las extensiones(carpetas) cuantas existen y las guarda en una variable, la cual luego con un ciclo, vamos a realizar la tarea en cada una de ellas, esta tarea consiste movernos al directorio de trabajo de cada extensión, crear un directorio donde moveremos todos los mensaje de voz, ingresar y mover los archivos al directorio previamente creado y cambiarle los permisos para que estén igual que el usuario.

Con ello solo creamos el correo que se manda informando que la operación fue realizada.

Eso seria todo, espero pronto poner el que estoy haciendo que hace uso del script anterior para dar de baja todos los agentes de cola que estén dentro del sistema y mande un correo con el nombre, del agente y cola al igual que guardar estos datos en una base para uso posterior.

Deja un comentario