Skip to content

Commit

Permalink
Create encrypted admin rooms if encryption is enabled
Browse files Browse the repository at this point in the history
  • Loading branch information
B4dM4n authored and AndrewFerr committed Oct 18, 2022
1 parent 65b3faa commit 2eb91ab
Showing 1 changed file with 10 additions and 1 deletion.
11 changes: 10 additions & 1 deletion src/Bridge.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { AdminAccountData } from "./AdminRoomCommandHandler";
import { AdminRoom, BRIDGE_ROOM_TYPE, LEGACY_BRIDGE_ROOM_TYPE } from "./AdminRoom";
import { Appservice, IAppserviceRegistration, RichRepliesPreprocessor, IRichReplyMetadata, StateEvent, MatrixClient, EventKind, PowerLevelsEvent } from "matrix-bot-sdk";
import { Appservice, IAppserviceRegistration, RichRepliesPreprocessor, IRichReplyMetadata, StateEvent, MatrixClient, EventKind, PowerLevelsEvent, EncryptionAlgorithm } from "matrix-bot-sdk";
import { BridgeConfig, BridgePermissionLevel, GitLabInstance } from "./Config/Config";
import { BridgeWidgetApi } from "./Widgets/BridgeWidgetApi";
import { CommentProcessor } from "./CommentProcessor";
Expand Down Expand Up @@ -1147,11 +1147,20 @@ export class Bridge {
if (existingRoom) {
return existingRoom;
}
let encryptionArgs = {};
if (this.config.encryption) {
encryptionArgs = {
initial_state: [
{ type: "m.room.encryption", state_key: "", content: { algorithm: EncryptionAlgorithm.MegolmV1AesSha2 } },
],
};
}
// Otherwise, we need to create a room.
const roomId = await this.as.botClient.createRoom({
invite: [userId],
is_direct: true,
preset: "trusted_private_chat",
...encryptionArgs,
});
return this.setUpAdminRoom(roomId, {admin_user: userId}, NotifFilter.getDefaultContent());
}
Expand Down

0 comments on commit 2eb91ab

Please sign in to comment.