UNPKG

sendingnetwork-bot-sdk

Version:
25 lines (21 loc) 901 B
import { SDNClient } from "../SDNClient"; import { Appservice } from "../appservice/Appservice"; /** * Automatically accepts invites for rooms * @category Mixins */ export class AutojoinRoomsMixin { public static setupOnClient(client: SDNClient): void { client.on("room.invite", (roomId: string, inviteEvent: any) => { return client.joinRoom(roomId); }); } public static setupOnAppservice(appservice: Appservice, conditional: (inviteEvent: any) => boolean = null): void { appservice.on("room.invite", (roomId: string, inviteEvent: any) => { const isFromBot = appservice.botUserId === inviteEvent["sender"]; if (!isFromBot && conditional && !conditional(inviteEvent)) return; const intent = appservice.getIntentForUserId(inviteEvent["state_key"]); return intent.joinRoom(roomId); }); } }