diff --git a/skynet/frontend/chatbot/__init__.py b/skynet/frontend/chatbot/__init__.py index ac60eee..106ac7f 100644 --- a/skynet/frontend/chatbot/__init__.py +++ b/skynet/frontend/chatbot/__init__.py @@ -22,7 +22,8 @@ from skynet.constants import ( HELP_TOPICS, HELP_UNKWNOWN_PARAM, COOL_WORDS, - DONATION_INFO + DONATION_INFO, + UNKNOWN_CMD_TEXT ) from skynet.frontend import validate_user_config_request from skynet.frontend.chatbot.db import FrontendUserDB @@ -473,3 +474,6 @@ class BaseChatbot(ABC): return await self.new_msg(self.main_group, msg.text) + + async def echo_unknown(self, msg: BaseMessage): + await self.reply_to(msg, UNKNOWN_CMD_TEXT) diff --git a/skynet/frontend/chatbot/telegram.py b/skynet/frontend/chatbot/telegram.py index 58e2bf6..ccaf271 100644 --- a/skynet/frontend/chatbot/telegram.py +++ b/skynet/frontend/chatbot/telegram.py @@ -264,6 +264,12 @@ class TelegramChatbot(BaseChatbot): append_handler(bot, BaseCommands.REDO, self.handle_request) + @bot.message_handler(func=lambda _: True) + async def unknown_cmd(tg_msg: TGMessage): + if tg_msg.text[0] == '/': + msg = TelegramMessage(cmd='unknown', msg=tg_msg) + await self.echo_unknown(msg) + self.bot = bot self._main_room: TelegramChatRoom | None = None