Mutarea înregistrările de apel stocate în memoria RAM Asterisk
Acest articol prezintă un script îmbunătățit pentru a muta fișiere (în acest caz, apelurile telefonice efectuate prin intermediul Asterisk) fișierele deschise neîntoarsă (solicită, în curs de desfășurare). Este foarte tipic de a avea de a face înregistrări de apeluri de la Asterisk într-un Call Center, de exemplu,.
Pentru a face acest scenariu am folosit ca o bază pe care am găsit Aici, grație autorului său.
Amintește-înainte de a începe ce culori înseamnă aplicații și sisteme:
texte scrise în linia de comandă: albastru
De ieșire de la linia de comandă: Verde
Numele de fișiere și conținutul fișierului: maro
justificare
Asterisk este un software de telefonie (utilizate pe scară largă în VoIP) pentru construirea unui tablou de distribuție cu funcționalități multiple, Înregistrare apel inclusiv. în mod normal, pentru performanță, înregistrările de apel le efectua pe o unitate de memorie RAM, sau disc RAM (dacă vrei să știi cum să creeze o poți urma acest legătură), atunci, după anumite intervale de timp, permanent stocate pe o unitate de disc, de exemplu,, într-un server NAS. în acest fel, De asemenea, evita deteriorarea implicată în unitatea de efortul continuu de scris, prin înregistrarea apelurilor multiple.
Desigur, aceasta este un risc; una falla eléctrica y se pierden las grabaciones. Por eso conviene guardar de cuando en cuando esas grabaciones en un lugar definitivo.
Este script lo he adaptado a mis necesidades. Todas las grabaciones se guardan en un subdirectorio que se crea cada día, con la fecha del mismo, en formato gsm. El script va buscando inicialmente ese subdirectorio, mira dentro de él los archivos que no están siendo utilizados, y finalmente los mueve a su ubicación definitiva.
Si no tuviésemos la precaución de mirar primero si están siendo utilizados o no, se podrían mover archivos incompletos, con la pérdida de información que ello supone.
Desarrollo
El script que propongo y que a mí me funciona 😉 es el siguiente:
#!/bin/bash
# Pentru a muta apelurile înregistrate pe o unitate de memorie RAM
# Verificați conținutul acelei unități și trece-l la un hard disk
# avem un director pe acea unitate,
# cu subdirectoarele care sunt generate zilnic
## Variabilele cu directoare pentru a utiliza
RAMDIR ="/tmp / discoram"
DEPOZIT ="/mnt / servidor_almacen" #Unitatea de la distanță, premontat, definitivo ALMACEN
CD $ RAMDIR
ls -1 d */ > listado.borrable
#cada zi, în timp ce citește un director on-line de zi cu zi, fișier extras "listado_borrable"
do # aici începe partea mutarea fișierelor propriu-zise, numai GSM format de sunet
pentru i în $(ls -1 $RAMDIR / $ dia / *. Gsm) ; do
fișiere lsof $ i #comprueba deschis pentru că nu se deplasează încă
valoare = $? #starea de ieșire, dacă 0 fișierul este deschis
dacă [ $Valoarea ne 0 ] ; apoi
dacă [ -d $ DEPOZIT / $ zi ] ; apoi
Înregistrări echo verificat dosarul
altfel
mkdir DEPOZIT / $ zi $
#solo creează dosarul, dacă este necesar
Fi
mv $ i $ DEPOZIT / $ zi
Fi
făcut
$ Rmdir Ziua 2> /dev / null # dacă vom șterge este gol
făcut < #aqui listado.borrable se termină în timp ce
Îl puteți descărca Aici dacă sunteți mai confortabil.
Nu uita să comenteze și să contribuie soluțiile personalizate, puteți îmbunătăți întotdeauna.