From 60ecb03f64e293fc313ad70ab69b7f6725287522 Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Mon, 15 Jun 2020 15:02:08 +0300 Subject: [PATCH] Add external url to bridge info --- mautrix_telegram/portal/metadata.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/mautrix_telegram/portal/metadata.py b/mautrix_telegram/portal/metadata.py index d5933202..eced61d9 100644 --- a/mautrix_telegram/portal/metadata.py +++ b/mautrix_telegram/portal/metadata.py @@ -263,13 +263,14 @@ class PortalMetadata(BasePortal, ABC): @property def bridge_info(self) -> Dict[str, Any]: - return { + info = { "bridgebot": self.az.bot_mxid, "creator": self.main_intent.mxid, "protocol": { "id": "telegram", "displayname": "Telegram", "avatar_url": config["appservice.bot_avatar"], + "external_url": "https://telegram.org", }, "channel": { "id": str(self.tgid), @@ -277,6 +278,13 @@ class PortalMetadata(BasePortal, ABC): "avatar_url": self.avatar_url, } } + if self.username: + info["channel"]["external_url"] = f"https://t.me/{self.username}" + elif self.peer_type == "user": + puppet = p.Puppet.get(self.tgid) + if puppet and puppet.username: + info["channel"]["external_url"] = f"https://t.me/{puppet.username}" + return info async def _update_bridge_info(self) -> None: try: