Ticket #4155 (closed Bugs: fixed)

Opened 3 years ago

Last modified 3 years ago

some internal extensions cant be called internally

Reported by: bpps Assigned to: p_lindheimer
Priority: major Milestone: 2.8
Component: Core - Users/Devices Version: SVN-HEAD
Keywords: Cc:
Confirmation: Need testing Distro:
Backend Engine: Asterisk 1.6 Distro Ver:
Backend Ver: 1.6.2.4 SVN Revision (if applicable):

Description (Last modified by p_lindheimer)

I jumped the 2.8 beta wagon and have found that out of 20 extensins about five cant be called internaly when it uses the dialone macro i havent benable to pinpoint the differances between those and the other extensions

these are erroe msg coming up in the log but i couldnt find the exact place of the problem

is there is no problem calling out or intercoming those exten it looks like something in the dialone macro

running in device and user mode and function extension state is avail

exten => s,1,ExecIf($[${REGEX("^\*43[0-9#\*+]+$" ${DIAL_NUMBER})} = 1]?Set(TARGET_FLP41=${DIAL_NUMBER:3}))
[Mar 22 18:31:52] VERBOSE[14122] pbx.c: -- Executing [s@macro-dialout-trunk:12] 
[1;36mGosubIf("SIP/904-000000f6", "1?sub-flp-1,s,1") in new stack
[Mar 22 18:31:52] WARNING[14122] func_strings.c: Malformed input REGEX(): Invalid preceding regular expression
[Mar 22 18:31:52] WARNING[14122] ast_expr2.fl: ast_yyerror(): syntax error: syntax error, unexpected '=', expecting $end; Input:
= 1
^

_dial.c: Dial argument takes format (technology/[device:]number1)

[Mar 23 12:22:00] WARNING[3544] chan_dahdi.c: Unrecognized prilocaldialplan NPI modifier: h
[Mar 23 12:22:00] WARNING[3544] chan_dahdi.c: Unrecognized prilocaldialplan NPI modifier: i
[Mar 23 12:22:00] WARNING[3544] chan_dahdi.c: Unrecognized prilocaldialplan NPI modifier: d


[Mar 23 12:22:00] VERBOSE[3544] pbx.c: -- Goto (macro-user-callerid,s,19)
[Mar 23 12:22:00] VERBOSE[3544] pbx.c: -- Executing [s@macro-user-callerid:19] NoOp("Local/*4303756xxxx@from-internal-859b;2", "Using CallerID "05276xxxxx" <05276xxxxx>") in new stack
[Mar 23 12:22:00] WARNING[3544] pbx.c: Can't find trailing parenthesis for function 'LEN('?
[Mar 23 12:22:00] VERBOSE[3544] pbx.c: -- Executing [*4303756xxxx@from-internal:2] ExecIf("[

Change History

03/23/10 06:47:44 changed by mbrevda

  • description changed.

03/23/10 06:48:56 changed by mbrevda

  • description changed.

03/23/10 07:23:18 changed by mbrevda

  • description changed.

03/23/10 10:22:06 changed by p_lindheimer

  • confirmation changed from Unreviewed to Need Feedback.

bpps,

I'll need a lot more information here. First of all, the syntax error is in the outbound calling path nothing to do with dial-one. You've included a snippet of code where it is removing a prefix of '*43' in trunk number 41 but the syntax error that follows is calling out trunk 1. It would help to know what number is being dialed in that case and what the corresponding line of dialplan looks like that is creating the error.

As far as extension to extension dialing, you'll need to provide a trace of the attempted dial to see where it is failing, and then also a trace of the database show AMPUSER/user_num as well as database show DEVICE/device_num so we can see what is going on.

Thanks for reporting it and on the syntax error in the sub-flp-1 script if you have any chance of isolating what it is not liking or missing it would be great, because I'm not seeing any syntax errors on a 1.4 system and suspect this may be some differences between 1.4 and 1.6...

03/23/10 13:42:01 changed by bpps

ok i figured out when the problem happens logging in to a differant device adds to the database /AMPUSER/800/device : 903&800 and some extensions have this after logging out

/AMPUSER/800/device : &800

then asterisk throws the error

_dial.c: Dial argument takes format (technology/[device:]number1)

03/23/10 13:48:03 changed by p_lindheimer

that helps, and looks like it may be an issue with the login/out script leaving it in that state. Does that only happen when the first device in the list logs out? Can you do some tests and check? I'm thinking the algorithms may be tolerant in with that error in dialparties.agi but no in the new dialplan.

However, you still had syntax errors in your sub-fpl-1 subroutine. It would be very helpful to figure out what is going on there (and might be best to open a new ticket on it when you pull up that info). I'm concerned there may be more syntax differences in 1.6 from 1.4 since I'm not seeing any such errors. Also seeing your exact trunk dialrules and associated outbound route might help as I can try to setup the same thing here and reproduce it.

03/23/10 13:58:49 changed by p_lindheimer

btw I just did some tests with the user_login_out.agi script used to login/out users and so far have not been able to get a single remaining user to have an "&" in front like you saw, so any help knowing how that happened would be great. Was it from the GUI that you removed them that resulted in this? Please provide details so we can fix the problem at the source.

03/23/10 14:38:16 changed by bpps

ok I tested it and it happens when after logging in with another user and then reload amportal which makes the default device show up as second in the database

903&825 becomes 825&903 then logging back out removes the 825 and leaves the &903 the & doesnt always remain but id does sometimes

03/23/10 14:48:52 changed by p_lindheimer

I need to get to some exact steps to reproduce the problem or we won't be able to get to the bottom of it and especially the "the & doesn't always remain but id does sometimes " part because there needs to be some predictable issue going on when that happens.

Can you provide the exact step by step description of what you did and what the database show AMPUSER/user_num/DEVICE looked like after each step because it's still not clear.

e.g.

  • Initial state, database show AMPUSER/222/DEVICE shows:
  • User 222 logs in on device 825 with with the with by typing *11 followed by...
  • Now the state of database show shows ...
  • Next I go into the FreePBX GUI and do the following exact steps, I then hit submit
  • Now the state of database show shows ...
  • etc.

That's the level of details that I need and the feedback to see what you are doing so that we can the reproduce it here and see what is going wrong. Thanks for providing that. (note you can make the above bullets by putting an "*" indented by one or more spaces from the left. See the WikiFormatting if you need more formatting info.

03/25/10 06:16:36 changed by bpps

It looks like all users that have multiple devices don't work with the new dialplan it returns busy or voicemail

03/25/10 10:31:35 changed by p_lindheimer

bpps,

I need a trace of the calls that are not working with similar information to the above to see what is going on, and I need the log checked as well to make sure there are no syntax errors being reported when it is parsing through multiple devices in such modes as there have been subtle (annoying) changes Asterisk has made between 1.4 and multiple 1.6 versions (in general, 1.6.2 is a disaster...) and I don't have every combination to test on unfortunately...

03/25/10 10:45:50 changed by p_lindheimer

btw - I should have mentioned the reason I need the above is that I have tested it on users with multiple devices and it works, but from your previous information it looks like the DEVICE object may be getting corrupted and we need to understand how and where since that will break other things as well such as intercom (where some of this code was leveraged from) that parses out the dialstring.

03/25/10 13:06:11 changed by bpps

on the trace i dont see anything special but on the lok its complaining

("Local/930@from-internal-2de7;2", "DSTRING=") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:2] Set("Local/930@from-internal-2de7;2", "DEVICES=930&931") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:3] ExecIf("Local/930@from-internal-2de7;2", "0?Return()") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:4] Set("Local/930@from-internal-2de7;2", "LOOPCNT=2") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:5] Set("Local/930@from-internal-2de7;2", "ITER=1") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:6] Set("Local/930@from-internal-2de7;2", "THISDIAL=") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:7] GosubIf("Local/930@from-internal-2de7;2", "1?zap2dahdi,1") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [zap2dahdi@macro-dial-one:1] ExecIf("Local/930@from-internal-2de7;2", "1?Return()") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:8] Set("Local/930@from-internal-2de7;2", "DSTRING=&") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:9] Set("Local/930@from-internal-2de7;2", "ITER=2") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:10] GotoIf("Local/930@from-internal-2de7;2", "1?begin") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Goto (macro-dial-one,dstring,6)
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:6] Set("Local/930@from-internal-2de7;2", "THISDIAL=") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:7] GosubIf("Local/930@from-internal-2de7;2", "1?zap2dahdi,1") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [zap2dahdi@macro-dial-one:1] ExecIf("Local/930@from-internal-2de7;2", "1?Return()") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:8] Set("Local/930@from-internal-2de7;2", "DSTRING=&&") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:9] Set("Local/930@from-internal-2de7;2", "ITER=3") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:10] GotoIf("Local/930@from-internal-2de7;2", "0?begin") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:11] Set("Local/930@from-internal-2de7;2", "DSTRING=&") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [dstring@macro-dial-one:12] Return("Local/930@from-internal-2de7;2", "") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [s@macro-dial-one:27] GotoIf("Local/930@from-internal-2de7;2", "1?skiptrace") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Goto (macro-dial-one,s,29)
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [s@macro-dial-one:29] Set("Local/930@from-internal-2de7;2", "D_OPTIONS=tr") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [s@macro-dial-one:30] ExecIf("Local/930@from-internal-2de7;2", "0?SIPAddHeader(Alert-Info: )") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [s@macro-dial-one:31] ExecIf("Local/930@from-internal-2de7;2", "0?SIPAddHeader()") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [s@macro-dial-one:32] ExecIf("Local/930@from-internal-2de7;2", "0?SetMusicOnHold()") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [s@macro-dial-one:33] GosubIf("Local/930@from-internal-2de7;2", "0?qwait,1") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [s@macro-dial-one:34] Set("Local/930@from-internal-2de7;2", "__CWIGNORE=") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [s@macro-dial-one:35] Set("Local/930@from-internal-2de7;2", "__KEEPCID=TRUE") in new stack
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: -- Executing [s@macro-dial-one:36] Dial("Local/930@from-internal-2de7;2", "&,,tr") in new stack


[Mar 25 18:55:03] WARNING[23231] app_dial.c: Dial argument takes format (technology/[device:]number1)



[Mar 25 18:55:03] VERBOSE[23231] app_macro.c: == Spawn extension (macro-dial-one, s, 36) exited non-zero on 'Local/930@from-internal-2de7;2' in macro 'dial-one'
[Mar 25 18:55:03] VERBOSE[23231] app_macro.c: == Spawn extension (macro-exten-vm, s, 9) exited non-zero on 'Local/930@from-internal-2de7;2' in macro 'exten-vm'
[Mar 25 18:55:03] VERBOSE[23231] pbx.c: == Spawn extension (from-internal, 930, 1) exited non-zero on 'Local/930@from-internal-2de7;2'
/AMPUSER/930                                      : 930
/AMPUSER/930/cidname                              : AMC - Sec
/AMPUSER/930/cidnum                               : 930
/AMPUSER/930/device                               : 930&931
/AMPUSER/930/language                             :
/AMPUSER/930/noanswer                             :
/AMPUSER/930/outboundcid                          : 25000000
/AMPUSER/930/password                             : 4935
/AMPUSER/930/recording                            : out=Adhoc|in=Adhoc
/AMPUSER/930/ringtimer                            : 0
/AMPUSER/930/voicemail                            : novm
11 results found.

BTW how do we use dahdi regular mode

03/25/10 13:12:26 changed by p_lindheimer

thanks, it's clearly the zap2dahdi conversion from compatibility mode. I can't make sense out of what you are pasting though, it looks like the color coding CTL characters or something are messing with it. Any chance of seeing if pulling that out of the log file might be more legible? Or is it the same thing there?

03/25/10 13:24:09 changed by bpps

is this any better

pbx.c:     -- Executing [dstring@macro-dial-one:1] Set("Local/930@from-internal-6fc3;2", "DSTRING=") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:2] Set("Local/930@from-internal-6fc3;2", "DEVICES=930&931") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:3] ExecIf("Local/930@from-internal-6fc3;2", "0?Return()") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:4] Set("Local/930@from-internal-6fc3;2", "LOOPCNT=2") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:5] Set("Local/930@from-internal-6fc3;2", "ITER=1") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:6] Set("Local/930@from-internal-6fc3;2", "THISDIAL=") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:7] GosubIf("Local/930@from-internal-6fc3;2", "1?zap2dahdi,1") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [zap2dahdi@macro-dial-one:1] ExecIf("Local/930@from-internal-6fc3;2", "1?Return()") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:8] Set("Local/930@from-internal-6fc3;2", "DSTRING=&") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:9] Set("Local/930@from-internal-6fc3;2", "ITER=2") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:10] GotoIf("Local/930@from-internal-6fc3;2", "1?begin") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Goto (macro-dial-one,dstring,6)
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:6] Set("Local/930@from-internal-6fc3;2", "THISDIAL=") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:7] GosubIf("Local/930@from-internal-6fc3;2", "1?zap2dahdi,1") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [zap2dahdi@macro-dial-one:1] ExecIf("Local/930@from-internal-6fc3;2", "1?Return()") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:8] Set("Local/930@from-internal-6fc3;2", "DSTRING=&&") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:9] Set("Local/930@from-internal-6fc3;2", "ITER=3") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:10] GotoIf("Local/930@from-internal-6fc3;2", "0?begin") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:11] Set("Local/930@from-internal-6fc3;2", "DSTRING=&") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [dstring@macro-dial-one:12] Return("Local/930@from-internal-6fc3;2", "") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [s@macro-dial-one:27] GotoIf("Local/930@from-internal-6fc3;2", "1?skiptrace") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Goto (macro-dial-one,s,29)
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [s@macro-dial-one:29] Set("Local/930@from-internal-6fc3;2", "D_OPTIONS=tr") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [s@macro-dial-one:30] ExecIf("Local/930@from-internal-6fc3;2", "0?SIPAddHeader(Alert-Info: )") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [s@macro-dial-one:31] ExecIf("Local/930@from-internal-6fc3;2", "0?SIPAddHeader()") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [s@macro-dial-one:32] ExecIf("Local/930@from-internal-6fc3;2", "0?SetMusicOnHold()") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [s@macro-dial-one:33] GosubIf("Local/930@from-internal-6fc3;2", "0?qwait,1") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [s@macro-dial-one:34] Set("Local/930@from-internal-6fc3;2", "__CWIGNORE=") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [s@macro-dial-one:35] Set("Local/930@from-internal-6fc3;2", "__KEEPCID=TRUE") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [s@macro-dial-one:36] Dial("Local/930@from-internal-6fc3;2", "&,,tr") in new stack
[Mar 25 19:21:46] WARNING[25398] app_dial.c: Dial argument takes format (technology/[device:]number1)
[Mar 25 19:21:46] VERBOSE[25398] app_macro.c:   == Spawn extension (macro-dial-one, s, 36) exited non-zero on 'Local/930@from-internal-6fc3;2' in macro 'dial-one'
[Mar 25 19:21:46] VERBOSE[25398] app_macro.c:   == Spawn extension (macro-exten-vm, s, 9) exited non-zero on 'Local/930@from-internal-6fc3;2' in macro 'exten-vm'
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:   == Spawn extension (from-internal, 930, 1) exited non-zero on 'Local/930@from-internal-6fc3;2'
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [h@from-internal:1] Macro("Local/930@from-internal-6fc3;2", "hangupcall") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Executing [s@macro-hangupcall:1] GotoIf("Local/930@from-internal-6fc3;2", "1?skiprg") in new stack
[Mar 25 19:21:46] VERBOSE[25398] pbx.c:     -- Goto (macro-hangupcall,s,4)

03/25/10 13:31:02 changed by p_lindheimer

not really but looking a little closer it is not the zap2dahdi, it's not parsing your dialstring in dstring or so it seems unless it's those CTL characters cluttering things up.

Can you show me what both those devices look like:

database show DEVICE/930
and
database show DEVICE/931

because it looks to me like it's getting bogus dialstrings out of those, and thus zap2dahdi just returns as they are blank.

Also, check the log and see if there are any syntax errors reported, in case 1.6.2 doesn't like something we are doing.

03/25/10 13:43:50 changed by bpps

i did the same for another extension complaning as the previous i might have messed up something allready

this one i havent tried to debug

database show AMPUSER/903
/AMPUSER/903/cidname                              : NA
/AMPUSER/903/cidnum                               : 903
/AMPUSER/903/device                               : 903&905
/AMPUSER/903/language                             :
/AMPUSER/903/noanswer                             :
/AMPUSER/903/outboundcid                          : 25000000
/AMPUSER/903/password                             : 4935
/AMPUSER/903/recording                            : out=Adhoc|in=Adhoc
/AMPUSER/903/ringtimer                            : 0
/AMPUSER/903/voicemail                            : default
/ampuser/903/device                               : 903
11 results found.
/DEVICE/903/default_user                          : 903
/DEVICE/903/dial                                  : SIP/903
/DEVICE/903/type                                  : adhoc
/DEVICE/903/user                                  : 903
4 results found
/DEVICE/905/default_user                          : 905
/DEVICE/905/dial                                  : SIP/905
/DEVICE/905/type                                  : adhoc
/DEVICE/905/user                                  : 903
4 results found.
[Mar 25 19:35:25] VERBOSE[26449] pbx.c:     -- Executing [s@macro-dial-one:27] GotoIf("Local/903@from-internal-cd03;2", "1?skiptrace") in new stack
[Mar 25 19:35:25] VERBOSE[26449] pbx.c:     -- Goto (macro-dial-one,s,29)
[Mar 25 19:35:25] VERBOSE[26449] pbx.c:     -- Executing [s@macro-dial-one:29] Set("Local/903@from-internal-cd03;2", "D_OPTIONS=tr") in new stack
[Mar 25 19:35:25] VERBOSE[26449] pbx.c:     -- Executing [s@macro-dial-one:30] ExecIf("Local/903@from-internal-cd03;2", "0?SIPAddHeader(Alert-Info: )") in new stack
[Mar 25 19:35:25] VERBOSE[26449] pbx.c:     -- Executing [s@macro-dial-one:31] ExecIf("Local/903@from-internal-cd03;2", "0?SIPAddHeader()") in new stack
[Mar 25 19:35:25] VERBOSE[26449] pbx.c:     -- Executing [s@macro-dial-one:32] ExecIf("Local/903@from-internal-cd03;2", "0?SetMusicOnHold()") in new stack
[Mar 25 19:35:25] VERBOSE[26449] pbx.c:     -- Executing [s@macro-dial-one:33] GosubIf("Local/903@from-internal-cd03;2", "0?qwait,1") in new stack
[Mar 25 19:35:25] VERBOSE[26449] pbx.c:     -- Executing [s@macro-dial-one:34] Set("Local/903@from-internal-cd03;2", "__CWIGNORE=") in new stack
[Mar 25 19:35:25] VERBOSE[26449] pbx.c:     -- Executing [s@macro-dial-one:35] Set("Local/903@from-internal-cd03;2", "__KEEPCID=TRUE") in new stack
[Mar 25 19:35:25] VERBOSE[26449] pbx.c:     -- Executing [s@macro-dial-one:36] Dial("Local/903@from-internal-cd03;2", "SIP/903&,30,tr") in new stack
[Mar 25 19:35:25] VERBOSE[26449] netsock.c:   == Using SIP RTP TOS bits 184
[Mar 25 19:35:25] VERBOSE[26449] netsock.c:   == Using SIP RTP CoS mark 5
[Mar 25 19:35:25] VERBOSE[8200] chan_sip.c:   == Extension Changed 903[ext-local] new state Ringing for Notify User 905 
[Mar 25 19:35:25] VERBOSE[8200] chan_sip.c:   == Extension Changed 903[ext-local] new state Ringing for Notify User 902 
[Mar 25 19:35:25] VERBOSE[8200] chan_sip.c:   == Extension Changed 903[ext-local] new state Ringing for Notify User 901 
[Mar 25 19:35:25] VERBOSE[8200] chan_sip.c:   == Extension Changed 903[ext-local] new state Ringing for Notify User 800 
[Mar 25 19:35:25] VERBOSE[8200] chan_sip.c:   == Extension Changed 903[ext-local] new state Ringing for Notify User 915 
[Mar 25 19:35:25] VERBOSE[8200] chan_sip.c:   == Extension Changed 903[ext-local] new state Ringing for Notify User 913 
[Mar 25 19:35:25] VERBOSE[8200] chan_sip.c:   == Extension Changed 903[ext-local] new state Ringing for Notify User 900 
[Mar 25 19:35:25] VERBOSE[8200] chan_sip.c:   == Extension Changed 903[ext-local] new state Ringing for Notify User 906 
[Mar 25 19:35:25] VERBOSE[8200] chan_sip.c:   == Extension Changed 903[ext-local] new state Ringing for Notify User 904 
[Mar 25 19:35:25] VERBOSE[8200] chan_sip.c:   == Extension Changed 903[ext-local] new state Ringing for Notify User 825 
[Mar 25 19:35:25] VERBOSE[8200] chan_sip.c:   == Extension Changed 903[ext-local] new state Ringing for Notify User 912 
[Mar 25 19:35:25] VERBOSE[26449] app_dial.c:     -- Called 903
[Mar 25 19:35:25] WARNING[26449] app_dial.c: Dial argument takes format (technology/[device:]number1)
[Mar 25 19:35:25] VERBOSE[8200] chan_sip.c:   == Extension Changed 903[ext-local] new state Idle for Notify User 905 (queued)

03/25/10 14:26:39 changed by p_lindheimer

so that's from the log (thus no syntax errors being detected?)

You are missing the part of the trace where it parses and creates the dialstring. What happens if you try to intercom that extension, does it skip the second device as well? It would be helpful for a trace of the dialplan where it is parsing to create the string as well as a trace of an attempt to intercom that user and see if the same thing happens, as that is where the code was leveraged from, it should plop all the devices into a paging command.

very strange because it works on 1.4, seeing the parsing of the dialstring will help.

03/25/10 18:26:29 changed by bpps

intercom works ok

 -- Executing [903@from-internal:1] Macro("Local/903@from-internal-b569;2", "exten-vm,903,903") in new stack
    -- Executing [s@macro-exten-vm:1] Macro("Local/903@from-internal-b569;2", "user-callerid,") in new stack
    -- Executing [s@macro-user-callerid:1] Set("Local/903@from-internal-b569;2", "AMPUSER=") in new stack
    -- Executing [s@macro-user-callerid:2] GotoIf("Local/903@from-internal-b569;2", "1?report") in new stack
    -- Goto (macro-user-callerid,s,10)
    -- Executing [s@macro-user-callerid:10] GotoIf("Local/903@from-internal-b569;2", "0?continue") in new stack
    -- Executing [s@macro-user-callerid:11] Set("Local/903@from-internal-b569;2", "__TTL=64") in new stack
    -- Executing [s@macro-user-callerid:12] GotoIf("Local/903@from-internal-b569;2", "1?continue") in new stack
    -- Goto (macro-user-callerid,s,19)
    -- Executing [s@macro-user-callerid:19] NoOp("Local/903@from-internal-b569;2", "Using CallerID "" <>") in new stack
    -- Executing [s@macro-exten-vm:2] Set("Local/903@from-internal-b569;2", "RingGroupMethod=none") in new stack
    -- Executing [s@macro-exten-vm:3] Set("Local/903@from-internal-b569;2", "VMBOX=903") in new stack
    -- Executing [s@macro-exten-vm:4] Set("Local/903@from-internal-b569;2", "EXTTOCALL=903") in new stack
    -- Executing [s@macro-exten-vm:5] Set("Local/903@from-internal-b569;2", "CFUEXT=") in new stack
    -- Executing [s@macro-exten-vm:6] Set("Local/903@from-internal-b569;2", "CFBEXT=") in new stack
    -- Executing [s@macro-exten-vm:7] Set("Local/903@from-internal-b569;2", "RT=30") in new stack
    -- Executing [s@macro-exten-vm:8] Macro("Local/903@from-internal-b569;2", "record-enable,903,IN") in new stack
    -- Executing [s@macro-record-enable:1] GotoIf("Local/903@from-internal-b569;2", "1?check") in new stack
    -- Goto (macro-record-enable,s,4)
    -- Executing [s@macro-record-enable:4] ExecIf("Local/903@from-internal-b569;2", "0?MacroExit()") in new stack
    -- Executing [s@macro-record-enable:5] GotoIf("Local/903@from-internal-b569;2", "0?Group:OUT") in new stack
    -- Goto (macro-record-enable,s,15)
    -- Executing [s@macro-record-enable:15] GotoIf("Local/903@from-internal-b569;2", "1?IN") in new stack
    -- Goto (macro-record-enable,s,20)
    -- Executing [s@macro-record-enable:20] ExecIf("Local/903@from-internal-b569;2", "1?MacroExit()") in new stack
    -- Executing [s@macro-exten-vm:9] Macro("Local/903@from-internal-b569;2", "dial-one,30,tr,903") in new stack
    -- Executing [s@macro-dial-one:1] Set("Local/903@from-internal-b569;2", "DEXTEN=903") in new stack
    -- Executing [s@macro-dial-one:2] Set("Local/903@from-internal-b569;2", "DIALSTATUS_CW=") in new stack
    -- Executing [s@macro-dial-one:3] GosubIf("Local/903@from-internal-b569;2", "0?screen,1") in new stack
    -- Executing [s@macro-dial-one:4] GosubIf("Local/903@from-internal-b569;2", "0?cf,1") in new stack
    -- Executing [s@macro-dial-one:5] GotoIf("Local/903@from-internal-b569;2", "1?skip1") in new stack
    -- Goto (macro-dial-one,s,8)
    -- Executing [s@macro-dial-one:8] GotoIf("Local/903@from-internal-b569;2", "0?nodial") in new stack
    -- Executing [s@macro-dial-one:9] GotoIf("Local/903@from-internal-b569;2", "0?continue") in new stack
    -- Executing [s@macro-dial-one:10] Set("Local/903@from-internal-b569;2", "EXTHASCW=ENABLED") in new stack
    -- Executing [s@macro-dial-one:11] GotoIf("Local/903@from-internal-b569;2", "0?next1:cwinusebusy") in new stack
    -- Goto (macro-dial-one,s,23)
    -- Executing [s@macro-dial-one:23] GotoIf("Local/903@from-internal-b569;2", "1?next3:continue") in new stack
    -- Goto (macro-dial-one,s,24)
    -- Executing [s@macro-dial-one:24] ExecIf("Local/903@from-internal-b569;2", "0?Set(DIALSTATUS_CW=BUSY)") in new stack
    -- Executing [s@macro-dial-one:25] GotoIf("Local/903@from-internal-b569;2", "0?nodial") in new stack
    -- Executing [s@macro-dial-one:26] GosubIf("Local/903@from-internal-b569;2", "1?dstring,1:dlocal,1") in new stack
    -- Executing [dstring@macro-dial-one:1] Set("Local/903@from-internal-b569;2", "DSTRING=") in new stack
    -- Executing [dstring@macro-dial-one:2] Set("Local/903@from-internal-b569;2", "DEVICES=903&905") in new stack
    -- Executing [dstring@macro-dial-one:3] ExecIf("Local/903@from-internal-b569;2", "0?Return()") in new stack
    -- Executing [dstring@macro-dial-one:4] Set("Local/903@from-internal-b569;2", "LOOPCNT=2") in new stack
    -- Executing [dstring@macro-dial-one:5] Set("Local/903@from-internal-b569;2", "ITER=1") in new stack
    -- Executing [dstring@macro-dial-one:6] Set("Local/903@from-internal-b569;2", "THISDIAL=SIP/903") in new stack
    -- Executing [dstring@macro-dial-one:7] GosubIf("Local/903@from-internal-b569;2", "1?zap2dahdi,1") in new stack
    -- Executing [zap2dahdi@macro-dial-one:1] ExecIf("Local/903@from-internal-b569;2", "0?Return()") in new stack
    -- Executing [zap2dahdi@macro-dial-one:2] Set("Local/903@from-internal-b569;2", "NEWDIAL=") in new stack
    -- Executing [zap2dahdi@macro-dial-one:3] Set("Local/903@from-internal-b569;2", "LOOPCNT2=1") in new stack
    -- Executing [zap2dahdi@macro-dial-one:4] Set("Local/903@from-internal-b569;2", "ITER2=1") in new stack
    -- Executing [zap2dahdi@macro-dial-one:5] Set("Local/903@from-internal-b569;2", "THISPART=SIP/903") in new stack
    -- Executing [zap2dahdi@macro-dial-one:6] ExecIf("Local/903@from-internal-b569;2", "0?Set(THISPART=DAHDI/903)") in new stack
    -- Executing [zap2dahdi@macro-dial-one:7] Set("Local/903@from-internal-b569;2", "NEWDIAL=SIP/903&") in new stack
    -- Executing [zap2dahdi@macro-dial-one:8] Set("Local/903@from-internal-b569;2", "ITER2=2") in new stack
    -- Executing [zap2dahdi@macro-dial-one:9] GotoIf("Local/903@from-internal-b569;2", "0?begin2") in new stack
    -- Executing [zap2dahdi@macro-dial-one:10] Set("Local/903@from-internal-b569;2", "THISDIAL=SIP/903") in new stack
 
rv*CLI> 
   -- Executing [zap2dahdi@macro-dial-one:11] Return("Local/903@from-internal-b569;2", "") in new stack
    -- Executing [dstring@macro-dial-one:8] Set("Local/903@from-internal-b569;2", "DSTRING=SIP/903&") in new stack
    -- Executing [dstring@macro-dial-one:9] Set("Local/903@from-internal-b569;2", "ITER=2") in new stack
    -- Executing [dstring@macro-dial-one:10] GotoIf("Local/903@from-internal-b569;2", "1?begin") in new stack
    -- Goto (macro-dial-one,dstring,6)
    -- Executing [dstring@macro-dial-one:6] Set("Local/903@from-internal-b569;2", "THISDIAL=SIP/905") in new stack
    -- Executing [dstring@macro-dial-one:7] GosubIf("Local/903@from-internal-b569;2", "1?zap2dahdi,1") in new stack
    -- Executing [zap2dahdi@macro-dial-one:1] ExecIf("Local/903@from-internal-b569;2", "0?Return()") in new stack
    -- Executing [zap2dahdi@macro-dial-one:2] Set("Local/903@from-internal-b569;2", "NEWDIAL=") in new stack
    -- Executing [zap2dahdi@macro-dial-one:3] Set("Local/903@from-internal-b569;2", "LOOPCNT2=1") in new stack
    -- Executing [zap2dahdi@macro-dial-one:4] Set("Local/903@from-internal-b569;2", "ITER2=1") in new stack
    -- Executing [zap2dahdi@macro-dial-one:5] Set("Local/903@from-internal-b569;2", "THISPART=") in new stack
    -- Executing [zap2dahdi@macro-dial-one:6] ExecIf("Local/903@from-internal-b569;2", "0?Set(THISPART=DAHDI)") in new stack
    -- Executing [zap2dahdi@macro-dial-one:7] Set("Local/903@from-internal-b569;2", "NEWDIAL=&") in new stack
    -- Executing [zap2dahdi@macro-dial-one:8] Set("Local/903@from-internal-b569;2", "ITER2=2") in new stack
    -- Executing [zap2dahdi@macro-dial-one:9] GotoIf("Local/903@from-internal-b569;2", "0?begin2") in new stack
    -- Executing [zap2dahdi@macro-dial-one:10] Set("Local/903@from-internal-b569;2", "THISDIAL=") in new stack
    -- Executing [zap2dahdi@macro-dial-one:11] Return("Local/903@from-internal-b569;2", "") in new stack
    -- Executing [dstring@macro-dial-one:8] Set("Local/903@from-internal-b569;2", "DSTRING=SIP/903&&") in new stack
    -- Executing [dstring@macro-dial-one:9] Set("Local/903@from-internal-b569;2", "ITER=3") in new stack
    -- Executing [dstring@macro-dial-one:10] GotoIf("Local/903@from-internal-b569;2", "0?begin") in new stack
    -- Executing [dstring@macro-dial-one:11] Set("Local/903@from-internal-b569;2", "DSTRING=SIP/903&") in new stack
    -- Executing [dstring@macro-dial-one:12] Return("Local/903@from-internal-b569;2", "") in new stack
    -- Executing [s@macro-dial-one:27] GotoIf("Local/903@from-internal-b569;2", "1?skiptrace") in new stack
    -- Goto (macro-dial-one,s,29)
    -- Executing [s@macro-dial-one:29] Set("Local/903@from-internal-b569;2", "D_OPTIONS=tr") in new stack
    -- Executing [s@macro-dial-one:30] ExecIf("Local/903@from-internal-b569;2", "0?SIPAddHeader(Alert-Info: )") in new stack
    -- Executing [s@macro-dial-one:31] ExecIf("Local/903@from-internal-b569;2", "0?SIPAddHeader()") in new stack
    -- Executing [s@macro-dial-one:32] ExecIf("Local/903@from-internal-b569;2", "0?SetMusicOnHold()") in new stack
    -- Executing [s@macro-dial-one:33] GosubIf("Local/903@from-internal-b569;2", "0?qwait,1") in new stack
    -- Executing [s@macro-dial-one:34] Set("Local/903@from-internal-b569;2", "__CWIGNORE=") in new stack
    -- Executing [s@macro-dial-one:35] Set("Local/903@from-internal-b569;2", "__KEEPCID=TRUE") in new stack
    -- Executing [s@macro-dial-one:36] Dial("Local/903@from-internal-b569;2", "SIP/903&,30,tr") in new stack
  == Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
  == Extension Changed 930[ext-local] new state Ringing for Notify User 825 
  == Extension Changed 930[ext-local] new state Ringing for Notify User 903 
  == Extension Changed 930[ext-local] new state Ringing for Notify User 915 
  == Extension Changed 903[ext-local] new state Ringing for Notify User 905 
  == Extension Changed 903[ext-local] new state Ringing for Notify User 902 
  == Extension Changed 903[ext-local] new state Ringing for Notify User 901 
  == Extension Changed 903[ext-local] new state Ringing for Notify User 800 
  == Extension Changed 903[ext-local] new state Ringing for Notify User 915 
  == Extension Changed 903[ext-local] new state Ringing for Notify User 913 
  == Extension Changed 903[ext-local] new state Ringing for Notify User 900 
  == Extension Changed 903[ext-local] new state Ringing for Notify User 906 
  == Extension Changed 903[ext-local] new state Ringing for Notify User 904 
  == Extension Changed 903[ext-local] new state Ringing for Notify User 825 
  == Extension Changed 903[ext-local] new state Ringing for Notify User 912 
    -- Called 903
  == Extension Changed 930[ext-local] new state Idle for Notify User 825 (queued)
  == Extension Changed 930[ext-local] new state Idle for Notify User 903 (queued)
  == Extension Changed 930[ext-local] new state Idle for Notify User 915 (queued)
  == Extension Changed 903[ext-local] new state Idle for Notify User 905 (queued)
  == Extension Changed 903[ext-local] new state Idle for Notify User 902 (queued)
  == Extension Changed 903[ext-local] new state Idle for Notify User 901 (queued)
  == Extension Changed 903[ext-local] new state Idle for Notify User 800 (queued)
  == Extension Changed 903[ext-local] new state Idle for Notify User 915 (queued)
  == Extension Changed 903[ext-local] new state Idle for Notify User 913 (queued)
  == Extension Changed 903[ext-local] new state Idle for Notify User 900 (queued)
  == Extension Changed 903[ext-local] new state Idle for Notify User 906 (queued)
  == Extension Changed 903[ext-local] new state Idle for Notify User 904 (queued)
  == Extension Changed 903[ext-local] new state Idle for Notify User 825 (queued)
  == Extension Changed 903[ext-local] new state Idle for Notify User 912 (queued)
    -- Executing [s@macro-dial-one:37] ExecIf("Local/903@from-internal-b569;2", "0?Set(DIALSTATUS=)") in new stack
    -- Executing [s@macro-dial-one:38] GosubIf("Local/903@from-internal-b569;2", "0?s-INVALIDARGS,1") in new stack
    -- Executing [s@macro-dial-one:39] MacroExit("Local/903@from-internal-b569;2", "") in new stack
    -- Executing [s@macro-exten-vm:10] GotoIf("Local/903@from-internal-b569;2", "0?exit,return") in new stack
    -- Executing [s@macro-exten-vm:11] Set("Local/903@from-internal-b569;2", "SV_DIALSTATUS=INVALIDARGS") in new stack
    -- Executing [s@macro-exten-vm:12] GosubIf("Local/903@from-internal-b569;2", "0?docfu,1") in new stack
    -- Executing [s@macro-exten-vm:13] GosubIf("Local/903@from-internal-b569;2", "0?docfb,1") in new stack
    -- Executing [s@macro-exten-vm:14] Set("Local/903@from-internal-b569;2", "DIALSTATUS=INVALIDARGS") in new stack
    -- Executing [s@macro-exten-vm:15] NoOp("Local/903@from-internal-b569;2", "Voicemail is '903'") in new stack
    -- Executing [s@macro-exten-vm:16] GotoIf("Local/903@from-internal-b569;2", "0?s-INVALIDARGS,1") in new stack
    -- Executing [s@macro-exten-vm:17] NoOp("Local/903@from-internal-b569;2", "Sending to Voicemail box 903") in new stack
    -- Executing [s@macro-exten-vm:18] Macro("Local/903@from-internal-b569;2", "vm,903,INVALIDARGS,") in new stack
    -- Executing [s@macro-vm:1] Macro("Local/903@from-internal-b569;2", "user-callerid,SKIPTTL") in new stack
    -- Executing [s@macro-user-callerid:1] Set("Local/903@from-internal-b569;2", "AMPUSER=") in new stack
    -- Executing [s@macro-user-callerid:2] GotoIf("Local/903@from-internal-b569;2", "1?report") in new stack
    -- Goto (macro-user-callerid,s,10)
    -- Executing [s@macro-user-callerid:10] GotoIf("Local/903@from-internal-b569;2", "1?continue") in new stack
    -- Goto (macro-user-callerid,s,19)
    -- Executing [s@macro-user-callerid:19] NoOp("Local/903@from-internal-b569;2", "Using CallerID "" <>") in new stack
    -- Executing [s@macro-vm:2] Set("Local/903@from-internal-b569;2", "VMGAIN=""") in new stack
    -- Executing [s@macro-vm:3] GotoIf("Local/903@from-internal-b569;2", "1?vmx,1") in new stack
    -- Goto (macro-vm,vmx,1)
    -- Executing [vmx@macro-vm:1] Set("Local/903@from-internal-b569;2", "MEXTEN=903") in new stack
    -- Executing [vmx@macro-vm:2] Set("Local/903@from-internal-b569;2", "MMODE=INVALIDARGS") in new stack
    -- Executing [vmx@macro-vm:3] Set("Local/903@from-internal-b569;2", "RETVM=") in new stack
    -- Executing [vmx@macro-vm:4] Set("Local/903@from-internal-b569;2", "MODE=unavail") in new stack
    -- Executing [vmx@macro-vm:5] GotoIf("Local/903@from-internal-b569;2", "1?chknomsg") in new stack
    -- Goto (macro-vm,vmx,7)
    -- Executing [vmx@macro-vm:7] GotoIf("Local/903@from-internal-b569;2", "0?s-INVALIDARGS,1") in new stack
    -- Executing [vmx@macro-vm:8] GotoIf("Local/903@from-internal-b569;2", "1?notdirect") in new stack
    -- Goto (macro-vm,vmx,10)
    -- Executing [vmx@macro-vm:10] NoOp("Local/903@from-internal-b569;2", "Checking if ext 903 is enabled: ") in new stack
    -- Executing [vmx@macro-vm:11] GotoIf("Local/903@from-internal-b569;2", "1?s-INVALIDARGS,1") in new stack
    -- Goto (macro-vm,s-INVALIDARGS,1)
    -- Executing [s-INVALIDARGS@macro-vm:1] Macro("Local/903@from-internal-b569;2", "get-vmcontext,903") in new stack
    -- Executing [s@macro-get-vmcontext:1] Set("Local/903@from-internal-b569;2", "VMCONTEXT=default") in new stack
    -- Executing [s@macro-get-vmcontext:2] GotoIf("Local/903@from-internal-b569;2", "0?200:300") in new stack
    -- Goto (macro-get-vmcontext,s,300)
    -- Executing [s@macro-get-vmcontext:300] NoOp("Local/903@from-internal-b569;2", "") in new stack
    -- Executing [s-INVALIDARGS@macro-vm:2] VoiceMail("Local/903@from-internal-b569;2", "903@default,su") in new stack
    -- Local/903@from-internal-b569;1 answered DAHDI/28-1

rv*CLI> 
    -- <Local/903@from-internal-b569;2> Playing 'vm-theperson.gsm' (language 'en')

rv*CLI

03/25/10 22:43:08 changed by p_lindheimer

  • status changed from new to closed.
  • resolution set to fixed.

(In [9393]) fixes #4155 THISPART variable in zap2dahdi clobbering same variable in dstring routine

04/12/10 17:44:28 changed by bpps

didnt fix the problem

so i deleted the 930 user and recreated it(there is no device)

database show AMPUSER/930
/AMPUSER/930/device                               :    [[BR]]

shows empty

i then loged in from device 915 using *11

again

database show AMPUSER/930
/AMPUSER/930/device                               : &915[[BR]]

and ofcourse i cant call that user i get declind and get sent directly to vm

04/12/10 18:00:06 changed by bpps

looks like user_login_out.agi needs some attention

at row 175 and a few more it only checks for 1.6.1 or 1.6.0 shouldnt it also have 1.6.2 (whats "ge"?)

04/12/10 18:52:44 changed by p_lindheimer

bpps,

ge is 'greater than or equal to'

I'm mid flights at the airport, so if I'm jumping the gun on this comment, my apologies. From my memory, the issue in this bug was fixed by the above. It sounds like there may be another issue. So, assuming I am right, please open a new ticket with your issue and supporting data to look into it. I recall pretty well after looking through your stuff that the bug in the above examples was that the zap2dahdi subroutine was clobbering the dstring subroutine because it was using the same variable. With the above change, that issue should be fixed and if properly logged onto a device, the code should work.

If this really is the same issue and I missed something in the fix, then we can just reopen this bug.

04/12/10 19:04:35 changed by bpps

Well the bug is still there I was just away for the holidays so I didn't have time to test

04/13/10 22:56:46 changed by p_lindheimer

  • status changed from closed to reopened.
  • resolution deleted.

04/13/10 22:57:25 changed by p_lindheimer

(In [9501]) I think this is the issue, can you please test and give feedback, re #4212 and re #4155

04/14/10 09:22:48 changed by bpps

still no joy

scenario

* user 930 is a virtual extension * databse shows /AMPUSER/930/device : * calls to 930 fail congestion * device 825 logges in to user 930 using *11 * database shows /AMPUSER/930/device : &825 * calls to user 930 fail and dont even go to voicemail * log

[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [930@from-internal:1] Macro("SIP/825-0000059f", "exten-vm,930,930") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-exten-vm:1] Macro("SIP/825-0000059f", "user-callerid,") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-user-callerid:1] Set("SIP/825-0000059f", "AMPUSER=825") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-user-callerid:2] GotoIf("SIP/825-0000059f", "0?report") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-user-callerid:3] ExecIf("SIP/825-0000059f", "1?Set(REALCALLERIDNUM=825)") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-user-callerid:4] Set("SIP/825-0000059f", "AMPUSER=825") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-user-callerid:5] Set("SIP/825-0000059f", "AMPUSERCIDNAME=NAFTALI-BAYIT") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-user-callerid:6] GotoIf("SIP/825-0000059f", "0?report") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-user-callerid:7] Set("SIP/825-0000059f", "AMPUSERCID=825") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-user-callerid:8] Set("SIP/825-0000059f", "CALLERID(all)="NAFTALI-BAYIT" <825>") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-user-callerid:9] ExecIf("SIP/825-0000059f", "0?Set(CHANNEL(language)=)") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-user-callerid:10] GotoIf("SIP/825-0000059f", "0?continue") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-user-callerid:11] Set("SIP/825-0000059f", "__TTL=64") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-user-callerid:12] GotoIf("SIP/825-0000059f", "1?continue") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Goto (macro-user-callerid,s,19)
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-user-callerid:19] NoOp("SIP/825-0000059f", "Using CallerID "NAFTALI-BAYIT" <825>") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-exten-vm:2] Set("SIP/825-0000059f", "RingGroupMethod=none") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-exten-vm:3] Set("SIP/825-0000059f", "VMBOX=930") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-exten-vm:4] Set("SIP/825-0000059f", "__EXTTOCALL=930") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-exten-vm:5] Set("SIP/825-0000059f", "CFUEXT=") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-exten-vm:6] Set("SIP/825-0000059f", "CFBEXT=") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-exten-vm:7] Set("SIP/825-0000059f", "RT=30") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-exten-vm:8] Macro("SIP/825-0000059f", "record-enable,930,IN") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-record-enable:1] GotoIf("SIP/825-0000059f", "1?check") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Goto (macro-record-enable,s,4)
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-record-enable:4] ExecIf("SIP/825-0000059f", "0?MacroExit()") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-record-enable:5] GotoIf("SIP/825-0000059f", "0?Group:OUT") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Goto (macro-record-enable,s,15)
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-record-enable:15] GotoIf("SIP/825-0000059f", "1?IN") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Goto (macro-record-enable,s,20)
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-record-enable:20] ExecIf("SIP/825-0000059f", "1?MacroExit()") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-exten-vm:9] Macro("SIP/825-0000059f", "dial-one,30,tr,930") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:1] Set("SIP/825-0000059f", "DEXTEN=930") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:2] Set("SIP/825-0000059f", "DIALSTATUS_CW=") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:3] GosubIf("SIP/825-0000059f", "0?screen,1") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:4] GosubIf("SIP/825-0000059f", "0?cf,1") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:5] GotoIf("SIP/825-0000059f", "1?skip1") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Goto (macro-dial-one,s,8)
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:8] GotoIf("SIP/825-0000059f", "0?nodial") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:9] GotoIf("SIP/825-0000059f", "0?continue") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:10] Set("SIP/825-0000059f", "EXTHASCW=ENABLED") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:11] GotoIf("SIP/825-0000059f", "0?next1:cwinusebusy") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Goto (macro-dial-one,s,23)
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:23] GotoIf("SIP/825-0000059f", "1?next3:continue") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Goto (macro-dial-one,s,24)
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:24] ExecIf("SIP/825-0000059f", "0?Set(DIALSTATUS_CW=BUSY)") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:25] GotoIf("SIP/825-0000059f", "0?nodial") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:26] GosubIf("SIP/825-0000059f", "1?dstring,1:dlocal,1") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [dstring@macro-dial-one:1] Set("SIP/825-0000059f", "DSTRING=") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [dstring@macro-dial-one:2] Set("SIP/825-0000059f", "DEVICES=") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [dstring@macro-dial-one:3] ExecIf("SIP/825-0000059f", "1?Return()") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:27] GotoIf("SIP/825-0000059f", "1?skiptrace") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Goto (macro-dial-one,s,29)
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:29] Set("SIP/825-0000059f", "D_OPTIONS=tr") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:30] ExecIf("SIP/825-0000059f", "0?SIPAddHeader(Alert-Info: )") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:31] ExecIf("SIP/825-0000059f", "0?SIPAddHeader()") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:32] ExecIf("SIP/825-0000059f", "0?SetMusicOnHold()") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:33] GosubIf("SIP/825-0000059f", "0?qwait,1") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:34] Set("SIP/825-0000059f", "__CWIGNORE=") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:35] Set("SIP/825-0000059f", "__KEEPCID=TRUE") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-dial-one:36] Dial("SIP/825-0000059f", ",30,tr") in new stack
[Apr 14 16:00:30] WARNING[2289] app_dial.c: Dial requires an argument (technology/number)
[Apr 14 16:00:30] VERBOSE[2289] app_macro.c: == Spawn extension (macro-dial-one, s, 36) exited non-zero on 'SIP/825-0000059f' in macro 'dial-one'
[Apr 14 16:00:30] VERBOSE[2289] app_macro.c: == Spawn extension (macro-exten-vm, s, 9) exited non-zero on 'SIP/825-0000059f' in macro 'exten-vm'
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: == Spawn extension (from-internal, 930, 1) exited non-zero on 'SIP/825-0000059f'
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [h@from-internal:1] Macro("SIP/825-0000059f", "hangupcall") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-hangupcall:1] GotoIf("SIP/825-0000059f", "1?skiprg") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Goto (macro-hangupcall,s,4)
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-hangupcall:4] GotoIf("SIP/825-0000059f", "1?skipblkvm") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Goto (macro-hangupcall,s,7)
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-hangupcall:7] GotoIf("SIP/825-0000059f", "1?theend") in new stack
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Goto (macro-hangupcall,s,9)
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: -- Executing [s@macro-hangupcall:9] Hangup("SIP/825-0000059f", "") in new stack
[Apr 14 16:00:30] VERBOSE[2289] app_macro.c: == Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'SIP/825-0000059f' in macro 'hangupcall'
[Apr 14 16:00:30] VERBOSE[2289] pbx.c: == Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/825-0000059f'}}}

04/14/10 09:23:43 changed by bpps

sorry but i tried to do some wiki formatting and didnt work

04/14/10 10:16:08 changed by p_lindheimer

You need at least one space before each "*" for the wiki formatting :)

  • user 930 is a virtual extension
  • databse shows /AMPUSER/930/device :
  • calls to 930 fail congestion
  • device 825 logges in to user 930 using *11
  • database shows /AMPUSER/930/device : &825
  • calls to user 930 fail and dont even go to voicemail
  • log

04/14/10 20:35:19 changed by p_lindheimer

  • confirmation changed from Need Feedback to Need testing.

bpps,

can you try the following patch. I think a bogus '&' is getting introduced into the AMPUSER/nnn/device field that is breaking the dialplan.

Index: user_login_out.agi
===================================================================
--- user_login_out.agi	(revision 9500)
+++ user_login_out.agi	(working copy)
@@ -329,7 +329,7 @@
 			$device_arr = explode('&',$devices);
 			$device_arr[] = $new_device;
 			$device_arr = array_unique($device_arr);
-			return implode('&',$device_arr);
+			return trim(implode('&',$device_arr),'&');
 		} else {
 			return $devices;
 		}

They key in testing this is to make sure that your entry for:

AMPUSER/930/device

does not look like "&915" but like "915". You will probably have to logout and back into the device to get it cleaned up.

04/15/10 05:27:38 changed by bpps

Ok we are getting there

that patch fixes the & problem and when logged in rings the phone but when logged out and i call the extension i get decliend

[Apr 15 12:09:57] VERBOSE[6041] res_agi.c: -- user_login_out.agi,logout,915: Finished processing members for 3122
[Apr 15 12:09:57] VERBOSE[6041] res_agi.c: -- user_login_out.agi,logout,915: Finished sorting
[Apr 15 12:09:57] VERBOSE[6041] res_agi.c: -- user_login_out.agi,logout,915: Agent is 
[Apr 15 12:09:57] ERROR[6041] pbx.c: Function DEVSTATE not registered
[Apr 15 12:09:57] VERBOSE[6041] res_agi.c: -- user_login_out.agi,logout,915: Agent is 
[Apr 15 12:09:57] ERROR[6041] pbx.c: Function DEVSTATE not registered
[Apr 15 12:09:57] VERBOSE[6041] res_agi.c: -- user_login_out.agi,logout,915: Agent is 
[Apr 15 12:09:57] ERROR[6041] pbx.c: Function DEVSTATE not registered
[Apr 15 12:09:57] VERBOSE[6041] res_agi.c: -- user_login_out.agi,logout,915: Agent is 
[Apr 15 12:09:57] ERROR[6041] pbx.c: Function DEVSTATE not registered
[Apr 15 12:09:57] VERBOSE[6041] res_agi.c: -- user_login_out.agi,logout,915: Agent is 
[Apr 15 12:09:57] ERROR[6041] pbx.c: Function DEVSTATE not registered
[Apr 15 12:09:57] VERBOSE[6041] res_agi.c: -- user_login_out.agi,logout,915: Agent is 
[Apr 15 12:09:57] ERROR[6041] pbx.c: Function DEVSTATE not registered
[Apr 15 12:09:57] VERBOSE[6041] res_agi.c: > user_login_out.agi,logout,915: Setting device 915 DND state to INVALID before deleting
[Apr 15 12:09:57] ERROR[6041] func_devstate.c: DEVICE_STATE function given invalid state value 'UNKNOWN'
[Apr 15 12:09:57] VERBOSE[6041] res_agi.c: > user_login_out.agi,logout,915: Setting device 915 CF state to INVALID before deleting
[Apr 15 12:09:57] ERROR[6041] func_devstate.c: DEVICE_STATE function given invalid state value 'UNKNOWN'

this what happens when called

[Apr 15 12:26:20] VERBOSE[6149] pbx.c: -- Executing [s@macro-dial-one:35] Set("SIP/915-0000079c", "__KEEPCID=TRUE") in new stack
[Apr 15 12:26:20] VERBOSE[6149] pbx.c: -- Executing [s@macro-dial-one:36] Dial("SIP/915-0000079c", ",30,tr") in new stack
[Apr 15 12:26:20] WARNING[6149] app_dial.c: Dial requires an argument (technology/number)
[Apr 15 12:26:20] VERBOSE[6149] app_macro.c: == Spawn extension (macro-dial-one, s, 36) exited non-zero on 'SIP/915-0000079c' in macro 'dial-one'
[Apr 15 12:26:20] VERBOSE[6149] app_macro.c: == Spawn extension (macro-exten-vm, s, 9) exited non-zero on 'SIP/915-0000079c' in macro 'exten-vm'

04/15/10 13:51:21 changed by p_lindheimer

the log doesn't help to see why when logged out you are functioning properly, but it does show something is wrong. Can you determine where those failed calls to the non-existent function DEVSTATE() are coming from:

[Apr 15 12:09:57] ERROR[6041] pbx.c: Function DEVSTATE not registered

The DEVSTATE should not be coming from user_login_logout.agi but it almost looks like it is. The logic in that function sets it once and used the variable through-out so???

As far as the UNKNOWN, can you check what the value of the astdb variable associated with that setting is upon the failure being reported (if you know where to find that), as there is some history why we are setting the DEVDND (and now DEVCF) to UNKNOWN vs. something like NOT_INUSE so I would like to see if the complaints are resulting in it not being set at all in which case we need to change that.

04/15/10 15:07:53 changed by bpps

ok its only from the user_login_logout.agi also at login and also at logout it trows the devstate error.
The astdb value after the set shows as NOT_INUSE for both.

here is the cli output of extension 930 when not logged in from a device it should go to VM but instead just hangs up

-- Executing [930@disa-dial:2] Dial("DAHDI/29-1", "Local/930@from-internal,300,Hg") in new stack
    -- Called 930@from-internal
    -- Executing [930@from-internal:1] Macro("Local/930@from-internal-6ac3;2", "exten-vm,930,930") in new stack
    -- Executing [s@macro-exten-vm:1] Macro("Local/930@from-internal-6ac3;2", "user-callerid,") in new stack
    -- Executing [s@macro-user-callerid:1] Set("Local/930@from-internal-6ac3;2", "AMPUSER=") in new stack
    -- Executing [s@macro-user-callerid:2] GotoIf("Local/930@from-internal-6ac3;2", "1?report") in new stack
    -- Goto (macro-user-callerid,s,10)
    -- Executing [s@macro-user-callerid:10] GotoIf("Local/930@from-internal-6ac3;2", "0?continue") in new stack
    -- Executing [s@macro-user-callerid:11] Set("Local/930@from-internal-6ac3;2", "__TTL=64") in new stack
    -- Executing [s@macro-user-callerid:12] GotoIf("Local/930@from-internal-6ac3;2", "1?continue") in new stack
    -- Goto (macro-user-callerid,s,19)
    -- Executing [s@macro-user-callerid:19] NoOp("Local/930@from-internal-6ac3;2", "Using CallerID "" <>") in new stack
    -- Executing [s@macro-exten-vm:2] Set("Local/930@from-internal-6ac3;2", "RingGroupMethod=none") in new stack
    -- Executing [s@macro-exten-vm:3] Set("Local/930@from-internal-6ac3;2", "VMBOX=930") in new stack
    -- Executing [s@macro-exten-vm:4] Set("Local/930@from-internal-6ac3;2", "__EXTTOCALL=930") in new stack
    -- Executing [s@macro-exten-vm:5] Set("Local/930@from-internal-6ac3;2", "CFUEXT=") in new stack
    -- Executing [s@macro-exten-vm:6] Set("Local/930@from-internal-6ac3;2", "CFBEXT=") in new stack
    -- Executing [s@macro-exten-vm:7] Set("Local/930@from-internal-6ac3;2", "RT=30") in new stack
    -- Executing [s@macro-exten-vm:8] Macro("Local/930@from-internal-6ac3;2", "record-enable,930,IN") in new stack
    -- Executing [s@macro-record-enable:1] GotoIf("Local/930@from-internal-6ac3;2", "1?check") in new stack
    -- Goto (macro-record-enable,s,4)
    -- Executing [s@macro-record-enable:4] ExecIf("Local/930@from-internal-6ac3;2", "0?MacroExit()") in new stack
    -- Executing [s@macro-record-enable:5] GotoIf("Local/930@from-internal-6ac3;2", "0?Group:OUT") in new stack
    -- Goto (macro-record-enable,s,15)
    -- Executing [s@macro-record-enable:15] GotoIf("Local/930@from-internal-6ac3;2", "1?IN") in new stack
    -- Goto (macro-record-enable,s,20)
    -- Executing [s@macro-record-enable:20] ExecIf("Local/930@from-internal-6ac3;2", "1?MacroExit()") in new stack
    -- Executing [s@macro-exten-vm:9] Macro("Local/930@from-internal-6ac3;2", "dial-one,30,tr,930") in new stack
    -- Executing [s@macro-dial-one:1] Set("Local/930@from-internal-6ac3;2", "DEXTEN=930") in new stack
    -- Executing [s@macro-dial-one:2] Set("Local/930@from-internal-6ac3;2", "DIALSTATUS_CW=") in new stack
    -- Executing [s@macro-dial-one:3] GosubIf("Local/930@from-internal-6ac3;2", "0?screen,1") in new stack
    -- Executing [s@macro-dial-one:4] GosubIf("Local/930@from-internal-6ac3;2", "0?cf,1") in new stack
    -- Executing [s@macro-dial-one:5] GotoIf("Local/930@from-internal-6ac3;2", "1?skip1") in new stack
    -- Goto (macro-dial-one,s,8)
    -- Executing [s@macro-dial-one:8] GotoIf("Local/930@from-internal-6ac3;2", "0?nodial") in new stack
    -- Executing [s@macro-dial-one:9] GotoIf("Local/930@from-internal-6ac3;2", "0?continue") in new stack
    -- Executing [s@macro-dial-one:10] Set("Local/930@from-internal-6ac3;2", "EXTHASCW=ENABLED") in new stack
    -- Executing [s@macro-dial-one:11] GotoIf("Local/930@from-internal-6ac3;2", "0?next1:cwinusebusy") in new stack
    -- Goto (macro-dial-one,s,23)
    -- Executing [s@macro-dial-one:23] GotoIf("Local/930@from-internal-6ac3;2", "1?next3:continue") in new stack
    -- Goto (macro-dial-one,s,24)
    -- Executing [s@macro-dial-one:24] ExecIf("Local/930@from-internal-6ac3;2", "0?Set(DIALSTATUS_CW=BUSY)") in new stack
    -- Executing [s@macro-dial-one:25] GotoIf("Local/930@from-internal-6ac3;2", "0?nodial") in new stack
    -- Executing [s@macro-dial-one:26] GosubIf("Local/930@from-internal-6ac3;2", "1?dstring,1:dlocal,1") in new stack
    -- Executing [dstring@macro-dial-one:1] Set("Local/930@from-internal-6ac3;2", "DSTRING=") in new stack
    -- Executing [dstring@macro-dial-one:2] Set("Local/930@from-internal-6ac3;2", "DEVICES=") in new stack
    -- Executing [dstring@macro-dial-one:3] ExecIf("Local/930@from-internal-6ac3;2", "1?Return()") in new stack
    -- Executing [s@macro-dial-one:27] GotoIf("Local/930@from-internal-6ac3;2", "1?skiptrace") in new stack
    -- Goto (macro-dial-one,s,29)
    -- Executing [s@macro-dial-one:29] Set("Local/930@from-internal-6ac3;2", "D_OPTIONS=tr") in new stack
    -- Executing [s@macro-dial-one:30] ExecIf("Local/930@from-internal-6ac3;2", "0?SIPAddHeader(Alert-Info: )") in new stack
    -- Executing [s@macro-dial-one:31] ExecIf("Local/930@from-internal-6ac3;2", "0?SIPAddHeader()") in new stack
    -- Executing [s@macro-dial-one:32] ExecIf("Local/930@from-internal-6ac3;2", "0?SetMusicOnHold()") in new stack
    -- Executing [s@macro-dial-one:33] GosubIf("Local/930@from-internal-6ac3;2", "0?qwait,1") in new stack
    -- Executing [s@macro-dial-one:34] Set("Local/930@from-internal-6ac3;2", "__CWIGNORE=") in new stack
    -- Executing [s@macro-dial-one:35] Set("Local/930@from-internal-6ac3;2", "__KEEPCID=TRUE") in new stack
    -- Executing [s@macro-dial-one:36] Dial("Local/930@from-internal-6ac3;2", ",30,tr") in new stack
  == Spawn extension (macro-dial-one, s, 36) exited non-zero on 'Local/930@from-internal-6ac3;2' in macro 'dial-one'
  == Spawn extension (macro-exten-vm, s, 9) exited non-zero on 'Local/930@from-internal-6ac3;2' in macro 'exten-vm'
  == Spawn extension (from-internal, 930, 1) exited non-zero on 'Local/930@from-internal-6ac3;2'
    -- Executing [h@from-internal:1] Macro("Local/930@from-internal-6ac3;2", "hangupcall") in new stack
    -- Executing [s@macro-hangupcall:1] GotoIf("Local/930@from-internal-6ac3;2", "1?skiprg") in new stack
    -- Goto (macro-hangupcall,s,4)
    -- Executing [s@macro-hangupcall:4] GotoIf("Local/930@from-internal-6ac3;2", "1?skipblkvm") in new stack
    -- Goto (macro-hangupcall,s,7)
    -- Executing [s@macro-hangupcall:7] GotoIf("Local/930@from-internal-6ac3;2", "1?theend") in new stack
    -- Goto (macro-hangupcall,s,9)
    -- Executing [s@macro-hangupcall:9] Hangup("Local/930@from-internal-6ac3;2", "") in new stack
  == Spawn extension (macro-hangupcall, s, 9) exited non-zero on 'Local/930@from-internal-6ac3;2' in macro 'hangupcall'
  == Spawn extension (from-internal, h, 1) exited non-zero on 'Local/930@from-internal-6ac3;2'

and the log as above complains about the dial command

this is extension /device 915 trying to call extension 930 something is funny in the dial string

[Apr 15 12:26:20] VERBOSE[6149] pbx.c: -- Executing [s@macro-dial-one:36] Dial("SIP/915-0000079c", ",30,tr") in new stack
[Apr 15 12:26:20] WARNING[6149] app_dial.c: Dial requires an argument (technology/number)

04/15/10 15:16:20 changed by p_lindheimer

(In [9507]) remove stray & and fix hardcoded DEVSTATE re #4155

04/15/10 15:27:59 changed by p_lindheimer

(In [9508]) fixes failed call to user with no device logged in, please test and confirm if this fixes the issue re #4155

04/15/10 15:33:49 changed by p_lindheimer

  • description changed.

bpps,

the first fix should address the DEVSTATE error, you will still get warnings about the UNKNOWN state. I don't think they are hurting anything but if you would, could you file a separate bug against those warnings so that we don't forget to look into them.

The other fix I hope addresses your failed called which comes from:

    -- Executing [s@macro-dial-one:36] Dial("Local/930@from-internal-6ac3;2", ",30,tr") in new stack
  == Spawn extension (macro-dial-one, s, 36) exited non-zero on 'Local/930@from-internal-6ac3;2' in macro 'dial-one'

it should now detect that there is no dial string and go straight to the nodial target. Thanks, I think this might get us over the hump and appreciate your testing.

04/16/10 10:07:40 changed by bpps

ok all's well now I think these changesets fix the bugs.

Thank you very much!

a side note maybe remove the deadagi on ast 1.6 now

[Apr 16 17:01:44] VERBOSE[10835] pbx.c: -- Executing [s@macro-user-logoff:3] DeadAGI("SIP/9907-000000a5", "user_login_out.agi,logout,9907") in new stack
[Apr 16 17:01:44] WARNING[10835] res_agi.c: DeadAGI has been deprecated, please use AGI in all cases!

04/16/10 11:13:33 changed by p_lindheimer

  • status changed from reopened to closed.
  • resolution set to fixed.

bpps,

glad we could flush out all those bugs and thanks for your help on them :-)

on the DeadAGI, as well as those other warnings on the UNKNOWN, if you could file separate bugs for each that would be great as it will help make sure we don't lose track of them.

On this bug, I'll re-close it as it sounds like it's behind us. We'll be pushing out an updated module relatively soon that contains all the change sets.

04/16/10 20:14:17 changed by p_lindheimer

(In [9509]) use AGI instead of DeadAGI as the latter is really no longer needed per comments re #4155

05/15/10 13:02:58 changed by p_lindheimer

(In [9641]) merged back experimental dial-one macro fixes from trunk revisions: 9489,9508,8914,9501,9393,9290 http://svn.freepbx.org/modules/branches/2.8

........

r9393 | p_lindheimer | 2010-03-25 19:43:07 -0700 (Thu, 25 Mar 2010) | 1 line

fixes #4155 THISPART variable in zap2dahdi clobbering same variable in dstring routine

........

r9489 | p_lindheimer | 2010-04-12 10:52:35 -0700 (Mon, 12 Apr 2010) | 1 line

missing closing } re #4205, still need to look at flp-sup issue

........

r9501 | p_lindheimer | 2010-04-13 19:57:25 -0700 (Tue, 13 Apr 2010) | 1 line

I think this is the issue, can you please test and give feedback, re #4212 and re #4155

........

r9508 | p_lindheimer | 2010-04-15 12:27:59 -0700 (Thu, 15 Apr 2010) | 1 line

fixes failed call to user with no device logged in, please test and confirm if this fixes the issue re #4155

........