Nachrichten im Asterisk

asterisk

Hier eine Möglichkeit Nachrichten im Asterisk auszugeben zu lassen:

httpv://www.youtube.com/watch?v=O1qy5QQcOaQ


;Aktuelle Nachrichten:
exten => 256,1,Answer
exten => 256,n,Wait(2)
exten => 256,n,System(/usr/bin/wget http://ondemand.wdr.de/radio/einslive/nachrichten/nachrichten.mp3 -O /tmp/nachrichten_${EVAL(${UNIQUEID})}.mp3)
exten => 256,n,Wait(1)
exten => 256,n,MP3Player(/tmp/nachrichten_${EVAL(${UNIQUEID})}.mp3)
exten => 256,n,HangUp
exten => h,1,System(rm -f /tmp/nachrichten_${EVAL(${UNIQUEID})}.mp3)

Oder wahlweise eine andere Quelle:


;Nachrichten 2:
exten => 255,1,Answer
exten => 255,n,Wait(2)
exten => 255,n,System(/usr/bin/wget http://ondemand-mp3.dradio.de/file/dradio/nachrichten/nachrichten.mp3 -O /tmp/nachrichten_${EVAL(${UNIQUEID})}.mp3)
exten => 255,n,Wait(1)
exten => 255,n,MP3Player(/tmp/nachrichten_${EVAL(${UNIQUEID})}.mp3)
exten => 255,n,HangUp
exten => h,1,System(rm -f /tmp/nachrichten_${EVAL(${UNIQUEID})}.mp3)

Diese beiden Extensions führen auf systemebene das Tool „wget“ aus und downloaden bei Aufruf jeweils einen vom Herausgeber stündlich aktualisierten Nachrichtencast. Der im Asterisk integrierte „MP3Player“ gibt die Audiodatei wieder.
Obwohl mir dieses Script noch nie Ärger gemacht hat, gibt es hier einen Kritikpunkt an meiner Arbeit: die „h“-Extension ist suboptimal, da sie grundsätzlich bei jedem Hangup aufgerufen wird und nicht nur innerhalb des Channels. Leider ist mir bisher keine bessere Lösung des Problems eingefallen, da der User jederzeit den Stream durch ein Hangup unterbrechen kann – die restlichen Extensions werden dann nicht bearbeitet und es sammelt sich Datenmüll im „/tmp“-Verzeichnis des Betriebssystems.
Zudem reicht es, die „h“-Extension nur einmal in der extension.conf aufzuführen – sie wird nach meinem Wissen auch nur einmal ausgeführt. Da der Dateiname der temporären Audiodatei immer jeweils der UNIQUEID entspricht, ist allerdings nicht zu befürchten dass ein Stream durch gleichzeitiges ausführen des Scripts unbeabsichtigt gelöscht wird. Das waren zunächst meine Befürchtungen, aber die UNIQUEID ist wirklich unique ;)

Dieses Script darf privat und kommerziell verwendet werden. Bitte beachten Sie jedoch gerade bei einer kommerzieller Verwendung, dass bei der Ausführung des Scripts das verwendete Telefon den gesetzlichen Anforderungen eines „neuartigen Rundfunkgerätes“ entspricht und somit Rundfunkgebührenpflichtig ist. Weiterhin ist darauf hin zuweisen, dass die oben aufgeführten Radioaufzeichnungen restriktiven Nutzungsbedingungen durch deren Urheber und Distributor unterliegen können.