diff --git a/src/actions/basic.py b/src/actions/basic.py
index c3889ce14cba2bfb1cbe3c4bd265787e0064e7ab..c9fe005133a79ea314153be9aee0d11566131a68 100644
--- a/src/actions/basic.py
+++ b/src/actions/basic.py
@@ -28,7 +28,8 @@ async def ci(event):
 @config.telegram_client.on(events.NewMessage(pattern=r"^\.cid$"))
 @mark_unread
 async def get_chat_id(event):
-    await event.respond(str(event.chat.id))
+    chat = await event.get_chat()
+    await event.respond(str(chat.id))
 
 
 @config.telegram_client.on(events.NewMessage(pattern=r"^\.t$"))
diff --git a/src/utils/responses.py b/src/utils/responses.py
index ae9f31e7e184cd251e0b793bd9f073f4c82d7388..6a97f5733f7824352ee3a576a67a6cd2afcc91d7 100644
--- a/src/utils/responses.py
+++ b/src/utils/responses.py
@@ -78,10 +78,8 @@ def mark_unread(f):
 def danger_message(f):
     @functools.wraps(f)
     async def wrapper(event: events.NewMessage.Event):
-
-        if hasattr(event.chat, "id") and str(event.chat.id) in set(
-            config.excluded_chats
-        ):
+        chat = await event.get_chat()
+        if str(chat.id) in set(config.excluded_chats):
             logger.debug("Skipping sending message")
             return
         await f(event)