[Problem] Record Funktion / Versand der Nachricht

crasher-mike

Neuer User
Mitglied seit
1 Okt 2010
Beiträge
32
Punkte für Reaktionen
0
Punkte
0
Hallo, ich möchte eine Voicemail mit einer individuellen Ansage erstellen. Im Anschluss (nachdem der Anrufende aufgelegt hat) soll die Nachricht versendet werden. Leider wird die Nachricht nur dann versendet, wenn die Aufnahme mit # beendet wird. Legt der Anfrufende nach dem Besprechen der Voicemail einfach auf, wird die Datei nicht versendet - der Befehl wird laut Console nicht einmal ausgeführt :

;TEST VoiceRecorder
exten => 778,1,Answer()
exten => 778,n,Wait(1)
exten => 778,n,Playback(welcomemsg)
exten => 778,n,Record(/voicemails/voicemail%d:wav)
exten => 778,n,TrySystem(echo ${CALLERID(num)} | /usr/bin/mutt -F /root/.muttrc -s \"test\" [email protected] -a ${RECORDED_FILE}.wav
exten => 778,n,Hangup()

Auf http://www.voip-info.org/wiki/index.php?page=Asterisk+cmd+Record habe ich gelesen :

"Recording stops when the specified silence or maxduration is reached, when the '#' key is pressed, or when the channel is hung up. "

Sollte das mit o.g. config denn funktionieren oder ist da noch ein Denkfehler ?


edit :
lege ich auf wird in der Konsole gelogged :

== Spawn extension (macro-voicemail, s, 4) exited non-zero on 'SIP/1800-000001ed' in macro 'voicemail

Das File wird allerdings erstellt. Wie kann ich Asterisk denn dazu bringen trotz des Auflegens die Zeile mit dem Versenden der Mail abzuarbeiten ? Habe gerade einmal testweite ein Macro erstellt. Leider schafft das keine Abhilfe.
 
Zuletzt bearbeitet:
Aus meiner Sicht musst Du die Abarbeitung in der h extension machen, ansonsten wird Dein Kontext bei Hangup einfach abebrochen.

Unbeschadet dessen würde ich Dir aber dennoch raten für diesen Zweck das Standard Voicemail System (voicemail.conf) zu nutzen. Das kann all das schon out of the box. Auch individuelle Ansagen lassen sich leicht abbilden durch entsprechendes ersetzen der wavs in /var/spool/asterisk/voicemail/default/<mailbox>
 
Und warum verwendest du nicht das voicemail System?
 
Da sich die Funktion dieser Mailbox grundlegend von allen anderen unterscheidet und ich lediglich eine Playback, Record und TrySystem Funktion benötige, wollte ich das gern so umsetzen. Vor das Versenden der Mail möchte ich noch eine SQL Abfrage setzen, deren Ergebnis ich in dem Body der Mail verwenden möchte - zumal ich mich mit der voicemail.conf noch nicht auseinandergesetzt habe und mir das so leichter umsetzbar erschien.

So funktionierts nun. Danke.

[voicemail2l]
exten => s,1,Answer()
exten => s,n,Wait(1)
exten => s,n,Playback(welcomemsg)
exten => s,n,Record(/voicemails/voicemail%d:wav)
exten => h,1,TrySystem(echo ${CALLERID(num)} | /usr/bin/mutt -F /root/.muttrc -s \"test\" [email protected] -a ${RECORDED_FILE}.wav)
exten => h,n,Hangup()
 
Zuletzt bearbeitet:
Das kannst du auch mit voicemail machen, aber wenn du das nur mit dialplan machen moechtest ist das dir ueberlassen.

P.S. loeschen des files nicht vergessen
 

Statistik des Forums

Themen
246,300
Beiträge
2,249,714
Mitglieder
373,904
Neuestes Mitglied
Elemir
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.