Wählmenü in Makro

leseratte10

Mitglied
Mitglied seit
23 Apr 2012
Beiträge
406
Punkte für Reaktionen
2
Punkte
18
Hallo,

ich bin gerade dabei, mir ein (äußerst komplexes) Makro für eine ENUM-Auflösung in Asterisk zu schreiben.

Das Lookup selber funktioniert auch, wenn beim Lookup eine Festnetznummer (TEL) rauskommt, mache ich eine Ansage mit Art der Nummer (0800, 0900, Mobilfunk, Festnetz, ...) und möchte dann dem Nutzer die Wahl lassen (drücke 1 für die neue nummer, 2 für die ursprünglich gewählte).

Es kommen aber nur Fehler. Hier der relevante Teil aus der extension.conf:

Code:
[macro-enumcall]
...
exten => s,n(mobilfunk),NoOp("tel mobilfunk")	; Ansage Mobilfunk
exten => s,n,BackGround(/var/lib/asterisk/sounds/custom/enum-aws-mobilfunk)
exten => s,n,WaitExten(5)
exten => s,n,Goto(mobilfunk)

exten => 1,1,NoOp(1)  
exten => 2,1,NoOp(2)
exten => 3,1,NoOp(3)
exten => 4,1,NoOp(4)

exten => s,n(abbruch),NoOp("User hat Wählvorgang abgebrochen")
...

Erstmal nur mit NoOp, um zu testen, ob die Ziffern erkannt werden. Aber es passiert nix und im CLI erscheint nur:

Code:
[Mar  8 09:15:57] WARNING[2910]: pbx.c:5417 __ast_pbx_run: Invalid extension '3', but no rule 'i' or 'e' in context 'meinkontext'

Er scheint die Extension 3 im Standardkontext zu suchen und nicht in den makro, in dem er sich gerade befindet. Wie kann ich das lösen?

Leseratte10
 
http://www.voip-info.org/wiki/view/Asterisk+cmd+WaitExten schrieb:
WaitExten does not work in a Macro!

Verwende Read mit anschließendem Goto.

Makros sind übrigend deprecated und sollten durch Gosub ersetzt werden.
 

Statistik des Forums

Themen
246,206
Beiträge
2,248,026
Mitglieder
373,770
Neuestes Mitglied
TomTom55
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.