Клавиатура (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?