From 5bc1362493e06b59402f7329d1c63426e618594f Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Wed, 19 Sep 2018 22:44:27 -0600 Subject: [PATCH 1/3] Add provisioning route for getting misc bridge info Currently only the relay bot's username is exposed here. --- mautrix_telegram/web/provisioning/__init__.py | 7 +++++++ mautrix_telegram/web/provisioning/spec.yaml | 14 ++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/mautrix_telegram/web/provisioning/__init__.py b/mautrix_telegram/web/provisioning/__init__.py index 1ff81995..6fdaa853 100644 --- a/mautrix_telegram/web/provisioning/__init__.py +++ b/mautrix_telegram/web/provisioning/__init__.py @@ -64,6 +64,8 @@ class ProvisioningAPI(AuthAPI): self.app.router.add_route("POST", f"{user_prefix}/login/send_code", self.send_code) self.app.router.add_route("POST", f"{user_prefix}/login/send_password", self.send_password) + self.app.router.add_route("GET", f"/bridge", self.bridge_info) + async def get_portal_by_mxid(self, request: web.Request) -> web.Response: err = self.check_authorization(request) if err is not None: @@ -359,6 +361,11 @@ class ProvisioningAPI(AuthAPI): return err await user.log_out() + async def bridge_info(self, request: web.Request) -> web.Response: + return web.json_response({ + "relaybot_username": self.context.bot.username, + }, status=200) + @staticmethod async def error_middleware(_, handler: Callable[[web.Request], Awaitable[web.Response]] ) -> Callable[[web.Request], Awaitable[web.Response]]: diff --git a/mautrix_telegram/web/provisioning/spec.yaml b/mautrix_telegram/web/provisioning/spec.yaml index 6fe3bcc9..4fab7244 100644 --- a/mautrix_telegram/web/provisioning/spec.yaml +++ b/mautrix_telegram/web/provisioning/spec.yaml @@ -24,6 +24,20 @@ tags: - name: Bridging paths: + /bridge: + get: + operationId: get_bridge + summary: Get the bridge's information + tags: [Misc] + responses: + 200: + description: The bridge information + schama: + type: object + properties: + relay_username: + type: string + description: The relay bot's username on Telegram /portal/{room_id}: get: operationId: get_portal From 6291e92ed7ea1e8734e29431b03779eee1dfee52 Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Mon, 8 Oct 2018 01:15:49 -0600 Subject: [PATCH 2/3] Remove extraneous fstring --- mautrix_telegram/web/provisioning/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mautrix_telegram/web/provisioning/__init__.py b/mautrix_telegram/web/provisioning/__init__.py index 6fdaa853..b7e7b6f1 100644 --- a/mautrix_telegram/web/provisioning/__init__.py +++ b/mautrix_telegram/web/provisioning/__init__.py @@ -64,7 +64,7 @@ class ProvisioningAPI(AuthAPI): self.app.router.add_route("POST", f"{user_prefix}/login/send_code", self.send_code) self.app.router.add_route("POST", f"{user_prefix}/login/send_password", self.send_password) - self.app.router.add_route("GET", f"/bridge", self.bridge_info) + self.app.router.add_route("GET", "/bridge", self.bridge_info) async def get_portal_by_mxid(self, request: web.Request) -> web.Response: err = self.check_authorization(request) From 4f3e1b4fe62e8aaf81570ea7d3b3604379d6c003 Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Mon, 8 Oct 2018 01:16:29 -0600 Subject: [PATCH 3/3] Fix errors in spec.yaml --- mautrix_telegram/web/provisioning/spec.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mautrix_telegram/web/provisioning/spec.yaml b/mautrix_telegram/web/provisioning/spec.yaml index 4fab7244..f00f644e 100644 --- a/mautrix_telegram/web/provisioning/spec.yaml +++ b/mautrix_telegram/web/provisioning/spec.yaml @@ -22,6 +22,7 @@ tags: - name: User info - name: Authentication - name: Bridging +- name: Misc paths: /bridge: @@ -32,10 +33,10 @@ paths: responses: 200: description: The bridge information - schama: + schema: type: object properties: - relay_username: + relaybot_username: type: string description: The relay bot's username on Telegram /portal/{room_id}: