From 689d84fa78d944e67375818c45a9523d4cc190f9 Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Thu, 9 Jul 2020 19:45:28 +0300 Subject: [PATCH] Move enable_dm_encryption helper to Portal --- mautrix_telegram/matrix.py | 12 +----------- mautrix_telegram/portal/matrix.py | 9 +++++++++ requirements.txt | 2 +- 3 files changed, 11 insertions(+), 12 deletions(-) diff --git a/mautrix_telegram/matrix.py b/mautrix_telegram/matrix.py index ba712025..06e1aa5b 100644 --- a/mautrix_telegram/matrix.py +++ b/mautrix_telegram/matrix.py @@ -115,7 +115,7 @@ class MatrixHandler(BaseMatrixHandler): portal.mxid = room_id e2be_ok = None if self.config["bridge.encryption.default"] and self.e2ee: - e2be_ok = await self.enable_dm_encryption(portal, members=members) + e2be_ok = await portal.enable_dm_encryption() portal.save() inviter.register_portal(portal) if e2be_ok is True: @@ -135,16 +135,6 @@ class MatrixHandler(BaseMatrixHandler): await intent.send_notice(room_id, "This puppet will remain inactive until a " "Telegram chat is created for this room.") - async def enable_dm_encryption(self, portal: po.Portal, members: List[UserID]) -> bool: - ok = await super().enable_dm_encryption(portal, members) - if ok: - try: - puppet = pu.Puppet.get(portal.tgid) - await portal.main_intent.set_room_name(portal.mxid, puppet.displayname) - except Exception: - self.log.warning(f"Failed to set room name for {portal.mxid}", exc_info=True) - return ok - async def send_welcome_message(self, room_id: RoomID, inviter: 'u.User') -> None: try: is_management = len(await self.az.intent.get_room_members(room_id)) == 2 diff --git a/mautrix_telegram/portal/matrix.py b/mautrix_telegram/portal/matrix.py index 4ea6435c..bbc14d59 100644 --- a/mautrix_telegram/portal/matrix.py +++ b/mautrix_telegram/portal/matrix.py @@ -574,6 +574,15 @@ class PortalMatrix(BasePortal, MautrixBasePortal, ABC): self.db_instance.edit(mxid=self.mxid) self.by_mxid[self.mxid] = self + async def enable_dm_encryption(self) -> bool: + ok = await super().enable_dm_encryption() + if ok: + try: + puppet = p.Puppet.get(self.tgid) + await self.main_intent.set_room_name(self.mxid, puppet.displayname) + except Exception: + self.log.warning(f"Failed to set room name", exc_info=True) + return ok def init(context: Context) -> None: global config diff --git a/requirements.txt b/requirements.txt index 381ef58f..ca7257de 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,6 +4,6 @@ ruamel.yaml>=0.15.35,<0.17 python-magic>=0.4,<0.5 commonmark>=0.8,<0.10 aiohttp>=3,<4 -mautrix==0.6.0.beta6 +mautrix==0.6.0.beta7 telethon>=1.13,<1.16 telethon-session-sqlalchemy>=0.2.14,<0.3