InlineCallback с подтверждением
InlineInlineCallback с подтверждением и базовой обработкой результата нет
Для InlineCallback кнопок можно сделать обертку с помощью которой пользователь должен будет сначала подтвердить действие и только после этого оно будет выполнено.
Создаете InlineCallback кнопку, после чего оборачиваете ее с помощью InlineCallbackWithConfirmation.
Пример кода:
/// <summary>
/// Команда отработает для бота с botId 0.
/// Команда отработает если пользователь напишет InlineConfirm.
/// </summary>
[ReplyMenuHandler("InlineConfirm")]
public static async Task InlineConfirm(IBotContext context)
{
//Кнопка для которой нужно создать подтверждение.
var exampleInlineCallback = new InlineCallback<EntityTCommand<long>>("Кнопка с подтвержением", CustomTHeaderTwo.ExampleThree, new EntityTCommand<long>(3, ActionWithLastMessage.Delete));
//Обертка кнопки.
var exampleWithConfirmation = new InlineCallbackWithConfirmation(exampleInlineCallback, ActionWithLastMessage.Delete);
//Создание нового меню.
List<IInlineContent> menu = new() { exampleWithConfirmation } ;
var testMenu = MenuGenerator.InlineKeyboard(1, menu);
var option = new OptionMessage();
//Передача меню в настройки
option.MenuInlineKeyboardMarkup = testMenu;
string msg = "InlineCallback с подтверждением";
//Отправка сообщение с меню
await PRTelegramBot.Helpers.Message.Send(context, msg, option);
}


Если на кнопку "нет " не делать обработку, она по умолчанию удалит текущее сообщение.
InlineInlineCallback с подтверждением и кнопкой назад или кастомной обработкой кнопки нет



Last updated