На чистом РНР (если закрыть все скобки в этом огрызке кода), все прекрасно отображается и отправляется.
$resp = [
'chat_id' => $chat_id,
'text' => 'Вы находитесь в главном меню',
'reply_markup' => json_encode([
'inline_keyboard' => [
[
[
'text' => 'refresh',
'callback_data' => 'LALALALA'
]
],
[
[
'text' => 'LALALALA',
'callback_data' => 'LALALALA'
]
]
]])];
$url = "https://api.telegram.org/bot$bot_token/sendMessage?".http_build_query($resp);
file_get_contents($url);
При условии, разумеется, что передается корректный chat_id. Но если будет неправильный chat id, то тогда клавиатура вообще не отобразится, и тогда именно это было бы проблемой, а не вебхук.
Попробуйте сначала сформулировать, с чего вы взяли, что "не отправляет запроса вебхук на сервер".
Но в целом, я предполагаю что главная ваша проблема, конечно же - в отсутствии логирования.
Я не представляю, как вообще люди берутся писать ботов без базового логирования, которое включает
1. Сырой инпут, который пришел на вебхук.
2. Сырой запрос, отправленный в телегу
3. Разумеется, все ошибки РНР.
4. Разное другое отладочное логирование.