[asterisk-users] WaitExten not responding on key presses
Jack
jack.ssh at gmail.com
Wed May 16 04:02:52 MST 2007
Hi,
I have the problem that WaitExten is not responding to key presses. Here
are the sections from my extensions.conf:
[globals]
incoming_call=0
menu=0
announce=0
[internal]
exten => 777,1,Goto(hotline,${EXTEN},1)
[hotline]
exten => _X.,1,Set(CALLERID(name)=Hotline)
exten => _X.,n,Set(original_extension=${EXTEN})
exten => _X.,n,GotoIf($[${announce}=1]?4:10)
exten => _X.,n,Answer
exten => _X.,n,NoOp(Ansage: Das Problem XYZ ist bereits bekannt und wird
bearbeitet)
exten => _X.,n,NoOp(Ansage: Druecken Sie die Taste 1 falls Sie wegen
einem anderen Problem anrufen)
exten => _X.,n,NoOp(Ansage: Ansonsten druecken Sie eine andere Taste
oder legen Sie bitte auf)
exten => _X.,n,WaitExten(5)
exten => _X.,n,Goto(18)
exten => _X.,n,Set(menu=1)
exten => _X.,n,NoOp(Ansage: Das Gespraech wird aus Qualitaetsgruenden
aufgezeichnet)
exten => _X.,n,NoOp(Ansage: Falls Sie damit nicht einverstanden sind
druecken Sie bitte die Taste 1)
exten => _X.,n,WaitExten(5)
exten => _X.,n,MixMonitor(test.wav)
exten => _X.,n,SayDigits(123)
exten => _X.,n,Queue(hotline|t|||120)
exten => _X.,n,StopMonitor()
exten => _X.,n,Hangup
exten => _[0-9],1,Goto(menu,${EXTEN},1)
exten => i,1,Goto(invalid,${EXTEN},1)
exten => t,1,Goto(timeout,${EXTEN},1)
[menu]
exten => 1,1,GotoIf($[${menu}=0]?2:4)
exten => 1,n,Set(menu=1)
exten => 1,n,Goto(hotline,${original_extension},11)
exten => 1,n,Goto(hotline,${original_extension},16)
exten => _[02-9*#],1,Hangup
The CLI output is:
-- Executing [777 at internal:1] Goto("SIP/202-b6d08708", "hotline|777|1")
in new stack
-- Goto (hotline,777,1)
-- Executing [777 at hotline:1] Set("SIP/202-b6d08708",
"CALLERID(name)=Hotline") in new stack
-- Executing [777 at hotline:2] Set("SIP/202-b6d08708",
"original_extension=777") in new stack
-- Executing [777 at hotline:3] GotoIf("SIP/202-b6d08708", "0?4:10") in
new stack
-- Goto (hotline,777,10)
-- Executing [777 at hotline:10] Set("SIP/202-b6d08708", "menu=1") in
new stack
-- Executing [777 at hotline:11] NoOp("SIP/202-b6d08708", "Ansage: Das
Gespraech wird aus Qualitaetsgruenden aufgezeichnet") in new stack
-- Executing [777 at hotline:12] NoOp("SIP/202-b6d08708", "Ansage: Falls
Sie damit nicht einverstanden sind druecken Sie bitte die Taste 1") in
new stack
-- Executing [777 at hotline:13] WaitExten("SIP/202-b6d08708", "5") in
new stack
=> here is the point where I press a digit but nothing happens:
-- Timeout on SIP/202-b6d08708, continuing...
-- Executing [777 at hotline:14] MixMonitor("SIP/202-b6d08708",
"test.wav") in new stack
-- Executing [777 at hotline:15] SayDigits("SIP/202-b6d08708", "123") in
new stack
-- <SIP/202-b6d08708> Playing 'digits/1' (language 'de')
== Begin MixMonitor Recording SIP/202-b6d08708
-- <SIP/202-b6d08708> Playing 'digits/2' (language 'de')
-- <SIP/202-b6d08708> Playing 'digits/3' (language 'de')
-- Executing [777 at hotline:16] Queue("SIP/202-b6d08708",
"hotline|t|||120") in new stack
[May 16 11:37:00] WARNING[8400]: translate.c:163 framein: no samples for
alawtolin
-- Started music on hold, class 'default', on SIP/202-b6d08708
-- Stopped music on hold on SIP/202-b6d08708
-- User disconnected from queue hotline while waiting their turn
== Spawn extension (hotline, 777, 16) exited non-zero on
'SIP/202-b6d08708'
== End MixMonitor Recording SIP/202-b6d08708
The real strange thing is that when I change the value of the global
variable announce to 1 WaitExten is working as expected:
[globals]
incoming_call=0
menu=0
announce=1
CLI output:
-- Executing [777 at internal:1] Goto("SIP/202-081bb9f8", "hotline|777|1")
in new stack
-- Goto (hotline,777,1)
-- Executing [777 at hotline:1] Set("SIP/202-081bb9f8",
"CALLERID(name)=Hotline") in new stack
-- Executing [777 at hotline:2] Set("SIP/202-081bb9f8",
"original_extension=777") in new stack
-- Executing [777 at hotline:3] GotoIf("SIP/202-081bb9f8", "1?4:10") in
new stack
-- Goto (hotline,777,4)
-- Executing [777 at hotline:4] Answer("SIP/202-081bb9f8", "") in new stack
-- Executing [777 at hotline:5] NoOp("SIP/202-081bb9f8", "Ansage: Das
Problem XYZ ist bereits bekannt und wird bearbeitet") in new stack
-- Executing [777 at hotline:6] NoOp("SIP/202-081bb9f8", "Ansage:
Druecken Sie die Taste 1 falls Sie wegen einem anderen Problem anrufen")
in new stack
-- Executing [777 at hotline:7] NoOp("SIP/202-081bb9f8", "Ansage:
Ansonsten druecken Sie eine andere Taste oder legen Sie bitte auf") in
new stack
-- Executing [777 at hotline:8] WaitExten("SIP/202-081bb9f8", "5") in
new stack
== CDR updated on SIP/202-081bb9f8
-- Executing [1 at hotline:1] Goto("SIP/202-081bb9f8", "menu|1|1") in
new stack
-- Goto (menu,1,1)
-- Executing [1 at menu:1] GotoIf("SIP/202-081bb9f8", "1?2:4") in new stack
-- Goto (menu,1,2)
-- Executing [1 at menu:2] Set("SIP/202-081bb9f8", "menu=1") in new stack
-- Executing [1 at menu:3] Goto("SIP/202-081bb9f8", "hotline|777|11") in
new stack
-- Goto (hotline,777,11)
-- Executing [777 at hotline:11] NoOp("SIP/202-081bb9f8", "Ansage: Das
Gespraech wird aus Qualitaetsgruenden aufgezeichnet") in new stack
-- Executing [777 at hotline:12] NoOp("SIP/202-081bb9f8", "Ansage: Falls
Sie damit nicht einverstanden sind druecken Sie bitte die Taste 1") in
new stack
-- Executing [777 at hotline:13] WaitExten("SIP/202-081bb9f8", "5") in
new stack
== CDR updated on SIP/202-081bb9f8
-- Executing [1 at hotline:1] Goto("SIP/202-081bb9f8", "menu|1|1") in
new stack
-- Goto (menu,1,1)
-- Executing [1 at menu:1] GotoIf("SIP/202-081bb9f8", "0?2:4") in new stack
-- Goto (menu,1,4)
-- Executing [1 at menu:4] Goto("SIP/202-081bb9f8", "hotline|777|16") in
new stack
-- Goto (hotline,777,16)
-- Executing [777 at hotline:16] Queue("SIP/202-081bb9f8",
"hotline|t|||120") in new stack
-- Started music on hold, class 'default', on SIP/202-081bb9f8
-- Stopped music on hold on SIP/202-081bb9f8
-- User disconnected from queue hotline while waiting their turn
== Spawn extension (hotline, 777, 16) exited non-zero on
'SIP/202-081bb9f8'
The only difference with announce=1 is that WaitExten is executed twice
and both times it is working.
Perhaps anybody of you sees what is going wrong here.
Thanks for your help.
More information about the asterisk-users
mailing list