<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#ffffff" text="#000000">
    <tt>Hi Brett,<br>
      <br>
      The events stuff works a bit the other way around - you do not
      decide where to send the event, but the consumer entities
      subscribe to you in order to receive events. So it is not push,
      but pull. The consumer decides (via subscription process) what
      event to receive, for how long and what backend to be used.<br>
      <br>
      Regarding the ACC event, I will add it on the TODO list on 1.9 .<br>
      <br>
      Regards,<br>
    </tt>
    <pre class="moz-signature" cols="72">Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
<a class="moz-txt-link-freetext" href="http://www.opensips-solutions.com">http://www.opensips-solutions.com</a></pre>
    <br>
    On 11/28/2012 04:37 PM, Brett Nemeroff wrote:
    <blockquote
cite="mid:CAPwC5wxx7cffaqbywLBtChnbmaL5UYA949aDZgfw6xaQPaOfgw@mail.gmail.com"
      type="cite">On Fri, Nov 2, 2012 at 3:49 PM, Rudy <span dir="ltr">&lt;<a
          moz-do-not-send="true" href="mailto:rudy@dynamicpacket.com"
          target="_blank">rudy@dynamicpacket.com</a>&gt;</span> wrote:<br>
      <div class="gmail_quote">
        <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
          0.8ex; border-left: 1px solid rgb(204, 204, 204);
          padding-left: 1ex;">
          Bogdan,
          <div><br>
          </div>
          <div>&nbsp;Its great to hear all these ideas for 1.9 from
            the&nbsp;community.&nbsp;One thing that may also be useful, is some
            enhancements to the rabbit_mq module. It would be great if
            this module could also push/send events to a any rabbitmq
            queue or exchange (maybe based on an avp) . Another thing
            that may be worth exploring is being able to send ACC via a
            rabbitmq event. What do you think?</div>
        </blockquote>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>I just wanted to throw in my $0.02 here.. And I apologize
          for pandering. Once I got on it, I realized there's a lot
          around this that I'd like to see..</div>
        <div><br>
        </div>
        <div>I think this is a great idea. Both being able to
          dynamically control which rabbit queue to send and to have it
          native in acc.</div>
        <div><br>
        </div>
        <div>** What about having native acc callbacks in the routing
          script? that'd make adopting new technologies for accounting
          really easy. Like this:</div>
        <div><br>
        </div>
        <div>on_dialog_complete {</div>
        <div>&nbsp; &nbsp; new_tech_acc_write("$avp(extra_params)");</div>
        <div>}</div>
        <div><br>
        </div>
        <div>on_dialog_established {</div>
        <div>&nbsp; &nbsp; new_tech_notify_new_call("$avp(extra_params)")</div>
        <div>}</div>
        <div><br>
        </div>
        <div>(these new_tech_* funcs are just examples of new modules in
          the future, like couchbase or perhaps a REST query.</div>
        <div><br>
        </div>
        <div>I'm not entirely sure how to go about doing it. But the
          idea is that the custom "acc callback" routes would be called
          on specific acc events that would cause acc records to be
          written. I recognize what I posted above is more of a dialog
          callback. For my cases specifically, I'd use the cdr flag, and
          I'd like to know when a call ends. Then I'd write the acc
          details to the "new technology" backend. So I'm not sure if
          this is an acc feature or a dialog feature (or perhaps some
          combination of both).</div>
        <div><br>
        </div>
        <div>I'd probably want all the dialog data in a single object
          (like maybe a json object) or something else easily passable
          and parsable. A $dlg_json variable would be really awesome for
          this purpose. I image if cdr_flag was set, it'd have the
          duration and all in there as well (all the normal stuff it'd
          be writing to the db).</div>
        <div><br>
        </div>
        <div>Bah, Sorry about that, I really went on.</div>
        <div><br>
        </div>
        <div>tl/dr:&nbsp;</div>
        <div>1. new $dlg_json variable that stores all data that would
          normally be written by a acc write (and maybe some additional
          dialog specific data)</div>
        <div>2. new special routes to act as acc module callbacks to be
          called at specific acc events, which should also work with the
          cdr_flag.&nbsp;</div>
        <div><br>
        </div>
        <div>Thanks!&nbsp;</div>
        <div>-Brett</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>&nbsp;</div>
      </div>
      <pre wrap="">
<fieldset class="mimeAttachmentHeader"></fieldset>
_______________________________________________
Users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Users@lists.opensips.org">Users@lists.opensips.org</a>
<a class="moz-txt-link-freetext" href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a>
</pre>
    </blockquote>
  </body>
</html>