<div dir="ltr">Reading the mod_sofia.c code further it appears the case statement for SWITCH_EVENT_NOTIFY is not setting the destination with the necessary route header as done elsewhere.  Other events appear to use the following logic:<div>dst = sofia_glue_get_destination((char *) contact_uri);<br><br>if (dst->route_uri) {<br>   route_uri = sofia_glue_strip_uri(dst->route_uri);<br>}<br></div><div><br></div><div>Can anyone recommend a workaround or comment on my findings?  The sendevent SEND_INFO event appears to simply be missing this route header and the phones do not receive the message.  Ultimately the goal is to be able to send the necessary INFO messages for uaCSTA third party call control for capable devices (most are).</div><div><br></div><div>Thanks,</div><div>Brent Bailey</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Feb 11, 2020 at 1:23 PM Brent Bailey <<a href="mailto:bailey.brent@gmail.com">bailey.brent@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">I am trying to send an INFO message via ESL but I am having trouble.  It looks like the logic in mod_sofia.c doesn't support external devices behind nat.  When I generate the event via ESL as shown below the SIP INFO message has a to-uri with the private nat ip address and the message never reaches the phone.<div>Is there a better way to sent CSTA INFO based messages or is there another way to hand craft SIP messages via ESL?  </div><div>Using sendevent NOTIFY will properly build the SIP message but since it isn't the rfc dictated INFO message it will not work (strangely enough the NOTIFY message is being used for CSTA messages for sendevent SWITCH_EVENT_PHONE_FEATURE).</div><div><br><div><br></div><div>See mod_sofia.c at line 5699 for <span style="color:rgb(36,41,46);font-family:SFMono-Regular,Consolas,"Liberation Mono",Menlo,monospace;font-size:12px;white-space:pre-wrap">SWITCH_EVENT_SEND_INFO</span>: </div><div><a href="https://github.com/signalwire/freeswitch/blob/v1.10/src/mod/endpoints/mod_sofia/mod_sofia.c" target="_blank">https://github.com/signalwire/freeswitch/blob/v1.10/src/mod/endpoints/mod_sofia/mod_sofia.c</a>  <br><div><br></div><div><br></div><div>sendevent SEND_INFO<br>profile: internal<br>from-uri: sip:1003@labDomain.com<br>to-uri: sip:1003@labDomain.com<br>local-user: 1003@labDomain.com<br>content-type: application/csta+xml<br>Content-Disposition: signal;handling=required<br>content-length: 275<br><br><?xml version="1.0" encoding="UTF-8"?><MakeCall xmlns="<a href="http://www.ecma-international.org/standards/ecma-323/csta/ed3" target="_blank">http://www.ecma-international.org/standards/ecma-323/csta/ed3</a>"><callingDevice>sip:1003@labDomain.com</callingDevice><calledDirectoryNumber>1016</calledDirectoryNumber><autoOriginate>doNotPrompt</autoOriginate></MakeCall><br></div></div></div><div><br></div><div>Thank you.</div><div>Brent Bailey</div><div><br></div></div>
</blockquote></div>