🌙

Типы объектов

Типы объектов

Все типы — dataclass'ы из pykodaribot.

User

ПолеТипОписание
idintID пользователя
is_botboolЭто бот
first_namestrИмя
usernamestr или None@username

Chat

ПолеТипОписание
idintID чата
typestrdirect, group, channel
titlestr или NoneНазвание
usernamestr или None@username
descriptionstr или NoneОписание
slow_mode_delayintМедленный режим, сек
who_can_sendstrall или admins
permissionsChatPermissions или NoneПрава участников по умолчанию
pinned_messageMessage или NoneЗакреплённое сообщение
member_countint или NoneЧисло участников

Message

ПолеТипОписание
message_idintID сообщения
chatChatЧат
dateintUnix timestamp
from_userUser или NoneОтправитель
textstr или NoneТекст или подпись
media_urlstr или NoneСсылка на файл
media_typestr или Noneimage, video, audio, file
media_namestr или NoneИмя файла
reply_to_message_idint или NoneОтвет на сообщение
forward_from_user_idint или NoneОригинальный отправитель
forward_from_user_namestr или NoneЕго имя
forward_from_chat_idint или NoneЧат-источник

Свойство msg.is_forwardTrue, если заполнено forward_from_user_name.

Методы:

await msg.answer("текст")     # в тот же чат
await msg.reply("текст")      # с цитированием
await msg.pin()               # закрепить
await msg.delete()            # удалить
await msg.forward_to(chat_id) # не поддерживается сервером
await msg.react("👍")          # не поддерживается сервером

CallbackQuery

ПолеТипОписание
idstrID для подтверждения
from_userUserКто нажал
datastr или Nonecallback_data
messageMessage или NoneСообщение с кнопкой
await cb.answer()

Update

ПолеТип
update_idint
messageMessage или None
edited_messageMessage или None
callback_queryCallbackQuery или None
message_reactionMessageReaction или None (не приходит)

ChatMember

ПолеТипОписание
userUserУчастник
statusstrcreator, administrator, member
custom_titlestr или NoneЗвание
permissionsChatAdministratorRights или NoneПрава, только у админов

ChatPermissions

Права участников по умолчанию: send_messages, send_media, embed_links, invite_users, pin_messages, change_info.

from pykodaribot import ChatPermissions

perms = ChatPermissions(send_messages=True, send_media=False)
await bot.set_chat_permissions(chat_id, perms)

ChatAdministratorRights

Права администратора: delete_messages, remove_users, block_users, pin_messages, invite_users, change_info, add_admins, post_messages, edit_messages.

ChatInviteLink

ПолеТипОписание
invite_linkstrПолная ссылка
namestr или NoneНазвание
expire_datestr или NoneСрок действия
member_limitint или NoneЛимит вступлений
uses_countintСколько раз использована
is_revokedboolОтозвана ли

ChatAdminLogEntry

ПолеТипОписание
idintID записи
actionstrТип действия
actor_user_idintКто выполнил
target_user_idint или NoneНад кем
target_message_idint или NoneНад каким сообщением
payloaddict или NoneДетали, в 0.3.0 не заполняется
created_atstr или NoneВремя

InlineKeyboardMarkup и InlineKeyboardButton

from pykodaribot import InlineKeyboardMarkup, InlineKeyboardButton

kb = InlineKeyboardMarkup(inline_keyboard=[
    [InlineKeyboardButton(text="Да", callback_data="yes"),
     InlineKeyboardButton(text="Нет", callback_data="no")],
    [InlineKeyboardButton(text="Сайт", url="https://kodari.ru")],
])

BotCommand

from pykodaribot import BotCommand

BotCommand(command="start", description="Начать работу")

BotError

ПолеТипОписание
error_codeintHTTP-код ошибки
descriptionstrТекст от сервера

MessageReaction, ReactionCount, PinnedMessage

Типы объявлены в SDK, но сервер соответствующие данные не отдаёт.

25 просмотров