From 0e024b3b7c8486f832485996f0a75b75e3ed4cca Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Thu, 23 Jun 2022 23:59:44 +0300 Subject: [PATCH] Fetch participant count if it's not included in the entity --- mautrix_telegram/portal.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mautrix_telegram/portal.py b/mautrix_telegram/portal.py index 634ae61a..be626d0f 100644 --- a/mautrix_telegram/portal.py +++ b/mautrix_telegram/portal.py @@ -755,7 +755,10 @@ class Portal(DBPortal, BasePortal): participants_count = entity.participants_count elif isinstance(entity, Channel) and not entity.broadcast: participants_count = entity.participants_count - if 0 < self.config["bridge.max_member_count"] < participants_count: + if participants_count is None and self.config["bridge.max_member_count"] > 0: + self.log.warning(f"Participant count not found in entity, fetching manually") + participants_count = (await user.client.get_participants(entity, limit=0)).total + if participants_count and 0 < self.config["bridge.max_member_count"] < participants_count: self.log.warning(f"Not bridging chat, too many participants (%d)", participants_count) self._bridging_blocked_at_runtime = True return None