При установке параметра reply_markup, ответ не приходит. Телеграм бот
Телеграм бот на laravel. Все работает хорошо, но кода я устанавливаю дополнительный параметр reply_markup, сообщения не приходят и в логах ошибки нету.
$buttons = [
'inline_keyboard'=>[
[
[
'text' => 'My Button Text',
'callback_data' => ''
]
]
]
];
$telegram->sendGanres($chat_id,$content,json_encode($buttons));
public function sendGanres($chat_id,$content,$buttons)
{
return Http::post(self::TM_URL.$this->tm_api_key.'/sendMessage',[
'chat_id'=>$chat_id,
'text' => $content,
'reply_markup' => $buttons
]);
}
если закомментировать reply_markup, то работает.
Ответы (1 шт):
Автор решения: Георгий
→ Ссылка
Я так понял вам нужно сделать обработку нажатия на InlineButton
Вот пример как это сделать на C#:
Создаем саму клавиатуру:
InlineKeyboardMarkup submenu_propertShower = new(new[] {
new[]
{
InlineKeyboardButton.WithCallbackData("♻️ В начало меню ♻️", callbackData: "key_mainMenu")
} });
Делаем обработчик:
switch (context.Update?.CallbackQuery?.Data)
{
case "key_mainMenu":
await context.Client.SendTextMessageAsync(
chatId: context.ChatId,
text: "Текст",
replyMarkup: key.mainMenu,
cancellationToken: cancellationToken);
break;
}