[Problem] Playback mag nach einer Zeit nicht mehr

n_3_g

Neuer User
Mitglied seit
6 Mai 2016
Beiträge
2
Punkte für Reaktionen
0
Punkte
0
Hi,

ich habe ein Problem und finde partout keine Lösung.
Wir haben eine kleine Sanitär und Heizungs Firma und haben seit kurzem eine Asterix Anlage über unseren Server am Laufen.
Ich habe jetzt auch soweit fast alles zu unserer Zufriedenheit am Laufen doch für ein Problem finde ich partout keine Lösung...
Ich habe auf meiner Anlage ein Playback eingerichtet dass abspielt wenn gerade kein Notdienst Monteur verfügbar ist, das spielt auch die ersten paar male wenn ich auf der Nummer anrufe perfekt ab, aber wenn ich einen Tag später auf der Nummer anrufe spielt es nicht mehr ab und im CLI bekomme ich angezeigt der Soundfile existiere nicht.

exten => KeinNotdienst,1,Answer()
exten => KeinNotdienst,n,Playback(/var/lib/asterisk/sounds/KeinNotdienst)
exten => KeinNotdienst,n,Hangup

Auf dem Server liegt unter diesem Pfad dann sowohl eine KeinNotdienst.ulaw als auch eine KeinNotdienst.alaw
Beide dateien haben als owner asterisik/asterisk
in der sip.conf habe ich nur ulaw und alaw erlaubt.
disallow=all
allow=ulaw
allow=alaw
Ich ahbe jetzt schon überall gesucht aber ich finde einfach nicht mehr weiter.
Vieleicht könnt Ihr mir ja helfen.

Liebe Grüße,
Christoph
*neu hier
 
Das klingt sehr merkwürdig und erst mal unerklärlich, da scheinbar alles richtig ist.
Lässt sich da Verhalten (am ersten Tag geht es und am zweiten nicht mehr) reproduzieren?
Falls ja, müsste man mal ein Logging aufschalten, um zu schauen, ob irgendein Unterschied in den Calls zwischen Tag 1 und Tag2 festzustellen ist. Letzten Endes glaube ich in der Tat nicht, dass das File zwischenzeitlich "verschwindet" so dass ich denke, das etwas anderes das Problem auslöst (nur sehe ich aktuell nicht, was das sein könnte).
 
Bis jetzt lässt es sich nicht reproduzieren, habe schon versucht einfachmal mit mehreren Mobiltelefonen hintereinander anzurufen, und es funktioniert alles wunderbar und irgendwann ist der fehler wieder ... einfach da und sobald ich asterisk neu starte läuft alles wieder wie es soll. Ich schau mal wie ich das am besten mitloggen kann, bzw. bin ich für sämtliche Tips und Ratschläge offen.

Danke erst schonmal
 
Moins


Gerade zwischen Answer() und Playback() kann es angebracht sein, eine gewisse Verzögerung einzubauen.
Schau mal hier: "https://wiki.asterisk.org/wiki/display/AST/Answer%2C+Playback%2C+and+Hangup+Applications"
 
Das Wait nach dem Answer ist nur dafür, dass der Audiostream auch sicher steht, bevor Playback losgeht.

Ein wenig erinnert mich das an ein Thema vor langer Zeit, wo mal jemand Probleme mit dem Zugriff auf diverse Dateien von Asterisk aus hatte. Wie heißt noch mal schnell diese lokale Sicherheitsgeschichte, die sozusagen nach prozessbezogenen Regeln Dateirechte verwaltet? Wisst Ihr was ich meine?
 
Moins

Wie heißt noch mal schnell diese lokale Sicherheitsgeschichte, die sozusagen nach prozessbezogenen Regeln Dateirechte verwaltet? Wisst Ihr was ich meine?
Nein, nicht wirklich, außer dass die Daten asterisk.asterisk gehören sollten fällt mir dazu nichts ein.

Ich könnte mir aber vorstellen, dass es vielleicht besser wäre die Sounddateien in GSM zu konvertieren und sie von Asterisk in den ausgehandelten Codec transkodieren zu lassen. Somit müssten sie nicht in uLAW, aLAW oder gar g722 im Verzeichnis vorliegen.

Beispiel um das mit sox (apt-get -y install sox) zu erledigen...
Code:
sox infile.wav -r 8000 -c1 outfile.gsm lowpass 4000 compand 0.02,0.05 -60,-60,-30,-10,-20,-8,-5,-8,-2,-8 -8 -7 0.05
Quelle
...dass klappt auch mit MoH Dateien.

Besitzer/Gruppe setzen
Beispiel um dies im aktuellen Verzeichnis für alle Verzeichnisse/Dateien rekursiv zu setzen...
chown -R asterisk.asterisk . <-- Der Punkt ist das aktuelle Verzeichnis

PS: @n_3_g: Ich vergass: Willkommen im Forum

PS2: Digium stellt den Sourcecode für einen g722_encoder (by Kevin P. Fleming and Russell Bryant) bereit, der muss halt kompiliert werden. Wenn neben den *.gsm Dateien also auch die *.g722 Datei vorhanden ist, wird nach G.722 Aushandlung natürlich nicht transkodiert. Ich war mal so frei den zu erstellen (für Raspberry Pi) und hab nach Anleitung mal encoded. Das funktioniert mit Audacity und g722_encoder wirklich gut und hört sich auf entsprechenden Endgeräten super an :D (Im Vergleich zu einer GSM Datei).
lsof | grep g722 (Auszug)
Code:
asterisk    563 29725   asterisk  mem       REG      179,2    17816     275944 /usr/lib/asterisk/modules/codec_g722.so
asterisk    563 29725   asterisk   32r      REG      179,2  1783689     266542 /usr/share/asterisk/moh/default/gorillaz.g722
Größenvergleich (ls -lah)
Code:
-rw-r--r-- 1 asterisk asterisk 1.8M May  9 23:16 gorillaz.g722
-rw-r--r-- 1 asterisk asterisk 360K May  9 12:00 gorillaz.gsm
Bei Bedarf lade ich die fertige Binary (statisch gelinkt, armv6l) gerne hier hoch. Funktioniert mit Voiceprompts als auch mit MoH Dateien.
 
Zuletzt bearbeitet:
@rentier-s Meinst du SELinux?
 
Achso achso, ihr meint NSALinux :D , nee dat kommt mir nicht in den Kernel.

Und, nein, ich bin kein Aluhutträger, aber wisst ihr nicht dass starke Verschlüsselung in den Staaten unter das Waffengesetz fällt?
(56 Bit DES ist die Grenze)
...darf weder importiert noch exportiert werden.
 
Zuletzt bearbeitet:

Neueste Beiträge

Statistik des Forums

Themen
244,858
Beiträge
2,219,651
Mitglieder
371,572
Neuestes Mitglied
#Kuddel#
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.