From 7194d702cc07839d4520f8a1f5a0ec3d86a066c5 Mon Sep 17 00:00:00 2001 From: Rykov7 Date: Mon, 5 Dec 2022 13:02:53 +0300 Subject: [PATCH] add start, nometa, neprivet --- README.md | 6 ++++++ app/bot.py | 25 +++++++++++++++++++++++++ app/config.py | 2 +- 3 files changed, 32 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index d6756ed..314cb9f 100644 --- a/README.md +++ b/README.md @@ -21,3 +21,9 @@ Clone repository, edit code if needed and deploy on your sever. ### Where can I get more help, if I need it? Bot is easily understandable reading in-code comments of the handler functions, also read [PyTelegramBotAPI documentation](url=https://github.com/eternnoir/pyTelegramBotAPI) for library help. + + +### How do I read logs of running Lutz bot daemon? +Continuous log reading on Linux: + +```# journalctl --unit=lutz.service -f --no-pager``` \ No newline at end of file diff --git a/app/bot.py b/app/bot.py index 4441df4..248acdb 100644 --- a/app/bot.py +++ b/app/bot.py @@ -32,6 +32,15 @@ zen_rows = ['Beautiful is better than ugly.', 'Explicit is better than implicit. "Namespaces are one honking great idea — let's do more of those!"] +@bot.message_handler(commands=['start']) +def start(message: types.Message): + """ Start """ + log_msg = f'[START] {message.from_user.id} {message.from_user.first_name}' + if message.from_user.last_name: + log_msg += f' {message.from_user.first_name}' + logging.warning(log_msg) + + def check_spam_list(type_message: types.Message) -> bool: """ Check for mentioning unwanted persons in text. """ if type_message.from_user.username not in WHITEUN and type_message.from_user.id not in WHITEIDS: @@ -247,6 +256,22 @@ def send_tsya_link(message: types.Message): bot.reply_to(message.reply_to_message, link, parse_mode='HTML', disable_web_page_preview=True) +@bot.message_handler(commands=['nometa']) +def send_nometa(message: types.Message): + """ No meta """ + answer = 'Пожалуйста, не задавайте мета-вопросов в чате!' + if message.reply_to_message: + bot.reply_to(message.reply_to_message, answer, parse_mode='HTML', disable_web_page_preview=True) + + +@bot.message_handler(commands=['neprivet']) +def send_neprivet(message: types.Message): + """ Neprivet. """ + answer = 'Непривет' + if message.reply_to_message: + bot.reply_to(message.reply_to_message, answer, parse_mode='HTML', disable_web_page_preview=True) + + @bot.message_handler(commands=['g']) def google_it(message: types.Message): """ Google it! """ diff --git a/app/config.py b/app/config.py index 33108e8..48a72d6 100644 --- a/app/config.py +++ b/app/config.py @@ -17,7 +17,7 @@ PYTHONCHATRU = -1001338616632 # pythonchatru URL_RX = re.compile(r'\w+\.\w+/\w+') ALLOWED_WORDS = ['pastebin', 'github', 'google', 'nometa', 'python', 'django', 'flask', 'fastapi', - 'stackoverflow', 'habr', 'medium', 'youtube', 'stepik', 'telegraph', '#rtfm'] + 'stackoverflow', 'habr', 'medium', 'youtu', 'stepik', 'telegraph', '#rtfm'] WHITEUN = set(os.environ.get('whitelist', '<<