Skip to main content

Crate maxbot

Crate maxbot 

Source
Expand description

§maxbot

Библиотека для работы с API мессенджера MAX на языке Rust.

Предоставляет клиент для отправки сообщений, получения обновлений, работы с вложениями и inline‑клавиатурами, а также управления глобальными настройками (базовый URL, ограничение частоты запросов).

§Пример использования

use maxbot::{Attachment, MaxClient, SendMessageParamsBuilder};

let client = MaxClient::new("your_api_token");

// Отправка изображения из локального файла
let builder = SendMessageParamsBuilder::new()
    .text("Вот изображение")
    .chat_id(123456789)
    .attachment(Attachment::image_local("cat.jpg"));

let message_ids = client.send_message_builder(builder).await?;
println!("Сообщение отправлено, ID: {:?}", message_ids);

Re-exports§

pub use vcard::VCard;
pub use vcard::VCardProperty;
pub use vcard::VCardParamMap;
pub use vcard::parse_vcard;
pub use vcard::VCardError;

Modules§

vcard
Разбор и генерация vCard (формат VCF).

Structs§

BotCommand
Команда бота.
BotInfo
Информация о боте.
CallbackQuery
Запрос функции обратного вызова при нажатии на строковую кнопку.
Chat
Групповой чат.
ChatAdminRequest
Параметры для добавления администратора в чат.
ChatMember
Участник чата (пользователь или бот).
Contact
Контакт (устаревшее поле, оставлено для совместимости).
ContactData
Данные контакта для вложения contact.
ContactPayload
Полезная нагрузка для контакта.
Context
Контекст, передаваемый каждому обработчику.
Dispatcher
Диспетчер направляет входящие обновления зарегистрированным обработчикам.
EditMessageParams
Параметры для редактирования сообщения.
FilePayload
Полезная нагрузка для файлов.
GetMessagesParams
Параметры для получения списка сообщений чата.
GetUpdatesParams
Image
Изображение (аватар, иконка).
InlineKeyboard
Inline‑клавиатура (двумерный массив кнопок).
InlineKeyboardBuilder
Построитель inline‑клавиатуры.
InlineKeyboardButton
Кнопка inline‑клавиатуры.
KeyboardPayload
Полезная нагрузка для inline-клавиатуры.
Location
Геолокация.
LocationPayload
Полезная нагрузка для геолокации.
MaxClient
Клиент для взаимодействия с API MAX.
MediaPayload
Полезная нагрузка для медиа-вложений (изображение, видео, аудио).
Message
Сообщение.
MessageBody
Тело сообщения.
NewMessageBody
Тело нового сообщения для отправки или замены.
Recipient
Получатель сообщения.
ScheduledTaskContext
Контекст, передаваемый периодическим задачам.
SendMessageParams
Параметры для отправки сообщения.
SendMessageParamsBuilder
Построитель параметров для отправки сообщения.
ShareData
Данные для вложения share (отсылка/предпросмотр ссылки).
StartContext
Контекст, передаваемый обработчикам, запускаемым при старте бота (до начала polling).
StickerPayload
Полезная нагрузка для стикеров.
Subscription
Подписка на webhook.
UpdateChatInfo
Параметры для обновления информации о чате.
User
Пользователь MAX.
VideoInfo
Информация о видеофайле.

Enums§

Attachment
Тип вложения.
AttachmentData
Вложение из API MAX.
AttachmentSource
Источник файлового вложения: локальный файл или уже полученный токен.
ChatAdminPermissionKind
Права администратора чата.
ChatStatusKind
Статус чата.
ChatTypeKind
Тип чата.
Error
Тип ошибки, используемый во всей библиотеке.
Filter
Определяет, какие обновления интересуют обработчик.
KeyboardValidationError
Ошибка проверки inline-клавиатуры.
Update
Тип обновления (события), получаемого через long polling или webhook.
UpdateType
Тип обновления (строковый enum) – оставлен для обратной совместимости.

Traits§

MaxClientSimpleExt
Расширяющий типаж для MaxClient с быстрыми методами отправки.

Functions§

get_global_max_rps
Возвращает текущее глобальное ограничение RPS.
set_global_base_url
Устанавливает глобальный базовый URL API для всех клиентов.
set_global_max_rps
Устанавливает глобальное ограничение частоты запросов (RPS).
split_text
Основная функция разбиения текста

Type Aliases§

Result
Сокращение для Result<T, Error>.