[Frage] eingehenden Anruf annehmen und Playback abspielen

Irgendwie stand

Exec()
System()
Shell()

zur Auswahl. Dann probiere ich es mit Shell()
Nochmals Danke. Ich wünsche dir eine Gute Nacht. :)
 
Hier haste ein "Extended" Beispiel dafür, wie SHELL() die Ausgabe von 'date' in die Channelvariable DATE speichert.
Rich (BBCode):
exten => 333/_100[0-9],1,verbose(1,Time Condition)
exten => 333/_100[0-9],2,gotoiftime(12:00-23:59,mon-fri,*,*?5:3)
exten => 333/_100[0-9],3,set(DATE=${SHELL(echo -n "$(date --date=@${EPOCH})")})
exten => 333/_100[0-9],4,verbose(1,Epoch to Date: ${EPOCH} = ${DATE})
exten => 333/_100[0-9],5,answer(250)       
exten => 333/_100[0-9],6,verbose(1,Time Call)
exten => 333/_100[0-9],7,sayunixtime(,CET,akM,j)
exten => 333/_100[0-9],8,goto(7)
( Das 'echo -n' verhindert eine automatich angefügte neue Zeile (\n) )

Das sieht dann in der *-Konsole so aus...
Rich (BBCode):
[Oct 31 08:27:32]   == Using SIP RTP CoS mark 5
[Oct 31 08:27:32]     -- Executing [333@osmc:1] Verbose("SIP/1001-0000004a", "1,Time Condition") in new stack
[Oct 31 08:27:32]  Time Condition
[Oct 31 08:27:32]     -- Executing [333@osmc:2] GotoIfTime("SIP/1001-0000004a", "12:00-23:59,mon-fri,*,*?5:3") in new stack
[Oct 31 08:27:32]     -- Goto (osmc,333,3)
[Oct 31 08:27:33]     -- Executing [333@osmc:3] Set("SIP/1001-0000004a", "DATE=So 31. Okt 08:27:32 CET 2021") in new stack
[Oct 31 08:27:33]     -- Executing [333@osmc:4] Verbose("SIP/1001-0000004a", "1,Epoch to Date: 1635665252 = So 31. Okt 08:27:32 CET 2021") in new stack
[Oct 31 08:27:33]  Epoch to Date: 1635665252 = So 31. Okt 08:27:32 CET 2021
[Oct 31 08:27:33]     -- Executing [333@osmc:5] Answer("SIP/1001-0000004a", "250") in new stack
[Oct 31 08:27:33]     -- Executing [333@osmc:6] Verbose("SIP/1001-0000004a", "1,Time Call") in new stack
[Oct 31 08:27:33]  Time Call
[Oct 31 08:27:33]     -- Executing [333@osmc:7] SayUnixTime("SIP/1001-0000004a", ",CET,akM,j") in new stack
[Oct 31 08:27:33]     -- <SIP/1001-0000004a> Playing 'digits/day-0.g722' (language 'de')
[Oct 31 08:27:34]     -- <SIP/1001-0000004a> Playing 'digits/8.g722' (language 'de')
[Oct 31 08:27:34]     -- <SIP/1001-0000004a> Playing 'digits/oclock.g722' (language 'de')
[Oct 31 08:27:35]     -- <SIP/1001-0000004a> Playing 'digits/7-and.g722' (language 'de')
[Oct 31 08:27:36]     -- <SIP/1001-0000004a> Playing 'digits/20.g722' (language 'de')
[Oct 31 08:27:37]     -- Executing [333@osmc:8] Goto("SIP/1001-0000004a", "7") in new stack
[Oct 31 08:27:37]     -- Goto (osmc,333,7)
[Oct 31 08:27:37]     -- Executing [333@osmc:7] SayUnixTime("SIP/1001-0000004a", ",CET,akM,j") in new stack
[Oct 31 08:27:37]     -- <SIP/1001-0000004a> Playing 'digits/day-0.g722' (language 'de')
[Oct 31 08:27:37]     -- <SIP/1001-0000004a> Playing 'digits/8.g722' (language 'de')
[Oct 31 08:27:38]     -- <SIP/1001-0000004a> Playing 'digits/oclock.g722' (language 'de')
[Oct 31 08:27:38]     -- <SIP/1001-0000004a> Playing 'digits/7-and.g722' (language 'de')
[Oct 31 08:27:39]     -- <SIP/1001-0000004a> Playing 'digits/20.g722' (language 'de')
[Oct 31 08:27:40]     -- Executing [333@osmc:8] Goto("SIP/1001-0000004a", "7") in new stack
[Oct 31 08:27:40]     -- Goto (osmc,333,7)
[Oct 31 08:27:40]     -- Executing [333@osmc:7] SayUnixTime("SIP/1001-0000004a", ",CET,akM,j") in new stack
[Oct 31 08:27:40]     -- <SIP/1001-0000004a> Playing 'digits/day-0.g722' (language 'de')
[Oct 31 08:27:41]   == Spawn extension (osmc, 333, 7) exited non-zero on 'SIP/1001-0000004a'
Das speichern in eine Variable oder Datenbank ist je nach Anwendung von Nöten.
Nur zur Info hätte auch ein...
Code:
verbose(1,Epoch to Date: ${EPOCH} = ${SHELL(echo -n "$(date --date=@${EPOCH})")})
...gereicht.
 
Zuletzt bearbeitet:
Vielen Dank für deine hilfreichen Tipps. Ich habe es jetzt soweit konfiguriert, dass je nach Wahl per Tastendruck das Eine oder Andere ausgeführt wird. Es funktioniert alles perfekt.

Nochmals Danke auch für deine Geduld mit mir. :)
 
Hallo @koyaanisqatsi,

asterisk mit der extension.conf läuft dank Deiner Tipps soweit richtig gut. Dennoch habe ich noch ein Problem. Ich wollte eine Mailbox einbinden. Das funktioniert auch, wobei ich immer noch den Pfad suche, wo die Gesprächsdateien gespeichert werden. Außerdem ist sendmail nicht installiert und lässt sich unter jessie nicht mehr installieren, sodass die Sprachdateien gemailt werden. Zumindest hapert es beim Installieren von sendmail dann am init-system-helpers; der zu alt sei. Ich kann auch nicht auf Scretch updaten, weil dann womöglich gar nichts mehr läuft. Hast Du noch eine Idee, welche Mailversendung unter Jessie noch läuft bzw. noch installiert werden kann, die mit asterisk funktioniert? Hilfreich wäre aber vor allem der Pfad, wo die wav-Dateien des AB abgelegt werden.
 
Ich habe es ohne sendmail hinbekommen, indem ich ein php-Script zum Mailversand in der voicemail.conf eingetragen habe (in einer Batch-Datei). Es funktioniert.

mailcmd=/binsas/dovoicemail

dovoicemail ist ein ausführbares Shellscript mit dem php-Aufruf.

Die Gesprächsaufzeichnungen fand ich unter /var/spool/asterisk/voicemail/default/[usernummer]/INBOX
 
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.