<div dir="ltr">Just throwing an idea out there (I have no idea if this is possible or how feasible it would be to do this).<div><br></div><div>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.</div><div><br></div><div>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 interface.</div><div><br></div><div>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.</div><div><br></div><div>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?</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Mar 30, 2019 at 5:45 PM Sungtae Kim <<a href="mailto:pchero21@gmail.com">pchero21@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Asterisk team,<br>
<br>
I want to talk about some feature for the ARI.<br>
<br>
Currently, ARI doesn't allow executing the Asterisk application.<br>
<br>
But this makes ARI users giving up and tired to use the ARI.<br>
Because to use the Application, it has to be exit from the Stasis and <br>
jump to the dialplan to executing the application. And have to execute <br>
the Stasis() again to back to Stasis.<br>
<br>
Since it makes the channel needs to be exit from the Stasis, ARI can not <br>
control the call while it's not in the Stasis. This makes also hard to <br>
control the call.<br>
<br>
So, I was thinking how about make the stasis/ARI possible to execute the <br>
applications? And I've created ticket for adding this feature to ARI <br>
which is enabling the ARI to executing the application.<br>
<a href="https://issues.asterisk.org/jira/browse/ASTERISK-28365" rel="noreferrer" target="_blank">https://issues.asterisk.org/jira/browse/ASTERISK-28365</a><br>
<br>
Btw, In terms of 'Application' things in Asterisk, I know it's bit weird <br>
sound.<br>
<br>
Because it's executing the application in the application. If the <br>
Application executed in the Asterisk, all the dialplan's info was <br>
changed, but this feature will not change it.<br>
<br>
It wasn't done in the Asterisk before. But if we think of the Stasis() <br>
application's specialty, I think this would be OK to having this feature.<br>
<br>
I've committed some codes regarding this, but put it into WIP status. <br>
Because I want to get more discussion about this before going further.<br>
<br>
Thank you.<br>
<br>
Best regards,<br>
Sungtae<br>
<br>
<br>
-- <br>
_____________________________________________________________________<br>
-- Bandwidth and Colocation Provided by <a href="http://www.api-digital.com" rel="noreferrer" target="_blank">http://www.api-digital.com</a> --<br>
<br>
asterisk-dev mailing list<br>
To UNSUBSCRIBE or update options visit:<br>
   <a href="http://lists.digium.com/mailman/listinfo/asterisk-dev" rel="noreferrer" target="_blank">http://lists.digium.com/mailman/listinfo/asterisk-dev</a></blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr">Kevin Harwell<div>Digium - A Sangoma Company | Senior Software Developer<div>445 Jan Davis Drive NW - Huntsville, AL 35806 - US</div><div>Check us out at: <a href="https://digium.com" target="_blank">https://digium.com</a> & <a href="https://asterisk.org" target="_blank">https://asterisk.org</a></div></div></div></div>