Message

Message

ki


Message- это класс, который создаётся TelegramBotAPI при получении сообщений. Когда пользователь отправляет сообщение боту, Telegram API создаёт класс из данных сообщения.

Давайте посмотрим что там находится, и научится извлекать данные из message.

Для этого создадим примитивного бота, который отправит нам данные message:

import telebot 
from telebot import types

#используйте токен выданный BotFather
TOKEN ="914523141:AAG51M9RB51O-zcop7uFb88QaOvwCHrGcoU" 
bot = telebot.TeleBot(TOKEN)

@bot.message_handler(content_types=['text'])
def mes(message):
   bot.send_message(message.chat.id,message)

bot.polling(none_stop=True)

Вот, что из это получилось, на наше текстовое сообщение, бот отправил объект message:

данные message

В этом объекте находится информация отправленного сообщения:

тип сообщения, id-сообщения, данные аккаунта с которого было отправлено сообщение, и другая полезная информация.

Получение данных из message:

message.from_user - данные пользователя. Для наглядности отправим их с помощью бота:

bot.send_message(message.chat.id,message.from_user)

Вот, что мы получили.

message.from_user

Как видим у from_user есть несколько пар ключ-значение. Из from_user возможно извлечь интересующие нас данные:

message.from_user.id           # id-пользователя
message.from_user.first_name   # имя пользователя
message.from_user.username     # логин пользователя 
и т.д.


message.chat - данные чата

message.chat
message.chat.type        # Тип чата. Типы чатов: «частный»,                          «групповой», «супергруппа» или «канал».
message.chat.username    # логин пользователя 
message.chat.id          # id-чата
и т.д.

По аналогии можно извлекать и другие данные из message:

message.content_type           # тип сообщения
message.message_id             # id-сообщения
message.text                   # текст сообщения
и т.д.







Report Page