Distinguishing Blind REFER from application transfer
Hello, I'm using mod_xml_curl to provide dialplan. In my application, I need to differentiate if a call has entered the dialplan again due to uuid_transfer or due to Blind Transfer. I know I can recognize a Blind Transfer by checking variable_sip_h_Referred-By and variable_sip_refer_to. However, these variables are not cleaned up when the call reenters the dialplan due to application transfer or uuid_transfer. I realize I can differentiate them by adding some prefix like this: uuid_transfer TRANSFER,DestinationNumber XML default Or it is my responsibility to call application set or uuid_setvar to unset the variable(s) in this case? it seems to me the bad thing here would be to have to add lots of preventive <action application="set" data="sip_refer_to=" /> in my dialplan. Before doing so I thought in ask if the REFER-related variables being preserved upon dialplan reentry would not be a bug (well, it could be a feature useful in some scenarios I suspect). br, takeshi
Have you done a uuid_dump to see all the variables? /b On Jan 22, 2010, at 5:22 AM, mayamatakeshi wrote:
Before doing so I thought in ask if the REFER-related variables being preserved upon dialplan reentry would not be a bug (well, it could be a feature useful in some scenarios I suspect).
On Fri, Jan 22, 2010 at 11:17 PM, Brian West <brian@freeswitch.org> wrote:
Have you done a uuid_dump to see all the variables?
I just tried that with trunk. I can see the REFER variables stay set till the end of the call. They will show up in CHANNEL_HANGUP_COMPLETE: variable_sip_h_Referred-By: user2 <sip:user2@test1.com<sip%3Auser2@test1.com>
variable_sip_refer_to: <sip:2000@test1.com <sip%3A2000@test1.com>> I suppose the only thing that will change them is another blind refer. But they will never be unset.
On Jan 22, 2010, at 5:22 AM, mayamatakeshi wrote:
Before doing so I thought in ask if the REFER-related variables being preserved upon dialplan reentry would not be a bug (well, it could be a feature useful in some scenarios I suspect).
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
I think they are intended to be there as long as you want them to be, up until they can be used in the cdr modules. If you are looking for this much control, you would have to set them off to other vars, use some scripting language to manipulate, or use some socket based control mechanism. Mike On Jan 22, 2010, at 10:47 AM, mayamatakeshi wrote:
On Fri, Jan 22, 2010 at 11:17 PM, Brian West <brian@freeswitch.org> wrote: Have you done a uuid_dump to see all the variables?
I just tried that with trunk. I can see the REFER variables stay set till the end of the call. They will show up in CHANNEL_HANGUP_COMPLETE:
variable_sip_h_Referred-By: user2 <sip:user2@test1.com> variable_sip_refer_to: <sip:2000@test1.com>
I suppose the only thing that will change them is another blind refer. But they will never be unset.
On Jan 22, 2010, at 5:22 AM, mayamatakeshi wrote:
Before doing so I thought in ask if the REFER-related variables being preserved upon dialplan reentry would not be a bug (well, it could be a feature useful in some scenarios I suspect).
participants (3)
-
Brian West
-
mayamatakeshi
-
Michael Jerris