Noah Engelberth
2012-Aug-23 19:24 UTC
[asterisk-users] GotoIf redirection to label not working correctly
I run a hotdesking system based on the example from Asterisk: The Definitive Guide. Calls come into the [hotdesk] context, which verifies the phone has a logged in user and sends the call to users,${EXTEN},1 if there is a user logged in. The [users] context then includes several other contexts for internal/external call handling, as follows: [users] include => internal include => dummyextensions switch => DUNDi/dundi-peer Internal office calls should get caught by the include => internal, and run through the [internal] context as follows: [internal] exten => _3XX,1,NoOp() same => n,Set(E=${EXTEN}) same => n,Set(${E}_VMCONTEXT=${HOTDESK_INFO(vmcontext,${E})}) same => n,Set(USER_LOCATION=${HOTDESK_USER_STATUS(${E})}) same => n,GotoIf($[${ODBCROWS} < 1]?notloggedin) same => n,Dial(SIP/${USER_LOCATION},20,wWU(blf-begincall^${E}^INUSE)b(blf-begincall^s^1(${E}^RINGING))) same => n,Voicemail(${E}@${${E}_VMCONTEXT},b) same => n,Hangup() same => n(notloggedin),Set(LOGGED_OFF=1) same => n,Voicemail(${E}@${${E}_VMCONTEXT},u) same => n,Hangup() In both Asterisk 10 and Asterisk 11, the GotoIf does not work under the circumstances above, giving me the following error and hanging up the call: [Aug 23 15:17:35] WARNING[3558][C-00000565]: pbx.c:11799 pbx_parseable_goto: Priority 'notloggedin' must be a number > 0, or valid label I can work around the issue with any of the following: - Change the GotoIf to point to internal,${EXTEN},notloggedin - Change the GotoIf to point to 9 - Comment out the DUNDi switch in [users] - Unload the pbx_dundi.so module In the latter two cases, the call redirects to the notloggedin priority label within [internal],${EXTEN} without me changing the GotoIf - as long as the DUNDi switch is not active in [users]. With the DUNDi switch active, I get the warning message above and the call hangs up. Is there something I'm doing wrong in my config? Is this basically expected behavior that I need to adjust around? Thank you, Noah Engelberth MetaLINK Technologies -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.digium.com/pipermail/asterisk-users/attachments/20120823/f0d2426b/attachment.htm>
Richard Mudgett
2012-Aug-23 21:04 UTC
[asterisk-users] GotoIf redirection to label not working correctly
> I run a hotdesking system based on the example from Asterisk: The > Definitive Guide. Calls come into the [hotdesk] context, which > verifies the phone has a logged in user and sends the call to > users,${EXTEN},1 if there is a user logged in. The [users] context > then includes several other contexts for internal/external call > handling, as follows: > > > > [users] > include => internal > include => dummyextensions > > switch => DUNDi/dundi-peer > > > Internal office calls should get caught by the include => internal, > and run through the [internal] context as follows: > > [internal] > exten => _3XX,1,NoOp() > same => n,Set(E=${EXTEN}) > same => n,Set(${E}_VMCONTEXT=${HOTDESK_INFO(vmcontext,${E})}) > same => n,Set(USER_LOCATION=${HOTDESK_USER_STATUS(${E})}) > same => n,GotoIf($[${ODBCROWS} < 1]?notloggedin) > same => > n,Dial(SIP/${USER_LOCATION},20,wWU(blf-begincall^${E}^INUSE)b(blf-begincall^s^1(${E}^RINGING))) > same => n,Voicemail(${E}@${${E}_VMCONTEXT},b) > same => n,Hangup() > same => n(notloggedin),Set(LOGGED_OFF=1) > same => n,Voicemail(${E}@${${E}_VMCONTEXT},u) > same => n,Hangup() > > > > In both Asterisk 10 and Asterisk 11, the GotoIf does not work under > the circumstances above, giving me the following error and hanging > up the call: > > > > [Aug 23 15:17:35] WARNING [3558][C-00000565]: pbx.c : 11799 > pbx_parseable_goto : Priority 'notloggedin' must be a number > 0, or > valid label > > > > I can work around the issue with any of the following: > > - Change the GotoIf to point to internal,${EXTEN},notloggedin > - Change the GotoIf to point to 9 > - Comment out the DUNDi switch in [users] > - Unload the pbx_dundi.so module > > > > In the latter two cases, the call redirects to the notloggedin > priority label within [internal],${EXTEN} without me changing the > GotoIf ? as long as the DUNDi switch is not active in [users]. With > the DUNDi switch active, I get the warning message above and the > call hangs up. > > > > Is there something I?m doing wrong in my config? Is this basically > expected behavior that I need to adjust around?I am wondering if it will work if you changed the label name from notloggedin to something else. There might be a name conflict when using the DUNDi switch. Otherwise, it looks like a bug. Richard