Summary:ASTERISK-19571: [patch][feature] ConfBridge - Support for playing back arbitrary messages to individuals or the whole bridge
Reporter:Neil Tallim (flan)Labels:patch
Date Opened:2012-03-21 03:19:44Date Closed:
Versions:SVN 13.18.4 Frequency of
Environment:Attachments:( 0) confbridge_playfile_consistent_collision-fix.patch
( 1) confbridge_playfile.patch
Description:The attached patch adds support for a CLI command, "confbridge playfile <conference> [channel] <file>", and an equivalent AMI command called "ConfbridgePlayFile".

Playback to the bridge uses play_sound_helper(), while playback to channels uses ast_stream_and_wait(), wrapped with appropriate locks and MoH tests, to be minimally disruptive.

All flows are handled with a thread to avoid blocking and seem to work well in a limited testing environment.
Comments:By: Neil Tallim (flan) 2012-03-21 09:16:23.785-0500

Mistakenly uploaded an outdated version of the patch, which contained an attribute lookup on a null pointer. Should have done svn diff to be absolutely sure, but, well, 4:00 AM.

By: Matt Jordan (mjordan) 2012-03-26 07:53:44.515-0500

Thank you for contributing this patch.

The next step is to post the patch for review on ReviewBoard (https://reviewboard.asterisk.org/) for developer review and comment.  Instructions for using ReviewBoard can be found at https://wiki.asterisk.org/wiki/display/AST/Reviewboard+Usage.  If you need an account, please contact me at mjordan@digium.com with a desired username and I'll set up an account for you.



By: Neil Tallim (flan) 2012-05-03 21:51:06.396-0500

To make behaviour in both playfile cases (conference and individual) consistent, this patch introduces mutexes around the method, on an individual basis.

Additionally, and probably importantly, it should address what seems to have been a race-condition involving bridge-suspension of participants and playback when using the MoH features introduced in another one of my patches; it's also possible that the problem was related to ast_stream_file interrupting itself, which this will also avoid.

By: MARTIN Nicolas (cocorambo) 2012-05-25 07:36:15.139-0500

We use this patch since 3 May in production and it works perfectly.

I think this is a really important feature for confBridge app and not only a minor one!
A must have!