From 99089683af2c84d00d655f2109702c39670b96c9 Mon Sep 17 00:00:00 2001 From: Ville Ranki Date: Thu, 26 Dec 2019 00:21:32 +0200 Subject: [PATCH] Join invites by bot owners even if JOIN_ON_INVITE is False --- bot.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/bot.py b/bot.py index 6982a4b..9196b71 100755 --- a/bot.py +++ b/bot.py @@ -117,6 +117,9 @@ class Bot: traceback.print_exc(file=sys.stderr) async def invite_cb(self, room, event): + if not self.join_on_invite or self.is_owner(event): + return + for attempt in range(3): result = await self.client.join(room.room_id) if type(result) == JoinError: @@ -179,7 +182,7 @@ class Bot: def init(self): self.client = AsyncClient(os.environ['MATRIX_SERVER'], os.environ['MATRIX_USER']) self.client.access_token = os.getenv('MATRIX_ACCESS_TOKEN') - self.join_on_invite = os.getenv('JOIN_ON_INVITE') + self.join_on_invite = len(os.getenv('JOIN_ON_INVITE')) > 0 self.owners = os.environ['BOT_OWNERS'].split(',') self.get_modules() @@ -214,9 +217,10 @@ class Bot: if self.client.logged_in: self.load_settings(self.get_account_data()) self.client.add_event_callback(self.message_cb, RoomMessageText) + self.client.add_event_callback(self.invite_cb, (InviteEvent,)) + if self.join_on_invite: print('Note: Bot will join rooms if invited') - self.client.add_event_callback(self.invite_cb, (InviteEvent,)) print('Bot running as', self.client.user, ', owners', self.owners) await self.client.sync_forever(timeout=30000) else: