Hi,
(using v1.6.1.4 on 64bit CentOS 5.3)
just stumbled over a strange effect.
If i try to use
Goto(s-${DIALSTATUS},1)
after a
dial()
command, I can not jump to Extensions s-ANSWER, s-NOANSWER, s-CONGESTION whereas s-BUSY works fine!
After having tested a lot, it turn out, that the upper case ‘N’ in the extension string prevents asterisk from finding it.
e.g.:
.
exten => s,n,Goto(s-${DIALSTATUS},1)
.
.
exten => s-ANSWER,1,Goto(s,end)
.
will produce the following CLI output.
-- Goto (func_directcall,s-ANSWER,1)
[Aug 14 20:48:58] WARNING[12754]: pbx.c:3831 __ast_pbx_run: Channel 'SIP/D001-cc07ad38' sent into invalid extension 's-ANSWER' in context 'func_directcall', but no invalid handler
but the ‘dialplan show context’ will prove, the extension ‘s-ANSWER’ is parsed and available.
*CLI> dialplan show func_directcall
[ Context 'func_directcall' created by 'pbx_config' ]
.
.
5. Goto(s-${TOLOWER(${DIALSTATUS})},1) [pbx_config]
[end] 6. Return() [pbx_config]
's-ANSWER' => 1. Goto(s,end) [pbx_config]
.
if I change to
.
exten => s,n,Goto(s-${TOLOWER(${DIALSTATUS})},1)
.
.
exten => s-answer,1,Goto(s,end)
.
it works like a charm.
Further testing showed, that you can use upper case, as long as there is no ‘N’ in the extension string.
This post is just to let you know. I now have my workaround for this.
But it may be worth fixing it (if it is really broken).
Best regards and many thanks for providing this great pice of software.
Thomas