Asterisk 1.4.21.2 > System() aufruf

RealofTime

Neuer User
Mitglied seit
12 Dez 2008
Beiträge
2
Punkte für Reaktionen
0
Punkte
0
Hallo zusammen,

ich habe folgendes Problem. Ich setze aktuell Asterisk 1.4.21.2 ein.
Soweit alles wunderbar ;)

Ich habe in meiner extensions.conf folgenden Abschnitt:

exten => _9900,1,Answer()
exten => _9900,2,System(rm -f /tmp/nachricht.wav)
exten => _9900,3,Wait(1)
exten => _9900,4,Record(/tmp/nachricht.wav)
exten => _9900,5,Wait(1)
exten => _9900,6,Playback(/tmp/nachricht)
exten => _9900,7,System(/usr/bin/mutt -a /tmp/nachricht.wav -s Sprachnachricht [email protected] </dev/null)
exten => _9900,8,System(rm -f /tmp/nachricht.wav)
exten => _9900,9,Hangup()

Führe ich /usr/bin/mutt -a /tmp/nachricht.wav -s Sprachnachricht [email protected] </dev/null auf der Bash direkt aus, klappt es. Allerdings als root. Asterisk hat ja per default /bin/false; Braucht er für Systembefehle eine bash ? Wenn asterisk

exten => _9900,7,System(/usr/bin/mutt -a /tmp/nachricht.wav -s Sprachnachricht [email protected] </dev/null)

ausführt wird kein Fehler geworfen in der CLI aber auch kein Eintrag in die Mailqueue gestellt. Jemand eine Idee oder einen Tipp für das weitere vorgehen ?

Vielen Dank
Gruß RoT
 
Es wird schon ein Fehler "geworfen", nur siehst du den nicht, weil "System" einen fork macht und stdout und stderr nicht mehr mit der CLI der Asterisk verbunden sind. Schau mal in den /var/log/syslog oder /var/log/messages, vielleicht findet sich dort ein Hinweis, wieso der Aufruf schief geht.

Ich würde mal ein "/bin/bash -c" vor den command setzen, damit sollte zumindest eine gültige Shell geladen werden. Wenn das nichts ändert, könntest Du dem asterisk user eine gültige shell geben, wie Du bereits angemerkt hast.

Des Weiteren würde ich stark anraten, anstatt "System" den Dialplan-Command "TrySystem" zu verwenden.

Grüße,
Laureen
 
Fehler

Hi,

Dec 15 09:03:07 uderzo asterisk[8497]: rc_avpair_new: unknown attribute 1490026597


wird zum gleichen Zeitpunkt ausgegeben. Sonst wird nichts ans messages oder syslog weitergegeben.

Gruß & Danke
RoT
 
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.