Написал бота, который по команде должен вывести сообщение с динамической инлайн клавиатурой, но он выводит только ошибку - Bad Request: can't parse inline keyboard button: InlineKeyboardButton must be an Object
for ($i = 0; $i < $array_count; $i++) {
$token_get = secret_token_get($user_id)[$i];
$token_symbols = substr($token_get['token'], -5);
global $buttons;
$buttons = secret_token_get($user_id);
$buttons = array_map(function ($token_symbols) {
return [[['text' => $token_symbols, 'callback_data' => $token_symbols]]];
}, $buttons);
}
$post = [
'chat_id' => $user_id,
'text' => '<b>All your private tokens are listed here: </b>',
'parse_mode' => 'html',
'reply_markup' => inline_keyboard($buttons)
];
sendRequest('sendMessage', $post);
Ответ от Telegram:
{
"chat_id": 915597301,
"text": "<b>All your private tokens are listed here: </b>",
"parse_mode": "html",
"reply_markup": "{\"inline_keyboard\":[[[{\"text\":{\"token\":\"123\"},\"callback_data\":{\"token\":\"123\"}}]],[[{\"text\":{\"token\":\"321\"},\"callback_data\":{\"token\":\"321\"}}]],[[{\"text\":{\"token\":\"213\"},\"callback_data\":{\"token\":\"213\"}}]]]}"
}
Bad Request: can't parse inline keyboard button: InlineKeyboardButton must be an Object