diff --git a/pyrogram/__init__.py b/pyrogram/__init__.py index 24d42e25..72bec45f 100644 --- a/pyrogram/__init__.py +++ b/pyrogram/__init__.py @@ -16,7 +16,7 @@ # You should have received a copy of the GNU Lesser General Public License # along with Pyrogram. If not, see . -__version__ = "2.0.108" +__version__ = "2.0.109" __license__ = "GNU Lesser General Public License v3.0 (LGPL-3.0)" __copyright__ = "Copyright (C) 2017-present Dan " diff --git a/pyrogram/client.py b/pyrogram/client.py index 7360f5d2..db27af18 100644 --- a/pyrogram/client.py +++ b/pyrogram/client.py @@ -300,6 +300,7 @@ def __init__( # after some idle time has been detected. self.updates_watchdog_task = None self.updates_watchdog_event = asyncio.Event() + self.updates_watchdog_error = None self.last_update_time = datetime.now() self.loop = asyncio.get_event_loop() @@ -331,8 +332,11 @@ async def updates_watchdog(self): else: break - if datetime.now() - self.last_update_time > timedelta(seconds=self.UPDATES_WATCHDOG_INTERVAL): - await self.invoke(raw.functions.updates.GetState()) + try: + if datetime.now() - self.last_update_time > timedelta(seconds=self.UPDATES_WATCHDOG_INTERVAL): + await self.invoke(raw.functions.updates.GetState()) + except Exception as ee: + self.updates_watchdog_error = ee async def authorize(self) -> User: if self.bot_token: