<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/2703/">https://reviewboard.asterisk.org/r/2703/</a>
     </td>
    </tr>
   </table>
   <br />





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On July 30th, 2013, 4:24 a.m. UTC, <b>Russell Bryant</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;">How does distributed device state work after this change?</pre>
 </blockquote>




 <p>On July 30th, 2013, 4:30 a.m. UTC, <b>Russell Bryant</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;">Ah, I see how res_xmpp works now, but not res_corosync.  Presumably this change breaks that module?</pre>
 </blockquote>





 <p>On July 30th, 2013, 11:53 a.m. UTC, <b>opticron</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;">res_corosync has been broken for a while now because nothing publishes to the event system anymore. res_corosync refactoring was put on hold until all the event types it depended on were refactored to Stasis because mixing Stasis subscriptions and event system subscriptions wasn&#39;t going to be easy given the architecture of res_corosync. The patch in this code review presents an additional problem to getting res_corosync up and running again. Unless it internalizes a significant chunk of the old event system code, it will not be able to communicate with older versions of Asterisk. One suggestion has been to break compatibility and use JSON blobs to transmit state.</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;">I think json blobs based on the info from the new system sounds like a reasonable approach.  Thanks for the info!</pre>
<br />










<p>- Russell</p>


<br />
<p>On July 26th, 2013, 2:48 p.m. UTC, opticron wrote:</p>








<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('https://reviewboard.asterisk.org/static/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 opticron.</div>


<p style="color: grey;"><i>Updated July 26, 2013, 2:48 p.m.</i></p>







<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-22139">ASTERISK-22139</a>


</div>



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


<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;">This removes unused code, event types, IE pltypes, and event IE types where possible and makes several functions private that were once public. This includes a renumbering of the remaining event and IE types which breaks binary compatibility with previous versions. The last remaining consumers of the old event system (or parts thereof) are main/security_events.c, res/res_security_log.c, tests/test_cel.c, tests/test_event.c, main/cel.c, and the CEL backends.</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;">Made sure that CEL and event system unit tests still pass.</pre>
  </td>
 </tr>
</table>


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

 <li>trunk/apps/app_queue.c <span style="color: grey">(395498)</span></li>

 <li>trunk/apps/app_voicemail.c <span style="color: grey">(395498)</span></li>

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

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

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

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

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

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

 <li>trunk/channels/sig_pri.h <span style="color: grey">(395498)</span></li>

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

 <li>trunk/funcs/func_presencestate.c <span style="color: grey">(395498)</span></li>

 <li>trunk/include/asterisk/devicestate.h <span style="color: grey">(395498)</span></li>

 <li>trunk/include/asterisk/event.h <span style="color: grey">(395498)</span></li>

 <li>trunk/include/asterisk/event_defs.h <span style="color: grey">(395498)</span></li>

 <li>trunk/include/asterisk/security_events_defs.h <span style="color: grey">(395498)</span></li>

 <li>trunk/main/ccss.c <span style="color: grey">(395498)</span></li>

 <li>trunk/main/devicestate.c <span style="color: grey">(395498)</span></li>

 <li>trunk/main/event.c <span style="color: grey">(395498)</span></li>

 <li>trunk/main/manager.c <span style="color: grey">(395498)</span></li>

 <li>trunk/main/pbx.c <span style="color: grey">(395498)</span></li>

 <li>trunk/main/presencestate.c <span style="color: grey">(395498)</span></li>

 <li>trunk/main/security_events.c <span style="color: grey">(395498)</span></li>

 <li>trunk/res/parking/parking_applications.c <span style="color: grey">(395498)</span></li>

 <li>trunk/res/parking/parking_manager.c <span style="color: grey">(395498)</span></li>

 <li>trunk/res/parking/parking_ui.c <span style="color: grey">(395498)</span></li>

 <li>trunk/res/res_jabber.c <span style="color: grey">(395498)</span></li>

 <li>trunk/res/res_parking.c <span style="color: grey">(395498)</span></li>

 <li>trunk/res/res_security_log.c <span style="color: grey">(395498)</span></li>

 <li>trunk/res/res_xmpp.c <span style="color: grey">(395498)</span></li>

 <li>trunk/tests/test_cel.c <span style="color: grey">(395498)</span></li>

 <li>trunk/tests/test_event.c <span style="color: grey">(395498)</span></li>

</ul>

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







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








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