[asterisk-dev] [Code Review] Bridging API for Conference Bridge purposes

Russell Bryant russell at digium.com
Mon Jan 26 22:53:16 CST 2009



> On 2008-12-16 07:59:58, Russell Bryant wrote:
> > /trunk/include/asterisk/bridging.h, line 20
> > <http://reviewboard.digium.com/r/93/diff/1/?file=1916#file1916line20>
> >
> >     As a general comment on this header, I think it would make sense to break it up into 2 files:
> >     
> >     1) For users of the API
> >     
> >     2) For implementations of the API
> >     
> >     because I don't think both cases need all of these definitions.
> 
>  wrote:
>     The actual modules that implement the API use a very small subset of the existing header file and will almost always have to also include the additional header file to get at the internals. The only benefit would be to the users of the API... and with the subset being rather small I dunno if it is worth it. I'll ponder this.

Well, I guess there are a couple of things to consider here.

Sure, there aren't many modules that use this API, but that's just for now.  Eventually it will be quite common.  I realize that the modules that implement bridge technologies are going to need almost all of it, and that's understandable.

My main motivation is for clarify to developers that want to read the API to consider using it in new code.  We should make it is simple as possible by only exposing what is considered the public API to them.  The rest can hide behind the curtain in a bridging_modules.h or something.


- Russell


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.digium.com/r/93/#review231
-----------------------------------------------------------


On 2008-12-31 15:45:07, Joshua Colp wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviewboard.digium.com/r/93/
> -----------------------------------------------------------
> 
> (Updated 2008-12-31 15:45:07)
> 
> 
> Review request for Asterisk Developers and Russell Bryant.
> 
> 
> Summary
> -------
> 
> This patch implements the new bridging API and brings with it a module for conference bridges. It does *not* replace existing internal bridging or features yet and will not cause any regressions when put in. It will essentially be introduced as a first test phase to work out any unforeseen critical issues. The bridging core itself is fully implemented besides the following: jitterbuffer support, native bridging, and interval hooks (hooks that are time based versus action based). If you would like an explanation of what the bridging API is made up of and how it works that can be found in the bridging.h header file.
> 
> 
> Diffs
> -----
> 
>   /trunk/Makefile 164597 
>   /trunk/apps/app_confbridge.c PRE-CREATION 
>   /trunk/bridges/Makefile PRE-CREATION 
>   /trunk/bridges/bridge_multiplexed.c PRE-CREATION 
>   /trunk/bridges/bridge_simple.c PRE-CREATION 
>   /trunk/bridges/bridge_softmix.c PRE-CREATION 
>   /trunk/channels/chan_bridge.c PRE-CREATION 
>   /trunk/include/asterisk/bridging.h PRE-CREATION 
>   /trunk/include/asterisk/channel.h 164597 
>   /trunk/main/Makefile 164597 
>   /trunk/main/bridging.c PRE-CREATION 
> 
> Diff: http://reviewboard.digium.com/r/93/diff
> 
> 
> Testing
> -------
> 
> Conference bridge testing using app_confbridge with features. Joining two channels with simple frame exchange and joining three channels to move it to a true conference bridge. IVR capability of app_confbridge was also tested.
> 
> 
> Thanks,
> 
> Joshua
> 
>




More information about the asterisk-dev mailing list