Hi guys,<div><br></div><div>In a nut shell, it appears that when attempting to perform a blind transfer under certain conditions (explained below), mod_xml_curl does not expose the originating domain in a clean format.</div>
<div><div><br></div><div><div>My initial plan was to find the point where these variable were being generated, look at what was available, then add an extra variable for the domain and submit a patch.</div></div><div><br>
</div><div>Sadly my C isn&#39;t great and I hit a brick wall, so if anyone can help out, I will ensure the mod_xml_curl documentation is updated and/or assist with any patching/testing required.</div><div><div><br></div></div>
<div>Please take the following scenario;</div><div><br></div><div>* Extension 2000 calls an external number via a gateway (i.e. bridge sofia/gateway/name/e164_number_here).</div><div>* Call connects fine, audio stays good, no disconnection problems etc.</div>
<div>* Call is blind transferred to another extension</div><div><br></div><div>As a result, the following is determined;</div><div><br></div><div>* User initiating the blind transfer is 2000</div><div>* Domain initiating the blind transfer is <a href="http://c1881.voiceflare.co.uk">c1881.voiceflare.co.uk</a></div>
<div>* Destination number of the call is 447866123456</div><div>* Number to blind transfer to is 2001</div><div>* Call to mod_xml_curl is made</div><div><br></div><div>It makes reference to the User in the following &#39;clean&#39; variables (by clean, I mean variables that just contain 2000 and don&#39;t require mangling to extract the info);</div>
<div><br></div><div><div> u&#39;Caller-ANI&#39;: u&#39;2000&#39;,</div></div><div><div> u&#39;Caller-Username&#39;: u&#39;2000&#39;,</div></div><div><div> u&#39;Caller-Caller-ID-Number&#39;: u&#39;2000&#39;,</div></div><div>
<div> u&#39;Hunt-ANI&#39;: u&#39;2000&#39;,</div></div><div><div> u&#39;Hunt-Caller-ID-Number&#39;: u&#39;2000&#39;,</div></div><div><div> u&#39;Hunt-Username&#39;: u&#39;2000&#39;,</div></div><div><div> u&#39;variable_last_sent_callee_id_number&#39;: u&#39;2000&#39;,</div>
</div><div><div><div> u&#39;variable_sip_from_user&#39;: u&#39;2000&#39;,</div><div></div></div><div><br></div><div>It also has the User in the following unclean variables;</div><div><br></div><div> u&#39;variable_bridge_channel&#39;: u&#39;sofia/external/<a href="http://2000@c1881.voiceflare.co.uk:5060">2000@c1881.voiceflare.co.uk:5060</a>&#39;,</div>
<div></div></div><div><div> u&#39;variable_sip_from_uri&#39;: <a href="mailto:u%272000@89.238.182.137">u&#39;2000@89.238.182.137</a>&#39;,</div><div> u&#39;variable_sip_full_from&#39;: u&#39;&quot;foxx&quot; &lt;<a href="mailto:sip%3A2000@89.238.182.137">sip:2000@89.238.182.137</a>&gt;;tag=XryjFQp3rB2NF&#39;,</div>
</div><div><div> u&#39;variable_sip_h_Referred-By&#39;: u&#39;&quot;foxx&quot; &lt;<a href="http://sip:2000@c1881.voiceflare.co.uk:5060">sip:2000@c1881.voiceflare.co.uk:5060</a>&gt;&#39;,</div></div><div><br></div><div>However, it only references the domain in the following unclean variables;</div>
<div><br></div><div> u&#39;variable_bridge_channel&#39;: u&#39;sofia/external/<a href="http://2000@c1881.voiceflare.co.uk:5060">2000@c1881.voiceflare.co.uk:5060</a>&#39;,</div><div> u&#39;variable_sip_h_Referred-By&#39;: u&#39;&quot;foxx&quot; &lt;<a href="http://sip:2000@c1881.voiceflare.co.uk:5060">sip:2000@c1881.voiceflare.co.uk:5060</a>&gt;&#39;,</div>
<div> u&#39;variable_sip_refer_to&#39;: u&#39;&lt;<a href="http://sip:2001@c1881.voiceflare.co.uk:5060">sip:2001@c1881.voiceflare.co.uk:5060</a>&gt;&#39;,</div><div><br></div><div>Lets say that we want to determine the user/domain that has initiated this transfer, doing so would mean mangling with one of those above variables, which seems a bit dirty (plus it is not clear which is the correct one to use).</div>
<div><br></div><div>I have attached the SIP trace of the entire blind transfer event, and the full mod_xml_curl request being sent.</div><div><br></div><div><div>If anyone could answer the following, it&#39;d be much appreciated;</div>
<div><br></div><div>* Should there be an improvement patch that exposes the domain of the user that originated the blind transfer?</div><div>* Are there better/alternative ways to extracting the domain of the user that originated the blind transfer?</div>
</div><div><br></div><div>Many thanks</div><div><br>Cal</div><div><br></div></div>