Add config param to disable e2e for signalling

This commit is contained in:
David Baker 2022-07-04 20:10:13 +01:00
parent 8380894692
commit 5dd5668389

View file

@ -14,6 +14,7 @@ import {
GroupCallType, GroupCallType,
} from "matrix-js-sdk/src/webrtc/groupCall"; } from "matrix-js-sdk/src/webrtc/groupCall";
import { ISyncStateData, SyncState } from "matrix-js-sdk/src/sync"; import { ISyncStateData, SyncState } from "matrix-js-sdk/src/sync";
import { logger } from "matrix-js-sdk/src/logger";
import IndexedDBWorker from "./IndexedDBWorker?worker"; import IndexedDBWorker from "./IndexedDBWorker?worker";
@ -79,6 +80,19 @@ export async function initClient(
storeOpts.cryptoStore = new MemoryCryptoStore(); storeOpts.cryptoStore = new MemoryCryptoStore();
} }
// XXX: we read from the URL search params in RoomPage too:
// it would be much better to read them in one place and pass
// the values around, but we initialise the matrix client in
// many different places so we'd have to pass it into all of
// them.
const params = new URLSearchParams(window.location.search);
// disable e2e only if enableE2e=false is given
const enableE2e = !(params.get("enableE2e") === "false");
if (!enableE2e) {
logger.info("Disabling E2E: group call signalling will NOT be encrypted.");
}
const client = createClient({ const client = createClient({
...storeOpts, ...storeOpts,
...clientOptions, ...clientOptions,
@ -86,6 +100,7 @@ export async function initClient(
// Use a relatively low timeout for API calls: this is a realtime application // Use a relatively low timeout for API calls: this is a realtime application
// so we don't want API calls taking ages, we'd rather they just fail. // so we don't want API calls taking ages, we'd rather they just fail.
localTimeoutMs: 5000, localTimeoutMs: 5000,
useE2eForGroupCall: enableE2e,
}); });
try { try {