diff --git a/get_status/main.py b/get_status/main.py
new file mode 100644
index 0000000..4699719
--- /dev/null
+++ b/get_status/main.py
@@ -0,0 +1,53 @@
+from datetime import datetime
+from pytz import timezone
+
+from pyrogram.errors import DocumentInvalid
+from pyrogram.raw.functions.users import GetUsers
+from pyrogram.raw.types import InputUserSelf, InputUserFromMessage
+from pyrogram.raw.types import EmojiStatus, EmojiStatusEmpty, EmojiStatusUntil
+
+from pagermaid.listener import listener
+from pagermaid.enums import Client, Message
+
+
+async def get_status_emoji(bot: Client, message: Message = None) -> str:
+ try:
+ peer = InputUserFromMessage(
+ peer=(await bot.resolve_peer(message.chat.id)),
+ msg_id=message.id,
+ user_id=message.from_user.id,
+ ) if message else InputUserSelf()
+ req = await bot.invoke(GetUsers(id=[peer]))
+ emoji_status = req[0].emoji_status
+ if not emoji_status or isinstance(emoji_status, EmojiStatusEmpty):
+ return "你还没有设置自定义 emoji 状态"
+ if isinstance(emoji_status, EmojiStatus):
+ return f"你的自定义 emoji 状态是 🔥"
+ if isinstance(emoji_status, EmojiStatusUntil):
+ time = datetime.strftime(
+ datetime.fromtimestamp(
+ emoji_status.until, timezone("Asia/Shanghai")
+ ),
+ "%Y-%m-%d %H:%M:%S"
+ )
+ return f"你的自定义 emoji 状态是 🔥 (有效期至:{time})"
+ except DocumentInvalid:
+ return "无法获取自定义 emoji 状态,可能是状态已过期。"
+ except Exception as e:
+ raise FileNotFoundError from e
+
+
+@listener(command="get_status",
+ need_admin=True,
+ description="获取自己或者他人的大会员自定义 emoji 状态")
+async def get_emoji_status(bot: Client, message: Message):
+ """ 获取自己或者他人的大会员自定义 emoji 状态 """
+ if not message.reply_to_message_id:
+ me = bot.me or await bot.get_me()
+ if not me.is_premium:
+ return await message.edit("你好像不是大会员。。。")
+ try:
+ string = await get_status_emoji(bot, message.reply_to_message)
+ except FileNotFoundError:
+ string = "获取自定义 emoji 状态失败。"
+ await message.edit(string)