Telegram Bot - действия на InlineKeyboardMarkup?

Всем привет. Встала задачка - запилить небольшой бот для телеграма, последовательное заполнение данных, как текстом, так и выбором с кнопок, и столкнулся с некоторыми проблемами.

Взял вот эту библиотеку и начал импровизировать

<?php
    $token = '';
    require 'vendor/autoload.php';
    $bot = new \TelegramBot\Api\Client($token);
   
    $bot->command('start', function ($message) use ($bot) {
        $text = "Привет!\n  ";
        $keyboard = new \TelegramBot\Api\Types\Inline\InlineKeyboardMarkup(
                [
                    [
                        ['text'=> 'Ссылка', 'url'=>'http://google.com']
                    ]
                ]
            );
        
        $bot->sendMessage($message->getChat()->getId(), $text, null, false, null, $keyboard);
    });
    
    $bot->command('about', function($message) use ($bot){
        $text = 'Текст из команды /about';
        $bot->sendMessage($message->getChat()->getId(), $text);
    });

    $bot->command('btn',function($message) use($bot){
        $keyboard = new \TelegramBot\Api\Types\ReplyKeyboardMarkup(array(array("Кнопка 1", "Кнопка 2", "Кнопка 3")), true); 
        
        $bot->sendMessage($message->getChat()->getId(), "Кнопочки", null, false, null, $keyboard);    
    });
    
    $bot->on(function (\TelegramBot\Api\Types\Update $update) use ($bot) {
            $msg = $update->getMessage();
            
            $bot->sendMessage($msg->getChat()->getId(), $msg->getText());
        }, function () {
            return true;
        });
        
    $bot->run();
    ?>

В принципе, все отдельно работает, кроме одного - хотелось бы, что бы была возможность отправлять команды из inline-клавиатуры, т.е. иметь нечто вида:

$keyboard = new \TelegramBot\Api\Types\Inline\InlineKeyboardMarkup(
                    [
                        [
                            ['text' => 'Инфо', 'callback_data' => '/about']
                        ],
                        [
                            ['text'=> 'Ссылка', 'url'=>'http://google.com']
                        ]
                    ]
                );

Но так, естественно, не работает. Может быть, кто подскажет, реально ли такое вообще реализовать? И если да, то как? Заранее спасибо от несмыслёныша.


Ответы (0 шт):