diff --git a/src/domain/session/room/timeline/tiles/CallTile.js b/src/domain/session/room/timeline/tiles/CallTile.js index ffb9ef59..37be05be 100644 --- a/src/domain/session/room/timeline/tiles/CallTile.js +++ b/src/domain/session/room/timeline/tiles/CallTile.js @@ -94,7 +94,7 @@ export class CallTile extends SimpleTile { } get canJoin() { - return this._call && !this._call.hasJoined; + return this._call && !this._call.hasJoined && !this._call.usesFoci; } get canLeave() { diff --git a/src/matrix/calls/group/GroupCall.ts b/src/matrix/calls/group/GroupCall.ts index 90c4d982..9ef2e068 100644 --- a/src/matrix/calls/group/GroupCall.ts +++ b/src/matrix/calls/group/GroupCall.ts @@ -190,7 +190,7 @@ export class GroupCall extends EventEmitter<{change: never}> { join(localMedia: LocalMedia, log?: ILogItem): Promise { return this.options.logger.wrapOrRun(log, "Call.join", async joinLog => { - if (this._state !== GroupCallState.Created || this.joinedData) { + if (this._state !== GroupCallState.Created || this.joinedData || this.usesFoci) { return; } const logItem = this.options.logger.child({