Script zu Asterisk Anrufaufzeichnungen aus dem RAM bewegen

Das Verschieben der Anruf gespeicherten Datensätze im RAM Asterisk

Dieser Artikel stellt eine verbesserte Skriptdateien zu bewegen (in diesem Fall Telefonanrufe durch Asterisk gemacht) unturned geöffneten Dateien (Laufende Gespräche). Es ist sehr typisch zu haben Aufnahmen von Anrufen von Asterisk in einem Call-Center zum Beispiel zu machen.

Um dieses Skript zu machen habe ich als Basis ein, dass ich gefunden Hier, Dank der Autor.

Erinnern Sie vor dem Start, welche Farben Anwendungen und Systeme bedeuten:

geschriebene Texte in der Kommandozeile: blau
Die Ausgabe von der Kommandozeile: Verde
Dateinamen und Dateiinhalt: braun

Rechtfertigung

Asterisk ist eine Telefonie-Software (weit verbreitet in VoIP) für eine Telefonzentrale mit mehreren Funktionalitäten bauen, einschließlich Anrufaufzeichnung. gewöhnlich, für die Leistung, Anrufaufzeichnungen auf der RAM-Einheit durchgeführt, RAM-Disk (Wenn Sie wissen wollen, wie erstellen man dies folgen kann Link), dann, am Ende eines bestimmten Zeitabständen, permanent auf einem Laufwerk gespeichert, z.B., auf einem Server NAS. so, Wir vermeiden auch die im Antrieb beteiligt Verschlechterung stetigen Bemühungen Schreiben durch mehrere Anrufe Aufzeichnung.

Natürlich stellt dies ein Risiko; 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
# So verschieben Sie die Anrufe auf einem RAM-Laufwerk aufgezeichnet
# Überprüfen Sie den Inhalt dieser Einheit und übergibt sie an eine Festplatte
# Wir haben ein Verzeichnis auf dem Laufwerk,
# Unterverzeichnisse, die täglich generiert werden
## Variablen mit Verzeichnissen zu verwenden
RAMDIR ="/tmp / discoram"
LAGER ="/mnt / servidor_almacen" #Remote-Einheit, vormontierte, almacén definitivo
CD $ RAMDIR
ls -1 d */ > listado.borrable
#cada Tag, während ein tägliches Online-Verzeichnis lesen, Es wird aus der Datei extrahiert "listado_borrable"
tun # Hier beginnt der Teil-Dateien von bewegten sich, nur Tonformat gsm
für i in $(ls -1 $RAMDIR / $ dia / *. Gsm) ; tun
lsof $ i bewegen #comprueba geöffneten Dateien noch nicht
Wert = $? #Ausgabezustand, wenn 0 die Datei geöffnet
wenn [ $Tapferkeit -was 0 ] ; dann
wenn [ -d $ STORED / $ Tag ] ; dann
Echo-Aufnahmen Ordner überprüft
sonst
STORED mkdir $ / $ Tag
#solo erstellt die Ordner, falls erforderlich
fi
mv $ i STORED $ / $ Tag
fi
erledigt
$ Rmdir Tag 2> /dev / null # if ist es leer Feld löschen
erledigt < listado.borrable Enden #aqui die während

Sie können es herunterladen von Hier Wenn Sie fühlen sich wohl.

Vergessen Sie nicht, Kommentar und tragen Sie Ihre kundenspezifische Lösungen, Sie können immer verbessern.


Über Ángel Calvo

Leidenschaft für Wissenschaft und Technologie. Lehrer, Autor von Handbüchern und Systeme und Kommunikations-Manager.

Lassen Sie eine Antwort

Ihre E-Mail-Adresse wird nicht veröffentlicht.