<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://reviewboard.asterisk.org/r/2227/">https://reviewboard.asterisk.org/r/2227/</a>
     </td>
    </tr>
   </table>
   <br />





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On December 6th, 2012, 7:22 a.m., <b>Birger Harzenetter</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">I see a number of issues here.

In my experience the numeric SIP response is not always unique.
You may have to check the text as well to find out what exactly happened.

I think it would be a lot easier to use numeric cause codes as well.
Otherwise you need to document all the names as well.
(Are there names for all possible causes?)

(this is a core thing only related to this work)
There&#39;s some ambiguity on the cause side as well as we don&#39;t have the location data available.
I think that should be added to give this effort more meaning.
Some causes can mean quite different things depending on where they come from.
Likewise the sensible way to handle the situation can also vary depending on the location.

There are some translations that don&#39;t make sense to me.
RFC 3398 isn&#39;t the best reference I think (rejected &gt; forbidden or out of order &gt; bad gateway, what gateway?)
But I&#39;ll leave that for later.
</pre>
 </blockquote>







</blockquote>

<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Please read the code again, Birger. The code works exactly like before, with the same mappings. If we&#39;re going to change that, it&#39;s a different patch and review. We follow the RFCs and when they don&#39;t cover it, I used to copy Cisco documentation.

The translation is ONLY based on numeric cause codes, both ways.

Thanks for your feedback.

/O</pre>
<br />








<p>- Olle E</p>


<br />
<p>On December 5th, 2012, 5:34 a.m., Olle E Johansson wrote:</p>






<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('https://reviewboard.asterisk.org/media/rb/images/review_request_box_top_bg.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for Asterisk Developers.</div>
<div>By Olle E Johansson.</div>


<p style="color: grey;"><i>Updated Dec. 5, 2012, 5:34 a.m.</i></p>




<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">The SIP2CAUSE hangup code conversion tables has up to now been hard-coded in Asterisk. In some cases, like when building in-house ISDN/Q.SIG to SIP gateways, there&#39;s a need to manipulate this conversion. 

With this code, advanced users can add a &quot;private&quot; conversion. This is added in front of the built-in conversions.

Asterisk conversion tables does not change in this patch. Everything should work as before. To shrink the chan_sip.c file a small bit I decided to move this functionality into a new source code file.

Adding:
- new source code file sip2cause.c and include file sip2cause.h
- new configuration file sip2cause.conf

Reviewboard doesn&#39;t seem accept the new files, so they have to be found in the branch itself.

http://svn.digium.com/svn/asterisk/team/oej/earl-grey-sip2cause-configurable-trunk

The new files are:
* http://svnview.digium.com/svn/asterisk/team/oej/earl-grey-sip2cause-configurable-trunk/configs/sip2cause.conf.sample
* http://svnview.digium.com/svn/asterisk/team/oej/earl-grey-sip2cause-configurable-trunk/channels/sip/sip2cause.c
* http://svnview.digium.com/svn/asterisk/team/oej/earl-grey-sip2cause-configurable-trunk/channels/sip/include/sip2cause.h


</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Tested all kinds of weird translations. This file should cause some errors (AST_CAUSE_SKREP doesn&#39;t exist, 903 is not a valid SIP reason code etc etc. 

[sip2cause]
604 =&gt; AST_CAUSE_SKREP
404 =&gt; UNALLOCATED
599 Bad =&gt; USER_BUSY
486 =&gt; NORMAL_CLEARING
603 =&gt; UNALLOCATED
        
[cause2sip]
SKREP =&gt; 503 Service Failure
UNALLOCATED =&gt; 903 Go to hell
UNALLOCATED =&gt; 499 I don&#39;t want to do that.
USER_BUSY =&gt; 503 I am not feeling well</pre>
  </td>
 </tr>
</table>



<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Bugs: </b>


 <a href="https://issues.asterisk.org/jira/browse/ASTERISK-20759">ASTERISK-20759</a>


</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>/trunk/channels/chan_sip.c <span style="color: grey">(377205)</span></li>

 <li>/trunk/channels/sip/include/sip_utils.h <span style="color: grey">(377205)</span></li>

</ul>

<p><a href="https://reviewboard.asterisk.org/r/2227/diff/" style="margin-left: 3em;">View Diff</a></p>




  </td>
 </tr>
</table>








  </div>
 </body>
</html>