From 36b2f6af2e61bb06e325cd5ec8f3b643304c327f Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Thu, 6 Jul 2023 13:22:12 +0300 Subject: [PATCH] Fix bridging reactions if server was rebooted less than 12 hours ago Fixes #915 --- mautrix_telegram/user.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/mautrix_telegram/user.py b/mautrix_telegram/user.py index a34f7467..a66ac715 100644 --- a/mautrix_telegram/user.py +++ b/mautrix_telegram/user.py @@ -977,11 +977,18 @@ class User(DBUser, AbstractUser, BaseUser): self.log.debug("Contact syncing complete") return contacts + @property + def _available_reactions_up_to_date(self) -> bool: + return ( + bool(self._available_emoji_reactions) + and self._available_emoji_reactions_fetched + 12 * 60 * 60 > time.monotonic() + ) + async def get_available_reactions(self) -> set[str]: - if self._available_emoji_reactions_fetched + 12 * 60 * 60 > time.monotonic(): + if self._available_reactions_up_to_date: return self._available_emoji_reactions async with self._available_emoji_reactions_lock: - if self._available_emoji_reactions_fetched + 12 * 60 * 60 > time.monotonic(): + if self._available_reactions_up_to_date: return self._available_emoji_reactions self.log.debug("Fetching available emoji reactions") available_reactions = await self.client(