Untitled
unknown
python
a year ago
2.1 kB
8
Indexable
import os
import telebot
from dotenv import load_dotenv
load_dotenv('config.env')
BOT_TOKEN = os.getenv('BOT_TOKEN')
bot = telebot.TeleBot(BOT_TOKEN)
@bot.message_handler(content_types=['text'], chat_types=['group', 'supergroup', 'private'])
def handle_message(message):
"""Handle all text messages"""
# Информация о чате
chat_type = message.chat.type # 'private' для личных сообщений, 'group' или 'supergroup' для групп
# Информация об отправителе
user_id = message.from_user.id # ID пользователя
username = message.from_user.username # Username пользователя (без @)
first_name = message.from_user.first_name # Имя пользователя
# Проверяем, личное ли это сообщение боту
is_private = chat_type == 'private'
# Проверяем, является ли отправитель конкретным пользователем
is_specific_user = username == 'гыук' # сравниваем без @
# Проверяем, является ли сообщение ответом другому пользователю
is_reply = message.reply_to_message is not None
if is_reply:
reply_to_username = message.reply_to_message.from_user.username
# Проверяем, упоминается ли бот в сообщении (если бот @mybot)
mentions_bot = '@mybot' in message.text
# Пример использования:
if 'пыщ' in message.text.lower():
if is_private:
bot.reply_to(message, 'пыщь-пыщь ололо (личное сообщение)')
elif is_specific_user:
bot.reply_to(message, f'пыщь-пыщь ололо (от пользователя {username})')
else:
bot.reply_to(message, 'пыщь-пыщь ололо (групповое сообщение)')
if __name__ == '__main__':
print('Bot is running...')
bot.infinity_polling(allowed_updates=['message'])
Editor is loading...
Leave a Comment