[asterisk-dev] Adding new ARI for application execute

Kevin Harwell kharwell at digium.com
Tue Apr 2 16:45:08 CDT 2019

Just throwing an idea out there (I have no idea if this is possible or how
feasible it would be to do this).

ARI is built to interface with applications. A given application controls,
and manipulates channels, bridges, etc... within its context. There are
already mechanism in place that allow a channel to exit an application, and
hand control off to something else. For instance, using 'continue' a
channel is passed to the dialplan, and 'move' a channel is passed to
another application.

With this in mind would it make sense to have the relevant dialplan
applications register themselves as an ARI application? Then you could
simply reuse existing definitions (e.g. move) to "transfer" channel
ownership to another application. From an ARI perspective it doesn't care
where or how an "app" is implemented it just has to conform to the

Obviously, this would mean modifying each chosen dialplan application in
some way so that it could register as an ARI application. It then uses the
same call to 'move' or 'continue' when it is done with a channel.

Again I have no idea if this is possible given the current state of things,
or if would simply be adding a few new API calls that make it easy for a
dialplan app to become an ARI application. But it might be worth some time
to look into?

On Sat, Mar 30, 2019 at 5:45 PM Sungtae Kim <pchero21 at gmail.com> wrote:

> Hi Asterisk team,
> I want to talk about some feature for the ARI.
> Currently, ARI doesn't allow executing the Asterisk application.
> But this makes ARI users giving up and tired to use the ARI.
> Because to use the Application, it has to be exit from the Stasis and
> jump to the dialplan to executing the application. And have to execute
> the Stasis() again to back to Stasis.
> Since it makes the channel needs to be exit from the Stasis, ARI can not
> control the call while it's not in the Stasis. This makes also hard to
> control the call.
> So, I was thinking how about make the stasis/ARI possible to execute the
> applications? And I've created ticket for adding this feature to ARI
> which is enabling the ARI to executing the application.
> https://issues.asterisk.org/jira/browse/ASTERISK-28365
> Btw, In terms of 'Application' things in Asterisk, I know it's bit weird
> sound.
> Because it's executing the application in the application. If the
> Application executed in the Asterisk, all the dialplan's info was
> changed, but this feature will not change it.
> It wasn't done in the Asterisk before. But if we think of the Stasis()
> application's specialty, I think this would be OK to having this feature.
> I've committed some codes regarding this, but put it into WIP status.
> Because I want to get more discussion about this before going further.
> Thank you.
> Best regards,
> Sungtae
> --
> _____________________________________________________________________
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
> asterisk-dev mailing list
> To UNSUBSCRIBE or update options visit:
>    http://lists.digium.com/mailman/listinfo/asterisk-dev

Kevin Harwell
Digium - A Sangoma Company | Senior Software Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - US
Check us out at: https://digium.com & https://asterisk.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20190402/cb3d8eea/attachment.html>

More information about the asterisk-dev mailing list