<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <p>Hello,</p>
    <p>the problem is that the ACK doesn't have in R-URI the address
      from Contact header in 200ok, as required by RFC.</p>
    <p>The R-URI and the Route are both having the IP of Kamailio, so
      there is no other address where to send the ACK.<br>
    </p>
    <p>       ACK <a class="moz-txt-link-freetext" href="sip:10.15.1.30:5060">sip:10.15.1.30:5060</a> SIP/2.0<br>
             *Route: <a class="moz-txt-link-freetext" href="sip:10.15.1.30;lr;ftag=SDkbo9901-42090">sip:10.15.1.30;lr;ftag=SDkbo9901-42090</a><br>
    </p>
    You have to track why the ACK is not coming with R-URI having the
    address from Contact of 200ok. See how 200ok is received by caller
    and how caller's devices sets the R-URI. Might be the sbc or other
    hop breaking it.<br>
    <br>
    If you can't fix the device/application messing up the R-URI for the
    ACK, then you can try some solutions in kamailio:<br>
    <br>
    1) use set_contact_alias() for 18x/200ok responses and then
    handle_ruri_alias() for ACK and other requests within dialog.<br>
    <br>
    if(has_totag() && uri==myself && $ru=~";alias=") {<br>
        handle_ruri_alias();<br>
        if($du != $null) {<br>
           $ru = $du;<br>
        }<br>
    }<br>
    # continue with loose_route(), etc ...<br>
    <br>
    It works if the devices messes up only the host/port of the R-URI in
    ACK, but keeps the other parameters.<br>
    <br>
    2) if 1 doesn't work, use htable to store association between
    callid+from-tag and the contact address of 200ok, then use it for
    requests within dialog that have uri==myself<br>
    <br>
    reply_route {<br>
    ...<br>
      if(is_method("INVITE") && status=="200") {<br>
          $sht(ct=>$ci::$ft) = $sel(contact.uri);<br>
      }<br>
    ...<br>
    }<br>
    <br>
    request_route {<br>
    ...<br>
    if(has_totag() && uri==myself) {<br>
      if($sht(ct=>$ci::$ft) != $null) {<br>
         $ru = $sht(ct=>$ci::$ft);<br>
      }<br>
    }<br>
    # continue with loose_route(), etc ...<br>
    ...<br>
    }<br>
    <br>
    You have to set the auto-expire for htable ct to the maximum
    lifetime for a dialog. You can delete the items from ct hash table
    (or reduce their expire value) when processing the BYE or the
    response to BYE. Note that for bye you have to try the combination
    $ci:$ft as well as $ci:$tt<br>
    <br>
    3) if you have only one asterisk, then if the request has to-tag and
    a route header and uri==myself, then just set $ru to <a class="moz-txt-link-freetext" href="sip:ip:port">sip:ip:port</a> of
    asterisk<br>
    <br>
    Cheers,<br>
    Daniel<br>
    <br>
    <div class="moz-cite-prefix">On 08/06/16 12:18, Francisco Valentin
      Vinagrero wrote:<br>
    </div>
    <blockquote
      cite="mid:D344618A4B7B0F4ABA8047A07E92D474017E0E7305@CERNXCHG52.cern.ch"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      <meta name="Generator" content="Microsoft Word 15 (filtered
        medium)">
      <style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
      <div class="WordSection1">
        <p class="MsoNormal">Hi there,<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">I’m having an issue in a SBC (ACME) ->
          KAMAILIO -> Asterisk scenario with an ACK that gets ignored
          in Kamailio because it does not match any transaction.<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">The INVITE coming from the SBC looks like
          this (only relevant headers and hidden numbers for simplicity
          – SBC has IP .12 , Kamailio .30 and Asterisk .34)<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal" style="margin-left:36.0pt">INVITE
          <a class="moz-txt-link-freetext" href="sip:mynumber@10.15.1.30:5060">sip:mynumber@10.15.1.30:5060</a>
          SIP/2.0                                      
          <o:p></o:p></p>
        <p class="MsoNormal" style="margin-left:36.0pt">Via: SIP/2.0/UDP
10.15.1.12:5060;branch=z9hG4bKdd1m7b00aom47rggc700.1                 
          <o:p></o:p></p>
        <p class="MsoNormal" style="margin-left:36.0pt">To: <a class="moz-txt-link-rfc2396E" href="sip:mynumber@10.15.1.30:5060"><sip:
mynumber@10.15.1.30:5060></a>                                               <o:p></o:p></p>
        <p class="MsoNormal" style="margin-left:36.0pt">From:
<a class="moz-txt-link-rfc2396E" href="sip:a-number@10.15.1.12;user=phone"><sip:a-number@10.15.1.12;user=phone></a>;tag=SDkbo9901-42090                     <o:p></o:p></p>
        <p class="MsoNormal" style="margin-left:36.0pt">P-Asserted-Identity:
          <sip: a-number
          @10.15.1.12>                                     
          <o:p></o:p></p>
        <p class="MsoNormal" style="margin-left:36.0pt">Call-ID:
SDkbo9901-71a1d17456b829b4c422af61de9eee7e-ao32g50                           <o:p></o:p></p>
        <p class="MsoNormal" style="margin-left:36.0pt">CSeq: 1
INVITE                                                                        <o:p></o:p></p>
        <p class="MsoNormal" style="margin-left:36.0pt">Contact:
<a class="moz-txt-link-rfc2396E" href="sip:41754112601@10.15.1.12:5060;transport=udp"><sip:41754112601@10.15.1.12:5060;transport=udp></a>                              <o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">And its forwarded to Asterisk with the
          Record-Route header:<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">        INVITE sip: mynumber
          @10.15.1.30:5060 SIP/2.0<o:p></o:p></p>
        <p class="MsoNormal">        *Record-Route:
          <a class="moz-txt-link-rfc2396E" href="sip:10.15.1.30;lr=on;ftag=SDkbo9901-42090"><sip:10.15.1.30;lr=on;ftag=SDkbo9901-42090></a><o:p></o:p></p>
        <p class="MsoNormal">        *Via: SIP/2.0/UDP
          10.15.1.30;branch=z9hG4bK1c02.7dc1b94be22d8780df5141f9ba3c5b7b.0<o:p></o:p></p>
        <p class="MsoNormal">        Via: SIP/2.0/UDP
          10.15.1.12:5060;branch=z9hG4bKdd1m7b00aom47rggc700.1<o:p></o:p></p>
        <p class="MsoNormal">        To:
          <a class="moz-txt-link-rfc2396E" href="sip:mynumber@10.15.1.30:5060"><sip:mynumber@10.15.1.30:5060></a><o:p></o:p></p>
        <p class="MsoNormal">        From:
          <a class="moz-txt-link-rfc2396E" href="sip:a-number@10.15.1.12;user=phone"><sip:a-number@10.15.1.12;user=phone></a>;tag=SDkbo9901-42090<o:p></o:p></p>
        <p class="MsoNormal">        P-Asserted-Identity:
          <a class="moz-txt-link-rfc2396E" href="sip:a-number@10.15.1.12"><sip:a-number@10.15.1.12></a><o:p></o:p></p>
        <p class="MsoNormal">        Call-ID:
          SDkbo9901-71a1d17456b829b4c422af61de9eee7e-ao32g50<o:p></o:p></p>
        <p class="MsoNormal">        CSeq: 1 INVITE<o:p></o:p></p>
        <p class="MsoNormal"><span lang="FR">        Contact:
            <a class="moz-txt-link-rfc2396E" href="sip:a-number@10.15.1.12:5060;transport=udp"><sip:a-number@10.15.1.12:5060;transport=udp></a><o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="FR">        <o:p></o:p></span></p>
        <p class="MsoNormal"><span lang="FR"><o:p> </o:p></span></p>
        <p class="MsoNormal">Then, 200 OK from Asterisk:<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">        SIP/2.0 200 OK<o:p></o:p></p>
        <p class="MsoNormal">        *Via: SIP/2.0/UDP
10.15.1.30;rport=5060;received=10.15.1.30;branch=z9hG4bK1c02.7dc1b94be22d8780df5141f9ba3c5b7b.0<o:p></o:p></p>
        <p class="MsoNormal">        Via: SIP/2.0/UDP
          10.15.1.12:5060;branch=z9hG4bKdd1m7b00aom47rggc700.1<o:p></o:p></p>
        <p class="MsoNormal">        *Record-Route:
          <a class="moz-txt-link-rfc2396E" href="sip:10.15.1.30;lr;ftag=SDkbo9901-42090"><sip:10.15.1.30;lr;ftag=SDkbo9901-42090></a><o:p></o:p></p>
        <p class="MsoNormal">        Call-ID:
          SDkbo9901-71a1d17456b829b4c422af61de9eee7e-ao32g50<o:p></o:p></p>
        <p class="MsoNormal">        From:
          <a class="moz-txt-link-rfc2396E" href="sip:a-number@10.15.1.12;user=phone"><sip:a-number@10.15.1.12;user=phone></a>;tag=SDkbo9901-42090<o:p></o:p></p>
        <p class="MsoNormal">       To:
          <a class="moz-txt-link-rfc2396E" href="sip:mynumber@10.15.1.30"><sip:mynumber@10.15.1.30></a>;tag=2e3c2071-c895-4069-afc2-37a19b20637a<o:p></o:p></p>
        <p class="MsoNormal">        CSeq: 1 INVITE<o:p></o:p></p>
        <p class="MsoNormal">        Server: Asterisk PBX 13.8.0<o:p></o:p></p>
        <p class="MsoNormal">        Contact:
          <a class="moz-txt-link-rfc2396E" href="sip:10.15.1.34:5060"><sip:10.15.1.34:5060></a><o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Which is sent to the SBC like this:<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">     SIP/2.0 200 OK<o:p></o:p></p>
        <p class="MsoNormal">        Via: SIP/2.0/UDP
          10.15.1.12:5060;branch=z9hG4bKdd1m7b00aom47rggc700.1<o:p></o:p></p>
        <p class="MsoNormal">        *Record-Route:
          <a class="moz-txt-link-rfc2396E" href="sip:10.15.1.30;lr;ftag=SDkbo9901-42090"><sip:10.15.1.30;lr;ftag=SDkbo9901-42090></a><o:p></o:p></p>
        <p class="MsoNormal">        Call-ID:
          SDkbo9901-71a1d17456b829b4c422af61de9eee7e-ao32g50<o:p></o:p></p>
        <p class="MsoNormal">        From:
          <a class="moz-txt-link-rfc2396E" href="sip:a-number@10.15.1.12;user=phone"><sip:a-number@10.15.1.12;user=phone></a>;tag=SDkbo9901-42090<o:p></o:p></p>
        <p class="MsoNormal">        To:
          <a class="moz-txt-link-rfc2396E" href="sip:mynumber@10.15.1.30"><sip:mynumber@10.15.1.30></a>;tag=2e3c2071-c895-4069-afc2-37a19b20637a<o:p></o:p></p>
        <p class="MsoNormal">        CSeq: 1 INVITE<o:p></o:p></p>
        <p class="MsoNormal">        Server: Asterisk PBX 13.8.0<o:p></o:p></p>
        <p class="MsoNormal">        Contact:
          <a class="moz-txt-link-rfc2396E" href="sip:10.15.1.34:5060"><sip:10.15.1.34:5060></a><o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">And finally the SBC sends the ACK:<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">       ACK <a class="moz-txt-link-freetext" href="sip:10.15.1.30:5060">sip:10.15.1.30:5060</a> SIP/2.0<o:p></o:p></p>
        <p class="MsoNormal">        Via: SIP/2.0/UDP
          10.15.1.12:5060;branch=z9hG4bKdt7p9k00dounet8ic600.1<o:p></o:p></p>
        <p class="MsoNormal">        To:
          <a class="moz-txt-link-rfc2396E" href="sip:mynumber@10.15.1.30"><sip:mynumber@10.15.1.30></a>;tag=2e3c2071-c895-4069-afc2-37a19b20637a<o:p></o:p></p>
        <p class="MsoNormal">        From:
          <a class="moz-txt-link-rfc2396E" href="sip:a-number@10.15.1.12;user=phone"><sip:a-number@10.15.1.12;user=phone></a>;tag=SDkbo9901-42090<o:p></o:p></p>
        <p class="MsoNormal">        Call-ID:
          SDkbo9901-71a1d17456b829b4c422af61de9eee7e-ao32g50<o:p></o:p></p>
        <p class="MsoNormal">        CSeq: 1 ACK<o:p></o:p></p>
        <p class="MsoNormal"><span lang="FR">        Contact:
            <a class="moz-txt-link-rfc2396E" href="sip:a-number@10.15.1.12:5060;transport=udp"><sip:a-number@10.15.1.12:5060;transport=udp></a><o:p></o:p></span></p>
        <p class="MsoNormal">         *Route: <a moz-do-not-send="true"
            href="sip:10.15.1.30;lr;ftag=SDkbo9901-42090">
            sip:10.15.1.30;lr;ftag=SDkbo9901-42090</a><o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">The problem: this ACK gets not
          retransmitted to Asterisk<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">At first, I thought it was some sanity
          check but after disabling that I realized that it was in the
          WITHINDLG route.<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">For the incoming ACK I get in the logs:<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Jun  8 11:56:47 tone-0866-fe-2-qa
          /usr/local/sbin/kamailio[53240]: ALERT: <script>: Inside
          LOOSE route for ACK proto=UDP trans=4194304
          from=<a class="moz-txt-link-freetext" href="sip:00754112601@10.15.1.12;user=phone">sip:00754112601@10.15.1.12;user=phone</a>
          route=<a class="moz-txt-link-freetext" href="sip:10.15.1.30;lr;ftag=SDkbo9901-42090">sip:10.15.1.30;lr;ftag=SDkbo9901-42090</a> src_ip=10.15.1.12<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">And once the ACK is ready to be sent to
          Asterisk, the Route header has been removed and no
          Record-Route has been added so it fails.<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Jun  8 11:56:44 tone-0866-fe-2-qa
          /usr/local/sbin/kamailio[53238]: INFO: rr [rr_mod.c:402]:
          <span style="background:yellow;mso-highlight:yellow">pv_get_route_uri_f():
            No route header present.</span><o:p></o:p></p>
        <p class="MsoNormal">Jun  8 11:56:44 tone-0866-fe-2-qa
          /usr/local/sbin/kamailio[53238]: ALERT: <script>: ACK
          does not match transaction!! proto=UDP trans=4194304
          from=<a class="moz-txt-link-freetext" href="sip:00754112601@10.15.1.12;user=phone">sip:00754112601@10.15.1.12;user=phone</a> route=
          src_ip=10.15.1.30<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">My WITHINDLG route looks like this:<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"># Handle requests within SIP
dialogs                                                                                                 <o:p></o:p></p>
        <p class="MsoNormal">route[WITHINDLG]
          {                           
                                                                                        <o:p></o:p></p>
        <p class="MsoNormal">    if (has_totag())
{                                                                                                               <o:p></o:p></p>
        <p class="MsoNormal">        # sequential request withing a
          dialog
should                                                                                 <o:p></o:p></p>
        <p class="MsoNormal">        # take the path determined by
record-routing                                                                                 <o:p></o:p></p>
        <p class="MsoNormal">        if (loose_route())
{                                                                                                         <o:p></o:p></p>
        <p class="MsoNormal">            if (is_method("BYE"))
{                                                                                                  <o:p></o:p></p>
        <p class="MsoNormal">                xlog("L_ALERT","Inside
          LOOSE
route\n");                                                                              <o:p></o:p></p>
        <p class="MsoNormal">                setflag(FLT_ACC); # do
          accounting
...                                                                       
                   <o:p></o:p></p>
        <p class="MsoNormal">                setflag(FLT_ACCFAILED); #
          ... even if the transaction
          fails                                                          
          <o:p></o:p></p>
        <p class="MsoNormal">            }                                                                                                 
                                 <o:p></o:p></p>
        <p class="MsoNormal">            if ( is_method("ACK") )
{                                                                                                <o:p></o:p></p>
        <p class="MsoNormal">                 xlog("L_ALERT","<span
            style="background:yellow;mso-highlight:yellow">Inside LOOSE
            route for ACK</span> proto=$rP trans=$mf from=$fu
          route=$route_uri src_ip=$si \n");           
          <o:p></o:p></p>
        <p class="MsoNormal">                # ACK is forwarded
statelessy                                                                                        <o:p></o:p></p>
        <p class="MsoNormal">                route(NATMANAGE);                                                 
                                                             <o:p></o:p></p>
        <p class="MsoNormal">            }                                                                                                                        
          <o:p></o:p></p>
        <p class="MsoNormal">            route(RELAY);                                           
                                                                 <o:p></o:p></p>
        <p class="MsoNormal">        } else
{                                                                                                                     <o:p></o:p></p>
        <p class="MsoNormal">            if (is_method("SUBSCRIBE")
          && uri == myself)
{                                                                           <o:p></o:p></p>
        <p class="MsoNormal">                # in-dialog subscribe
requests                                                                          
                       <o:p></o:p></p>
        <p class="MsoNormal">                route(PRESENCE);                                                                                                     
          <o:p></o:p></p>
        <p class="MsoNormal">                exit;                                                                                     
                                     <o:p></o:p></p>
        <p class="MsoNormal">            }                                                                                                                        
          <o:p></o:p></p>
        <p class="MsoNormal">            if ( is_method("ACK") )
          {                                                       
                                                   <o:p></o:p></p>
        <p class="MsoNormal">                if ( t_check_trans() )
{                                                                                             <o:p></o:p></p>
        <p class="MsoNormal">                    # no loose-route, but
          stateful ACK;                       
                                                                 <o:p></o:p></p>
        <p class="MsoNormal">                    # must be an ACK after
          a
487                                                                                     <o:p></o:p></p>
        <p class="MsoNormal">                    # or e.g. 404 from
          upstream server          
                                                                               <o:p></o:p></p>
        <p class="MsoNormal">                    t_relay();                                                                                                       
          <o:p></o:p></p>
        <p class="MsoNormal">                    exit;                         
                                                                                   <o:p></o:p></p>
        <p class="MsoNormal">                } else
{                                                                                                             <o:p></o:p></p>
        <p class="MsoNormal">                    # ACK without matching
          transaction ... ignore and
          discard                                                        
          <o:p></o:p></p>
        <p class="MsoNormal">                    xlog("L_ALERT","<span
            style="background:yellow;mso-highlight:yellow">ACK does not
            match transaction</span>!! proto=$rP trans=$mf from=$fu
          route=$route_uri src_ip=$si \n");  
          <o:p></o:p></p>
        <p class="MsoNormal">                        exit;                                                                                                        
          <o:p></o:p></p>
        <p class="MsoNormal">                }                                                                                                                    
          <o:p></o:p></p>
        <p class="MsoNormal">            }                                                                                                                        
          <o:p></o:p></p>
        <p class="MsoNormal">            sl_send_reply("404","Not
here");                                                                                     
              <o:p></o:p></p>
        <p class="MsoNormal">        }                                                                                                                            
          <o:p></o:p></p>
        <p class="MsoNormal">        exit;                                                                                                      
                            <o:p></o:p></p>
        <p class="MsoNormal">    }                                                                                                                                
          <o:p></o:p></p>
        <p class="MsoNormal">}                                                                                                    
                                          <o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Thanks for reading this <span
            style="font-family:Wingdings">
            J</span> Any idea about how to validate the transaction?
          t_check_trans is not being validated…<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Cheers, Francisco.<o:p></o:p></p>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:sr-users@lists.sip-router.org">sr-users@lists.sip-router.org</a>
<a class="moz-txt-link-freetext" href="http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users">http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users</a>
</pre>
    </blockquote>
    <br>
    <pre class="moz-signature" cols="72">-- 
Daniel-Constantin Mierla
<a class="moz-txt-link-freetext" href="http://www.asipto.com">http://www.asipto.com</a> - <a class="moz-txt-link-freetext" href="http://www.kamailio.org">http://www.kamailio.org</a>
<a class="moz-txt-link-freetext" href="http://twitter.com/#!/miconda">http://twitter.com/#!/miconda</a> - <a class="moz-txt-link-freetext" href="http://www.linkedin.com/in/miconda">http://www.linkedin.com/in/miconda</a></pre>
  </body>
</html>