On Mon, Apr 1, 2019 at 2:23 PM naruto360 <abdelhady20...@gmail.com> wrote:
>
> Hello Are you talking to me about the problem that was asked by me

They're having a discussion about Asterisk ARI development.  ARI is
Asterisk's REST API.

Matthew Fredrickson

>
> في الاثنين، ١ ابريل، ٢٠١٩ ٨:٤٣ م Joshua C. Colp <jc...@digium.com> كتب:
>>
>> On Mon, Apr 1, 2019, at 3:25 PM, Sungtae Kim wrote:
>>
>> <snip>
>>
>> > >> 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
>> > > So ARI wasn't written or designed to really function the same way as AGI 
>> > > for example. It expects to be the final owner of a channel. This has the 
>> > > consequence that it can be unsafe to execute dialplan applications which 
>> > > they themselves want to be the final owner of the channel on. Your 
>> > > change overcame this to a degree by making it blocking. This is 
>> > > problematic, though, as it means that the ARI application has lost its 
>> > > control and can't do anything until the dialplan application is over. It 
>> > > can't, for example, stop the dialplan application execution and regain 
>> > > control. The queue of any requests is blocked, thus the ARI application 
>> > > is blocked.
>> > The application making a block is true, but ARI still control the flow.
>> > Because the channel is still in the stasis(), the ARI can send the
>> > hangup() or hangup with AST_SOFTHANGUP_ASYNCGOTO(I didn't implement this
>> > yet) to exit from the application and it can give the control back to ARI.
>>
>> I think this would need to be implemented so that the ARI application can 
>> indeed take back control.
>>
>> > > I'd also wonder what certain applications would do and the resulting 
>> > > events. What happens if you execute Dial, or ConfBridge, or perform a 
>> > > transfer while in a dialplan application in ARI?
>> >
>> > Dial: It created a new channel and connected to each other(put in the
>> > same bridge) And after hangup the dialed channel, the original channel
>> > gets back to waiting for ARI request.
>>
>> What events are created? Do they get propagated to ARI?
>>
>> > Confbridge: It created new bridge and stayed there. After destroying the
>> > bridge, the original channel gets back to waiting for ARI request.
>> >
>> > Transfer: Didn't work. It didn't do the transfer but no hangup as well.
>> > Haven't look that in depth, will figure out why.
>> >
>> > Because if the Stasis calls the this ARI, the application taking the
>> > ownership(sort of).
>> >
>> > But the Stasis()/ARI still can send the ARI request to the channel.
>>
>> Can you explain what you mean here?
>>
>> > I agree that some of the application(i.e. park) doesn't really respect
>> > the AST_SOFTHANGUP_ASYNCGOTO signal somehow. But I think this is not
>> > this feature's problem this is the application's problem. Because I can
>> > see the same behaviors with 'Redirect' AMI action as well. And this
>> > could be fixed in another way.
>> >
>> > > There's a lot of unknowns as to how exactly everything would behave in 
>> > > my mind and they'd need to be answered.
>>
>> Essentially I think there would need to be an accepted list or a denied list 
>> of applications that are just incompatible with this. It would also be good 
>> to get feedback from other people as to what they'd expect and how they 
>> would expect to interact/use this new functionality. The asterisk-app-dev 
>> mailing list may catch their attention.
>>
>> --
>> Joshua C. Colp
>> Digium - A Sangoma Company | Senior Software Developer
>> 445 Jan Davis Drive NW - Huntsville, AL 35806 - US
>> Check us out at: www.digium.com & www.asterisk.org
>>
>> --
>> _____________________________________________________________________
>> -- 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
>
> --
> _____________________________________________________________________
> -- 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



-- 
Matthew Fredrickson
Digium - A Sangoma Company | Asterisk Project Lead
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA

-- 
_____________________________________________________________________
-- 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

Reply via email to