[asterisk-bugs] [JIRA] (ASTERISK-29501) ARI - Stasis Playback doesn't hangup call when processing a list of invalid files

Andre Barbosa (JIRA) noreply at issues.asterisk.org
Tue Jun 29 11:12:33 CDT 2021


     [ https://issues.asterisk.org/jira/browse/ASTERISK-29501?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andre Barbosa updated ASTERISK-29501:
-------------------------------------

    Description: 
We use long list of files to be played and sometimes it might happen where the external file server hosting the files is not available.

We also enforce a max call duration of X secs, using TIMEOUT(absolute).

We found that while res_stasis_playback is trying to play all the files the schedule hangup is not applied, so we end up with calls with much more that 60secs.

We submitted a patch where we verify `ast_check_hangup` before looping to the next sound file.
If the call is already hangup we just break the cycle.
It also ensures that the PlaybackFinished event is sent if the call was hangup.

This is also use-full when we are playing a big list of file for a channel that is hangup.
Before this patch Asterisk will give a warning for every sound not played and fire a PlaybackStart for every sound file on the list and that was tried to be played.

With the patch we just break the playback cycle when the chan was hangup.




  was:
We use long list of files to be played and sometimes it might happen where the external file server hosting the files is not available.

We also enforce a max call duration of X secs, using TIMEOUT(absolute).

We found that while res_stasis_playback is trying to play all the files the schedule hangup is not applied, so we end up with calls with much more that 60secs.

We submitted a patch where we verify `ast_check_hangup` before looping to the next sound file.
If the call is already hangup we just break the cycle.

We also ensure that the PlaybackFinished event is sent if the call was hangup.





> ARI - Stasis Playback doesn't hangup call when processing a list of invalid files
> ---------------------------------------------------------------------------------
>
>                 Key: ASTERISK-29501
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-29501
>             Project: Asterisk
>          Issue Type: Improvement
>      Security Level: None
>          Components: Resources/res_ari_playbacks
>    Affects Versions: 18.5.0
>            Reporter: Andre Barbosa
>
> We use long list of files to be played and sometimes it might happen where the external file server hosting the files is not available.
> We also enforce a max call duration of X secs, using TIMEOUT(absolute).
> We found that while res_stasis_playback is trying to play all the files the schedule hangup is not applied, so we end up with calls with much more that 60secs.
> We submitted a patch where we verify `ast_check_hangup` before looping to the next sound file.
> If the call is already hangup we just break the cycle.
> It also ensures that the PlaybackFinished event is sent if the call was hangup.
> This is also use-full when we are playing a big list of file for a channel that is hangup.
> Before this patch Asterisk will give a warning for every sound not played and fire a PlaybackStart for every sound file on the list and that was tried to be played.
> With the patch we just break the playback cycle when the chan was hangup.



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



More information about the asterisk-bugs mailing list