From 2eb9d90b865076ed0f1f2196d18cceee9c6ff1ba Mon Sep 17 00:00:00 2001 From: Mark Haines Date: Fri, 11 Nov 2016 15:45:29 +0000 Subject: [PATCH] Disable conference calling for encrypted rooms --- src/CallHandler.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/CallHandler.js b/src/CallHandler.js index 1ac93a8063..2f931d8e3f 100644 --- a/src/CallHandler.js +++ b/src/CallHandler.js @@ -264,6 +264,18 @@ function _onAction(payload) { description: "You cannot place VoIP calls in this browser." }); } + else if (MatrixClientPeg.get().isRoomEncrypted(payload.room_id)) { + // Conference calls are implemented by sending the media to central + // server which combines the audio from all the participants together + // into a single stream. This is incompatible with end-to-end encryption + // because a central server would be decrypting the audio for each + // participant. + // Therefore we disable conference calling in E2E rooms. + const ErrorDialog = sdk.getComponent("dialogs.ErrorDialog"); + Modal.createDialog(ErrorDialog, { + description: "Conference calls are not supported in encrypted rooms", + }); + } else { var QuestionDialog = sdk.getComponent("dialogs.QuestionDialog"); Modal.createDialog(QuestionDialog, {