-
Notifications
You must be signed in to change notification settings - Fork 0
API Reference
T0yB0y edited this page Apr 12, 2026
·
1 revision
Полный список методов Max::Bot::Api.
api = Max::Bot::Api.new(ENV.fetch('MAX_BOT_TOKEN'))api.send_message(text, chat_id: 123)
api.send_message(text, user_id: 456)
api.send_message(text, chat_id: 123, format: 'markdown')
api.send_message(nil, chat_id: 123, attachment: attachment_hash)
api.send_message(nil, chat_id: 123, attachments: [att1, att2])| Параметр | Тип | Описание |
|---|---|---|
text |
String | Текст сообщения (может быть nil, если есть attachments или link) |
chat_id |
Integer | ID чата (группа/канал) |
user_id |
Integer | ID пользователя (личка) |
format |
String | Форматирование: 'markdown' или 'html'
|
attachment |
Hash / Array | Одно или несколько вложений |
attachments |
Array | Массив вложений |
notify |
Boolean | Уведомление о сообщении |
link |
String | Ссылка |
disable_link_preview |
Boolean | Отключить превью ссылки |
api.edit_message(message_id, 'Новый текст')
api.edit_message(message_id, 'Текст', format: 'markdown')
api.edit_message(message_id, nil, attachments: [new_attachment])api.delete_message(message_id)api.get_message(message_id)Ответ на callback от inline-кнопки:
api.answer_callback(callback_query_id, text: 'Готово!')
api.answer_callback(callback_query_id, show_alert: true, text: 'Ошибка!')
api.answer_callback(callback_query_id, url: 'https://example.com')| Параметр | Тип | Описание |
|---|---|---|
callback_query_id |
String | ID callback-запроса |
text |
String | Текст уведомления (опционально) |
show_alert |
Boolean | Показать всплывающее окно |
url |
String | URL для открытия |
Список всех групповых чатов:
api.chats
api.chats(count: 50)
api.chats(marker: 10)Информация о конкретном чате:
api.chat(chat_id)Информация о боте (проверка токена):
bot = api.me
bot[:name] # => "My Bot"
bot[:user_id] # => 1
bot[:is_bot] # => trueТекущие подписки:
api.subscriptionsПодписка на обновления через HTTPS:
api.set_webhook(
url: 'https://example.com/webhook',
update_types: %w[message_created bot_started],
secret: 'your_secret'
)Отключение вебхука (возврат к long polling):
api.delete_webhook('https://example.com/webhook')Получить слот для загрузки файла:
slot = api.create_upload(type: :image)
slot[:url] # => URL для загрузкиЗагрузить файл и получить метаданные:
meta = api.upload_file(type: :image, path: '/path/to/photo.jpg')
meta[:token] # => токен для прикрепленияЗагрузить и отправить одним вызовом:
api.send_media(type: :image, path: '/path/to/photo.jpg', text: 'Фото', chat_id: 123)