Почему Telegram bot API метод answerCallbackQuery не показывает алерт?
попробуй вот это:
$tg = json_decode(file_get_contents('php://input'), true);
function tlgrm($method, $data, $client) {
  $data["chat_id"] = $client;
  $data["parse_mode"] = "html";
  $ch = curl_init("https://api.telegram.org/---токен---/$method");
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
  curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
  $r = json_decode(curl_exec($ch), true);
  curl_close($ch);
  return $r;
}
 
$client = $tg['callback_query']['from']['id'];
$cb_id = $tg['callback_query']['id'];
tlgrm('answerCallbackQuery', ['callback_query_id'=> $cb_id, 'text' => 'СООБЩЕНИЕ', 'show_alert' => true],$client);
создай php файл, засунь туда этот код и установи на него webhook.
Проблема была в библиотеке, которую я использовал https://github.com/php-telegram-bot/core
Если получать апдейты из телеграма при помощи метода этой библиоткеи handleGetUpdates(), то библиотека сама отправляет пустые ответы на CallbackQuery. 
Получается, что я пытался ответить на тот же CallbackQuery еще раз, ответ от Телеграма приходит - ОК, а реально Телеграм обрабатывал только первый ответ, который автоматически слала библиотека.