From f7476320dbdb7afe1e305b9036ef31bff5563ca2 Mon Sep 17 00:00:00 2001 From: Anthony Minessale Date: Mon, 7 May 2012 10:24:08 -0500 Subject: [PATCH] FS-4177 play-file-done was not previously possible it was part of supressing play-file, try this patch --- src/mod/applications/mod_conference/mod_conference.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/mod/applications/mod_conference/mod_conference.c b/src/mod/applications/mod_conference/mod_conference.c index aa5a1a3015..8b4be69b2c 100644 --- a/src/mod/applications/mod_conference/mod_conference.c +++ b/src/mod/applications/mod_conference/mod_conference.c @@ -217,7 +217,8 @@ typedef enum { EFLAG_FLOOR_CHANGE = (1 << 25), EFLAG_MUTE_DETECT = (1 << 26), EFLAG_RECORD = (1 << 27), - EFLAG_HUP_MEMBER = (1 << 28) + EFLAG_HUP_MEMBER = (1 << 28), + EFLAG_PLAY_FILE_DONE = (1 << 29), } event_type_t; typedef struct conference_file_node { @@ -1621,7 +1622,7 @@ static void *SWITCH_THREAD_FUNC conference_thread_run(switch_thread_t *thread, v } if (file_sample_len <= 0) { - if (test_eflag(conference, EFLAG_PLAY_FILE) && + if (test_eflag(conference, EFLAG_PLAY_FILE_DONE) && switch_event_create_subclass(&event, SWITCH_EVENT_CUSTOM, CONF_EVENT_MAINT) == SWITCH_STATUS_SUCCESS) { conference_add_event_data(conference, event); switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Action", "play-file-done"); @@ -6107,6 +6108,8 @@ static void clear_eflags(char *events, uint32_t *f) *f &= ~EFLAG_VOLUME_OUT_MEMBER; } else if (!strcmp(event, "play-file")) { *f &= ~EFLAG_PLAY_FILE; + } else if (!strcmp(event, "play-file-done")) { + *f &= ~EFLAG_PLAY_FILE; } else if (!strcmp(event, "play-file-member")) { *f &= ~EFLAG_PLAY_FILE_MEMBER; } else if (!strcmp(event, "speak-text")) {