Клавиатура (KeyboardBuilder.php)
Перед использованием Сборщика клавиатуры, требуется создать переменную и вписать класс KeyboardBuilder
$bot = new Bot....
$bot->start(...... {
// подключаем
$kb = $bot->kBuilder();
});
Создание клавиатуры
@param array
— Массив с кнопками@param boolean
— Скрытие клавиатуры (Default: false)@param boolean
— Клавиатура внутри сообщения (Default: false)
$kb->create(array $keyboard = [], bool $one_time = false, bool $inline = false);
Очистка клавиатуры
$kb->remove();
Далее, нужно отправить клавиатуру через $kb->get()
Получение клавиатуры
Для отправки, нужно добавить при отправке сообщения параметр keyboard
$msg->reply("отправка клавиатуры", [
'keyboard' => $kb->get()
]);
Добавление обычной кнопки
@param string
— Текст кнопки@param string
— Цвет кнопкиwhite
— Белыйblue
— Синийred
— Красныйgreen
— Зелёный
@param string
— Дополнительная информация (Payload)
button(string $text, string $color = 'default', string $payload = '');
Добавление кнопки с ссылкой
@param string
— Текст кнопки@param string
— Ссылка
$kb->link(string $text, string $link);
Добавление кнопки с геолокацией
$kb->location ();
Добавление кнопки оплаты через vkpay
@param string
— параметры платежа VK Pay и идентификатор приложения
$kb->vkpay(string $hash);
Добавление кнопки с открытием приложения vkapps
@param string
— Текст кнопки@param integer
— Айди вызываемого приложения с типом VK Apps.@param integer
— Айди сообщества, в котором установлено приложение, если требуется открыть в контексте сообщества@param string
— Хэш для навигации в приложении, будет передан в строке параметров запуска после символа #
$kb->vkapps(string $text, int $app_id, int $owner_id, string $hash = '');
Пример добавления клавиатуры
require_once 'vkbot/autoload.php';
$bot = new Bot();
$bot->setToken('токен');
$bot->start(function($data)use($bot){
$msg = $bot->getMessage();
$kb = $bot->kBuilder(); // Подключаем билдера кнопок
if ($msg->get("кнопки")) {
$kb->create(
[
[ // <-- Начало первой строки
$kb->button('красная кнопка', 'red'),
$kb->button('зеленая кнопка', 'green'),
$kb->button('синяя кнопка', 'blue')
], // <-- Конец первой строки
[ // <-- Начало второй строки
$kb->link('кнопка с ссылкой', 'http://example.com'),
$kb->location()
] // <-- Конец второй строки
],
// one_time (По стандарту false),
// inline (По стандарту false)
);
/**
* Должно вывести клавиатуру в таком виде:
* [--] [--] [--]
* [--] [--]
*/
$msg->reply('Отправляю клавиатуру:', [
'keyboard' => $kb->get()
]);
}
});
Last updated
Was this helpful?