Summary: | ASTERISK-25661: No clean way to stop Playback in Asterisk 13 and PLAYBACKSTATUS regression | ||
Reporter: | Neil L. Decapia (neildecapia) | Labels: | |
Date Opened: | 2016-01-06 08:09:44.000-0600 | Date Closed: | |
Priority: | Major | Regression? | |
Status: | Open/New | Components: | Applications/app_playback Core/ManagerInterface |
Versions: | 13.3.2 13.6.0 | Frequency of Occurrence | |
Related Issues: | |||
Environment: | Attachments: | ||
Description: | In Asterisk 11, the {{Playback}} application can be terminated by redirecting the channel via the manager {{Redirect}} action. Channel breaks out of {{Playback}}, and {{PLAYBACKSTATUS}} is set to "SUCCESS":
{noformat:title=Asterisk Call Manager/1.3} Action: Redirect Channel: SIP/301-00000000 Exten: 3000 Priority: 1 Context: testing-redirect Response: Success Message: Redirect successful Event: VarSet Privilege: dialplan,all Channel: SIP/301-00000000 Variable: PLAYBACKSTATUS Value: SUCCESS Uniqueid: 1452086660.0 {noformat} In Asterisk 13, {{Redirect}} still breaks the channel out of {{Playback}}, but {{PLAYBACKSTATUS}} is now set to "FAILED": {noformat:title=Asterisk Call Manager/2.7.0} Action: Redirect Channel: SIP/301-00000000 Exten: 3000 Priority: 1 Context: testing-redirect Response: Success Message: Redirect successful Event: VarSet Privilege: dialplan,all Channel: SIP/301-00000000 ChannelState: 6 ChannelStateDesc: Up CallerIDNum: 301 CallerIDName: Carol ConnectedLineNum: <unknown> ConnectedLineName: <unknown> Language: en AccountCode: Context: testing Exten: 300 Priority: 1 Uniqueid: 1452086716.0 Variable: PLAYBACKSTATUS Value: FAILED {noformat} Scripts now cannot rely on the result to determine if {{Playback}} did indeed encounter an error or if it was merely stopped, etc. Asterisk 13 has the manager {{ControlPlayback}} action that can stop playback of a file being played to a channel. However, if {{Playback}} is given more than one file name, then {{ControlPlayback}} only stops the file that's currently playing; {{Playback}} will proceed to play the next file. So {{ControlPlayback}} doesn't really break out of {{Playback}}. So to have Asterisk 13 cleanly stop {{Playback}}, the regression\(?\) on the {{PLAYBACKSTATUS}} value (Asterisk 11: "SUCCESS", Asterisk 13: "FAILED") should be fixed, or {{ControlPlayback}} should be changed to completely break out of {{Playback}}. | ||
Comments: | By: Asterisk Team (asteriskteam) 2016-01-06 08:09:46.287-0600 Thanks for creating a report! The issue has entered the triage process. That means the issue will wait in this status until a Bug Marshal has an opportunity to review the issue. Once the issue has been reviewed you will receive comments regarding the next steps towards resolution. A good first step is for you to review the [Asterisk Issue Guidelines|https://wiki.asterisk.org/wiki/display/AST/Asterisk+Issue+Guidelines] if you haven't already. The guidelines detail what is expected from an Asterisk issue report. Then, if you are submitting a patch, please review the [Patch Contribution Process|https://wiki.asterisk.org/wiki/display/AST/Patch+Contribution+Process]. By: Sean Bright (seanbright) 2023-01-05 11:06:04.790-0600 I know this issue is ancient but I have a review up for the regression. However, even before the change in Asterisk 12, the value of {{PLAYBACKSTATUS}} variable is useless if playing back multiple files using the {{&}} syntax because you have no idea which of the multiple files the {{PLAYBACKSTATUS}} variable is referring to. Personally, I would avoid using this variable entirely. |