From 1509b0925e52464e15165ad0c3b8ef570d7ee0c1 Mon Sep 17 00:00:00 2001 From: Eddy de Vink Date: Wed, 2 Sep 2026 00:20:57 +0200 Subject: [PATCH] Fix alias resolve: keep # (URL-encoded) for directory lookup; v2.0.4 --- maubot.yaml | 2 +- roomsoverview.mbp | Bin 4960 -> 5046 bytes roomsoverview.py | 5 +++-- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/maubot.yaml b/maubot.yaml index 9daa5ee..0cae5e1 100644 --- a/maubot.yaml +++ b/maubot.yaml @@ -1,6 +1,6 @@ maubot: 0.1.0 id: nl.roomsoverview -version: 2.0.3 +version: 2.0.4 license: MIT modules: - roomsoverview diff --git a/roomsoverview.mbp b/roomsoverview.mbp index bfd5846fe400cf313d3ebf2dabbec41da07ad8b1..7bbdbb187927876ab6ec123fc103ac1619145088 100644 GIT binary patch delta 4396 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 delta 4310 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 E0A39)sQ>@~ diff --git a/roomsoverview.py b/roomsoverview.py index 4e0a48c..63023b4 100644 --- a/roomsoverview.py +++ b/roomsoverview.py @@ -189,10 +189,11 @@ class RoomsOverviewPlugin(Plugin): async def _resolve_alias(self, alias: str) -> Optional[str]: """Los een #alias op naar een room_id.""" - a = alias.lstrip("#") + # De homeserver verwacht de alias inclusief '#', URL-gecodeerd (%23…); + # zonder '#' geeft Synapse "Room alias invalid" (M_INVALID_PARAM). try: async with self.http.get( - f"{self._base_url()}/_matrix/client/v3/directory/room/{quote(a, safe='')}", + f"{self._base_url()}/_matrix/client/v3/directory/room/{quote(alias, safe='')}", headers=self._headers(), timeout=_REQUEST_TIMEOUT, ) as r: