diff --git a/matrix_appservice_kakaotalk/commands/conn.py b/matrix_appservice_kakaotalk/commands/conn.py index 257e5e0..4cec870 100644 --- a/matrix_appservice_kakaotalk/commands/conn.py +++ b/matrix_appservice_kakaotalk/commands/conn.py @@ -63,7 +63,7 @@ async def ping(evt: CommandEvent) -> None: if not await evt.sender.is_logged_in(): await evt.reply("You are **logged out** of KakaoTalk.") else: - is_connected = evt.sender.is_connected and await evt.sender.client.is_connected() + is_connected = await evt.sender.is_connected_now() await evt.reply( "You are logged into KakaoTalk.\n\n" f"You are {'connected to' if is_connected else '**disconnected** from'} KakaoTalk chats." diff --git a/matrix_appservice_kakaotalk/user.py b/matrix_appservice_kakaotalk/user.py index f06e37c..b693246 100644 --- a/matrix_appservice_kakaotalk/user.py +++ b/matrix_appservice_kakaotalk/user.py @@ -177,6 +177,9 @@ class User(DBUser, BaseUser): self._is_connected = val self._connection_time = time.monotonic() + async def is_connected_now(self) -> bool: + return self._client is not None and await self._client.is_connected() + @property def connection_time(self) -> float: return self._connection_time