[asterisk-bugs] [JIRA] (ASTERISK-23727) Async AGI loop breaks when trying to stream missing file

Matt Jordan (JIRA) noreply at issues.asterisk.org
Tue May 13 08:02:43 CDT 2014


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

Matt Jordan commented on ASTERISK-23727:
----------------------------------------

You weren't ignored.
# Rusty reproduced the issue you reported. He noted that the behaviour, and escalated this to someone to look into further.
# I took a look at the code to see if the behaviour was intentional. As I pointed out in my comment, {{stream file}} returns {{RESULT_FAILURE}}. A failure result from an AGI command results in AsyncAGI breaking out of its loop. Hence, it is not a bug but the intended result of the failure.

As far as AsyncAGI not behaving like the other AGI variants - that's because it isn't the same as the other AGI variants. It has its own control loop, and its behaviour with how {{stream file}} fails is consistent with how it behaves when any other AGI command fails.

I understand you don't like that behaviour - that's fine. You may wish it worked differently - great! Asterisk is open source. If you'd like to see the behaviour changed, provide a patch.

No one is under an obligation to change the behaviour simply because you don't care for it.


> Async AGI loop breaks when trying to stream missing file
> --------------------------------------------------------
>
>                 Key: ASTERISK-23727
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-23727
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Resources/res_agi
>    Affects Versions: SVN, 1.8.27.0, 11.9.0, 12.2.0
>         Environment: CentOS 5
>            Reporter: Chico Manobela
>            Severity: Critical
>
> trying to stream a non existent file using AsyncAGI results in AsyncAGI loop breaks and  control returns to dial plan.
> to reproduce:
> 1. start async agi loop on call - AGI(agi:async)
> 2. from the cli try to stream file that doesn't exists:
> {noformat}
> asterisk*CLI> agi exec SIP/192.168.10.22-00000020 "STREAM FILE x 5"
> {noformat}
> Asterisk will print the normal warning:
> {noformat}
> [May  8 11:24:58] WARNING[6805][C-00000020]: file.c:701 ast_openstream_full: File x does not exist in any format
> <SIP/192.168.10.22-00000020>AGI Tx >> 200 result=-1 endpos=0
>     -- Executing [talk at pbxtel-incoming-async:3] 
> {noformat}
> Next thing asterisk does is to stop the loop and continue the dial plan:
> {noformat}
> Hangup("SIP/192.168.10.22-00000020", "") in new stack
>   == Spawn extension (pbxtel-incoming-async, talk, 3) exited non-zero on 'SIP/192.168.10.22-00000020'
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list