mirror of
https://github.com/BushlanovDev/max-bot-api-client-php.git
synced 2026-08-17 20:09:57 +00:00
8fa63fa10b40890972f22f0a7e298364fcdc518d
Max Bot API Client library for PHP
Caution
На мой взгляд
Max Messengerявляется ни чем иным как малварью, созданной для слежки за гражданами РФ. Настоятельно не рекомендую использовать его на реальных устройствах, с настоящим номером телефона, и для личной переписки.
Important
Библиотека в стадии активной разработки.
Быстрый старт
Если вы новичок, то можете прочитать официальную документацию, написанную разработчиками Max.
Получение токена
Откройте диалог с MasterBot, следуйте инструкциям и создайте нового бота. После создания бота MasterBot отправит вам токен.
Установка библиотеки
composer require bushlanov-dev/max-bot-api-client-php
Использование
Отправка сообщения с клавиатурой
$api = new \BushlanovDev\MaxMessengerBot\Api('YOUR_BOT_API_TOKEN');
$api->sendMessage(
userId: 123, // ID пользователя получателя сообщения
chatId: 321, // Или ID чата, в который нужно отправить сообщение
text: 'Привет!', // Текст сообщения, вы можете использовать HTML или Markdown
attachments: [
new InlineKeyboardAttachmentRequest([
[new CallbackButton('Нажми меня!', 'payload_button1')],
[new LinkButton('Нажми меня!', 'https://example.com')],
]),
],
format: MessageFormat::Markdown, // Формат сообщения (Markdown или HTML)
);
Подписка на вэб хуки
$api->subscribe(
new \BushlanovDev\MaxMessengerBot\Models\SubscriptionRequest(
'https://example.com/webhook', // URL на который будут приходить хуки
'super_secret', // Секретная фраза для проверки хуков
[
// Типы хуков которые вы хотите получать (либо ничего не указывать, чтобы получать все)
\BushlanovDev\MaxMessengerBot\Enums\UpdateType::MessageCreated,
],
),
);
Обработка хуков
$webhookHandler = $api->createWebhookHandler();
$webhookHandler->addHandler(UpdateType::BotStarted, function (BotStartedUpdate $update, Api $api) {
$api->sendMessage(
chatId: $update->chatId,
text: 'Я запущен!',
);
});
Реализованные методы
Bots
GET /me(getBotInfo) - Получение информации о боте.PATCH /me(editBotInfo) - Редактирование информации о боте.
Chats
GET /chats(getChats) - Получение списка всех чатов бота.GET /chats/{chatLink}(getChatByLink) - Получение информации о чате по ссылке.GET /chats/{chatId}(getChat) - Получение информации о чате по ID.PATCH /chats/{chatId}(editChat) - Редактирование информации о чате.DELETE /chats/{chatId}(deleteChat) - Удаление чата.POST /chats/{chatId}/actions(sendAction) - Отправка действия в чат (например, "печатает...").GET /chats/{chatId}/pin(getPinnedMessage) - Получение закрепленного сообщения.PUT /chats/{chatId}/pin(pinMessage) - Закрепление сообщения.DELETE /chats/{chatId}/pin(unpinMessage) - Открепление сообщения.GET /chats/{chatId}/members/me(getMembership) - Получение информации о членстве бота в чате.DELETE /chats/{chatId}/members/me(leaveChat) - Выход бота из чата.GET /chats/{chatId}/members/admins(getAdmins) - Получение администраторов чата.POST /chats/{chatId}/members/admins(addAdmins) - Назначение администраторов чата.DELETE /chats/{chatId}/members/admins/{userId}(deleteAdmins) - Снятие прав администратора.GET /chats/{chatId}/members(getMembers) - Получение участников чата.POST /chats/{chatId}/members(addMembers) - Добавление участников в чат.DELETE /chats/{chatId}/members(deleteMember) - Удаление участника из чата.
Subscriptions
GET /subscriptions(getSubscriptions) - Получение списка Webhook-подписок.POST /subscriptions(subscribe) - Создание Webhook-подписки.DELETE /subscriptions(unsubscribe) - Удаление Webhook-подписки.GET /updates(getUpdates) - Получение обновлений через Long-Polling.
Upload
POST /uploads(getUploadUrl) - Получение URL для загрузки файла.
Messages
GET /messages(getMessages) - Получение списка сообщений из чата.POST /messages(sendMessage) - Отправка сообщения.PUT /messages(editMessage) - Редактирование сообщения.DELETE /messages(deleteMessage) - Удаление сообщения.GET /messages/{messageId}(getMessageById) - Получение сообщения по ID.GET /videos/{videoToken}(getVideoAttachmentDetails) - Получение детальной информации о видео.POST /answers(answerOnCallback) - Ответ на нажатие callback-кнопки.
Лицензия
Данная библиотека распространяется под лицензией MIT - подробности см. в файле LICENSE.
Languages
PHP
100%