[asterisk-bugs] [JIRA] (ASTERISK-20882) Make AsyncAGI actually asynchronous; support asynchronous media operations

Matt Jordan (JIRA) noreply at issues.asterisk.org
Mon Jan 7 11:29:45 CST 2013


    [ https://issues.asterisk.org/jira/browse/ASTERISK-20882?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=201164#comment-201164 ] 

Matt Jordan commented on ASTERISK-20882:
----------------------------------------

Actually, #1 may not really be needed.

The goal of this is to get external control of media operations. Think AMI acting as the DTMF that a user would send during a control playback. We should be able to get there without #1, since this can be done purely within the context of the AMI thread.

This has the added benefit of not having to hack apart AsyncAGI, which is good. Mostly because the AGI code is a bit of a pile of spaghetti, but also because it limits the scope of the changes.
                
> Make AsyncAGI actually asynchronous; support asynchronous media operations
> --------------------------------------------------------------------------
>
>                 Key: ASTERISK-20882
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-20882
>             Project: Asterisk
>          Issue Type: New Feature
>          Components: Core/Stasis, Resources/res_agi/NewFeature
>    Affects Versions: 12
>            Reporter: Matt Jordan
>            Assignee: Matt Jordan
>              Labels: Asterisk12
>
> AsyncAGI currently is not really asynchronous - while it allows for commands to be queued from AMI/CLI, the asynchronous break command is still queued for synchronous operation on a channel. Additionally, media operations (such as playback on a channel) can be controlled from the channel via DTMF, but cannot be controlled asynchronously by a remote source (AMI). This task is to do two things:
> # Make AsyncAGI support asynchronous operations on a channel. AGI commands that act as dialplan execution should still be executed synchronously; AGI commands that query for information or can be executed asynchronously should execute immediately in the context of the thread that dispatches the command.
> # Implement fine grained media control. This includes stop, pause, rewind, and fast forward for media being played on a channel. These operations should be initiated by the thread dispatching the command.
> As a result of this, it may also be beneficial to place AsyncAGI in it's own separate module.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira



More information about the asterisk-bugs mailing list