[asterisk-dev] ARI Extending Existing Feature: bridge control

Matthew Jordan mjordan at digium.com
Sun Dec 21 20:44:47 CST 2014


On Sun, Dec 21, 2014 at 6:01 AM, Jonathan White <uvacity at googlemail.com> wrote:
> This would be a very useful feature to have available in dialplan. To be
> able vary the length of a call, during the call.

So, this isn't really the topic of conversation in this thread. Most
of this thread concerns itself with discussing additions/modifications
to ARI and its manipulation of bridges.

> I just emailed the dev list with the thought of adding this feature to
> confbridge with the following type of commands:
> same => n,Set(CONFBRIDGE(bridge,max_time)=
> or
> same => n,Set(CONFBRIDGE(bridge,max_datetime)=
> or
> same => n,Set(CONFBRIDGE(bridge,start_datetime)=
> same => n,Set(CONFBRIDGE(bridge,stop_datetime)=
>
> with the following to add some notifications
> same => n,Set(CONFBRIDGE(bridge,hangup_warning)=
> same => n,Set(CONFBRIDGE(bridge,hangup_message)=
>
> The idea was that if you have some call credit it will reduce by the
> variable number of callers which will join the same bridge.

Keep in mind that the CONFBRIDGE function modifies the ConfBridge
application, not all bridges in Asterisk. Adding capabilities to the
ConfBridge dialplan application won't really affect the topic this
thread is discussing.

The CONFBRIDGE function should *not* be re-purposed for things outside
the ConfBridge application. If someone wanted to write a generic
dialplan function that modified properties of a bridge, that would be
a better solution than using CONFBRIDGE.

That being said, the dialplan is extremely channel focussed. That is
both a strength (it is relatively simple and straight forward) and a
weakness (doing things outside of manipulating a single channel can
become convoluted). I'm not sure that adding these kinds of
capabilities to the dialplan is the best way forward.

That being said, Asterisk is open source. If someone wants to write a
generic bridge function that modifies bridges in Asterisk, that would
be an interesting patch.

> Using same => n,Set(TIMEOUT(absolute)= only sets the time out for an
> individual call and not the bridge.
>
> Perhaps something that could be used for all call types would be a better
> approach rather than modifying individual apps.
>

-- 
Matthew Jordan
Digium, Inc. | Engineering Manager
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at: http://digium.com & http://asterisk.org



More information about the asterisk-dev mailing list