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

Chico Manobela (JIRA) noreply at issues.asterisk.org
Tue May 13 01:10:43 CDT 2014


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

Chico Manobela commented on ASTERISK-23727:
-------------------------------------------

Of course it's a bug!
regular AGI script doesn't break when a file in "stream file" is not found.
Actually AGI script should not stop at all, not even on hangup.
The user can check the status and deal with it, however, when asterisk breaks the loop by itself, it takes control away from the user, which is a bad design for software.
This is not a critical failure nor a hangup, there is no reason to break the loop.


> 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