Перейти к содержимому

kbd

Метод управляет клавиатурой и inline-кнопками в сообщении

Параметры метода

#НазваниеТипОписание
1buttonsarrayПринимает объект клавиатуры
2one_timeboolСвернуть клавиатуру при нажатии? true/false
3resizeboolМенять размер кнопок в клавиатуре? true/false

Возвращает

Message|Action - экземпляр класса Message или Action, содержащий информацию о сообщении

Контекст вызова

Этот метод реализован через общий трейт и возвращает текущий экземпляр объекта. Тип возвращаемого значения зависит от того, какой класс вы используете в данный момент:

  • При вызове у экземпляра Message вернется объект Message.
  • При вызове у экземпляра Action вернется объект Action.

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

php
<?php    
require_once __DIR__ . '/vendor/autoload.php'; 
use ZenithGram\ZenithGram\ZG; 
use ZenithGram\ZenithGram\Bot; 
use ZenithGram\ZenithGram\Button; 

$tg = ZG::create(BOT_TOKEN);
$bot = new Bot($tg);

// Создаем кнопку и сразу добавляем обработчик
$bot->btn('buttonBot', 'Оценить')
    ->text('Оцените бота от 1 до 5');

$bot->onBotCommand('kbd', '/kbd')
    ->func(function(ZG $tg) {
        $tg->msg("Клавиатура:")
            ->kbd([
                [Button::text('Показать профиль')],
                // Стандартная текстовая кнопка
                ['buttonBot']
                // Кнопка, созданная через класс Bot
            ], one_time: true, resize: true)
            ->send();
    });
    
// Обрабатываем нажатие на кнопку "Показать профиль"
$bot->onText('profile', 'Показать профиль')
    ->text('Ваш профиль пуст');

$bot->run();

Формат клавиатуры

Клавиатура - массив из массивов, которые содержат кнопки

php
$kbd = [
    ['button1', 'button2'],             // Кнопки в первом ряду
    ['button3'],                        // Кнопки во втором ряду
    ['button4', 'button5', 'button6']   // Кнопки в третьем ряду
];

Вспомогательные методы

  • Класс Button - Класс для создания кнопок
  • btn - Создание кнопки классом Bot
  • answerCallbackQuery - Отправка уведомления о нажатии callback-кнопки

Опубликовано под лицензией MIT.