[mod_conference] Skip dtmf dist to members with skip-dtmf
This commit is contained in:
parent
2e5b5dfecf
commit
c7886faabf
|
@ -1399,6 +1399,10 @@ void conference_member_send_all_dtmf(conference_member_t *member, conference_obj
|
||||||
if (imember->id == member->id) {
|
if (imember->id == member->id) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
if (conference_utils_member_test_flag(imember, MFLAG_SKIP_DTMF)) {
|
||||||
|
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Skipping dist-dtmf to member due to skip-dtmf flag.\n");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
if (imember->session) {
|
if (imember->session) {
|
||||||
const char *p;
|
const char *p;
|
||||||
for (p = dtmf; p && *p; p++) {
|
for (p = dtmf; p && *p; p++) {
|
||||||
|
|
|
@ -124,6 +124,8 @@ void conference_utils_set_mflags(const char *flags, member_flag_t *f)
|
||||||
f[MFLAG_MUTE_DETECT] = 1;
|
f[MFLAG_MUTE_DETECT] = 1;
|
||||||
} else if (!strcasecmp(argv[i], "dist-dtmf")) {
|
} else if (!strcasecmp(argv[i], "dist-dtmf")) {
|
||||||
f[MFLAG_DIST_DTMF] = 1;
|
f[MFLAG_DIST_DTMF] = 1;
|
||||||
|
} else if (!strcasecmp(argv[i], "skip-dtmf")) {
|
||||||
|
f[MFLAG_SKIP_DTMF] = 1;
|
||||||
} else if (!strcasecmp(argv[i], "moderator")) {
|
} else if (!strcasecmp(argv[i], "moderator")) {
|
||||||
f[MFLAG_MOD] = 1;
|
f[MFLAG_MOD] = 1;
|
||||||
} else if (!strcasecmp(argv[i], "nomoh")) {
|
} else if (!strcasecmp(argv[i], "nomoh")) {
|
||||||
|
|
|
@ -214,6 +214,7 @@ typedef enum {
|
||||||
MFLAG_VIDEO_JOIN,
|
MFLAG_VIDEO_JOIN,
|
||||||
MFLAG_DED_VID_LAYER,
|
MFLAG_DED_VID_LAYER,
|
||||||
MFLAG_HOLD,
|
MFLAG_HOLD,
|
||||||
|
MFLAG_SKIP_DTMF,
|
||||||
///////////////////////////
|
///////////////////////////
|
||||||
MFLAG_MAX
|
MFLAG_MAX
|
||||||
} member_flag_t;
|
} member_flag_t;
|
||||||
|
|
Loading…
Reference in New Issue