]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-11511: [mod_conference] allow conference vid-banner command to be run when you...
authorMike Jerris <mike@jerris.com>
Thu, 8 Nov 2018 16:01:56 +0000 (16:01 +0000)
committerAndrey Volk <andywolk@gmail.com>
Tue, 16 Jul 2019 19:24:43 +0000 (23:24 +0400)
src/mod/applications/mod_conference/conference_api.c

index ec1640795ce6e337c9caae8598404c6e073b528f..19ad9c93581713742ba412f7c05985dda2e56b6b 100644 (file)
@@ -2596,36 +2596,26 @@ switch_status_t conference_api_sub_vid_banner(conference_member_t *member, switc
        mcu_layer_t *layer = NULL;
        char *text = (char *) data;
 
-       if (member == NULL)
+       if (member == NULL) {
                return SWITCH_STATUS_GENERR;
+       }
 
        switch_url_decode(text);
 
-       if (!switch_channel_test_flag(member->channel, CF_VIDEO)) {
-               stream->write_function(stream, "-ERR Channel %s does not have video capability!\n", switch_channel_get_name(member->channel));
-               return SWITCH_STATUS_SUCCESS;
-       }
+       if (zstr(text)) goto end;
 
-       layer = conference_video_get_layer_locked(member);
-
-       if (!layer) {
-               stream->write_function(stream, "-ERR Channel %s is not in a video layer\n", switch_channel_get_name(member->channel));
-               goto end;
-       }
+       member->video_banner_text = switch_core_strdup(member->pool, text);
 
-       if (zstr(text)) {
-               stream->write_function(stream, "-ERR No text supplied\n", switch_channel_get_name(member->channel));
-               goto end;
-       }
+       layer = conference_video_get_layer_locked(member);
 
-       member->video_banner_text = switch_core_strdup(member->pool, text);
+       if (!layer) goto end;
 
        conference_video_layer_set_banner(member, layer, NULL);
 
-       stream->write_function(stream, "+OK\n");
-
  end:
 
+       stream->write_function(stream, "+OK\n");
+
        conference_video_release_layer(&layer);
 
        return SWITCH_STATUS_SUCCESS;