diff --git a/res/ari/resource_bridges.c b/res/ari/resource_bridges.c index 8c6acdb676..b66e41cc81 100644 --- a/res/ari/resource_bridges.c +++ b/res/ari/resource_bridges.c @@ -425,6 +425,12 @@ static void ari_bridges_play_new(const char **args_media, struct bridge_channel_control_thread_data *thread_data; pthread_t threadid; + struct ast_frame prog = { + .frametype = AST_FRAME_CONTROL, + .subclass.integer = AST_CONTROL_PROGRESS, + }; + + if (!(play_channel = prepare_bridge_media_channel("Announcer"))) { ast_ari_response_error( response, 500, "Internal Error", "Could not create playback channel"); @@ -472,6 +478,8 @@ static void ari_bridges_play_new(const char **args_media, return; } + ast_bridge_queue_everyone_else(bridge, NULL, &prog); + /* Give play_channel and control reference to the thread data */ thread_data = ast_malloc(sizeof(*thread_data) + strlen(bridge->uniqueid) + 1); if (!thread_data) {