From 68339ced0b2f41592056d4be10166f350f7dfa9b Mon Sep 17 00:00:00 2001 From: Anton Voylenko Date: Thu, 12 Mar 2026 13:55:49 +0200 Subject: [PATCH] fix: conference mute and mute status (#1218) --- lib/session/call-session.js | 3 ++- lib/tasks/conference.js | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/session/call-session.js b/lib/session/call-session.js index 28e26252..ce969399 100644 --- a/lib/session/call-session.js +++ b/lib/session/call-session.js @@ -2315,7 +2315,8 @@ Duration=${duration} ` break; case 'mute:status': - this._lccMuteStatus(data, call_sid); + const status = typeof (data) === 'string' ? data : data.mute_status; + this._lccMuteStatus(status === 'mute', call_sid); break; case 'conf:mute-status': diff --git a/lib/tasks/conference.js b/lib/tasks/conference.js index 6c16b884..107b51d7 100644 --- a/lib/tasks/conference.js +++ b/lib/tasks/conference.js @@ -469,6 +469,7 @@ class Conference extends Task { assert (cs.isInConference); const mute = opts.conf_mute_status === 'mute'; + this.logger.info(`Conference:doConferenceMute ${mute ? 'muting' : 'unmuting'} member`); this.ep.api(`conference ${this.confName} ${mute ? 'mute' : 'unmute'} ${this.memberId}`) .catch((err) => this.logger.info({err}, 'Error muting or unmuting participant')); } @@ -570,8 +571,8 @@ class Conference extends Task { /** * mute or unmute side of the call */ - mute(callSid, doMute) { - this.doConferenceMute(this.callSession, {conf_mute_status: doMute}); + async mute(callSid, doMute) { + this.doConferenceMute(this.callSession, {conf_mute_status: doMute ? 'mute' : 'unmute'}); } /**