[asterisk-bugs] [Asterisk 0013606]: variables set in sip.conf using "setvar=VARIABLE_NAME=xxxx" are not honoured when doing a blind transfer

Asterisk Bug Tracker noreply at bugs.digium.com
Fri Oct 3 07:20:32 CDT 2008


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=13606 
====================================================================== 
Reported By:                crjw
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   13606
Category:                   PBX/General
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     new
Asterisk Version:           1.6.0-rc6 
SVN Branch (only for SVN checkouts, not tarball releases): N/A 
SVN Revision (number only!):  
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             2008-10-03 00:23 CDT
Last Modified:              2008-10-03 07:20 CDT
====================================================================== 
Summary:                    variables set in sip.conf using
"setvar=VARIABLE_NAME=xxxx" are not honoured when doing a blind transfer
Description: 
sip.conf allows variables to be defined for each phone using the format:
setvar=VARIABLE_NAME=xxxx  where "xxxx" is some arbitrary value.

Such variables can generally be accessed inside the dialplan.

e.g. in sip.conf
########################
[A](polycom)
setvar=OTHER_EXTENSIONS="SIP/B&SIP/C"
[B](polycom)
setvar=OTHER_EXTENSIONS="SIP/A&SIP/C"
[C](polycom)
setvar=OTHER_EXTENSIONS="SIP/A&SIP/B"
#######################################

In my dial plan I have an extension (900) which dials
"${OTHER_EXTENSIONS}". All the extensions except the one I am dialing from
will ring.  It works well for regular dialing or for attended transfers.

But, If I attempt a blind transfer to extension 900 the value of
$OTHER_EXTENSIONS is NULL and the transfer fails.

It gets a little more complicated:
If I do a blind transfer after doing any number of attended transfers, the
$OTHER_EXTENSIONS variable is non-null; but it does not contain the proper
settings for the phone doing the blind transfer; it contains the settings
for the last phone that did an attended transfer.

====================================================================== 

---------------------------------------------------------------------- 
 (0093106) jsmith (manager) - 2008-10-03 07:20
 http://bugs.digium.com/view.php?id=13606#c93106 
---------------------------------------------------------------------- 
This could easily be a variable inheritance issue.

Have you tried either:

setvar=_VARNAME=xxx  (notice the underscore)
 or
setvar=__VARNAME=xxx  (two underscores)

The single underscore denotes that this variable should be inherited by
any derivative channels from this original channel, and the double
underscore indicates that the variable can be inherited by any derivative
channel at any depth.

Please try those two and then come back and report whether or not they
worked for you. 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2008-10-03 07:20 jsmith         Note Added: 0093106                          
======================================================================




More information about the asterisk-bugs mailing list