如何在电报机器人(C#)中不使用“AnswerCallbackQueryAsync”来回答“CallbackData”

时间:2017-09-22 13:28:19

标签: c# telegram telegram-bot

  

主要问题是我想向用户发送答案而不显示   电报中的通知或警报,我想在主要显示消息   面板和其他消息一样。

此行代码只会触发通知

  await api.AnswerCallbackQueryAsync(update.CallbackQuery.Id,"text");

如何响应此行代码的回调?

  await api.SendTextMessageAsync(update.Message.Chat.Id,"text");

1 个答案:

答案 0 :(得分:1)

您应该使用它,因为这将停止从电报中加载GIF

如果您不想显示警报,请保留text参数null,它将不会显示警报。

然后使用SendTextMessageAsync方法将消息发送到其他消息。

您的代码应如下所示:

private void Bot_OnCallbackQuery(object sender, CallbackQueryEventArgs e)
{
    if (e.Query.Data == "Hello")
    {
        string reply = "Hi!";

        // Answer with null parameter:
        await Bot.AnswerCallbackQuery(e.Query.Id, null);

        // Reply with message instead:
        await Bot.SendTextMessageAsync(e.Query.Message.Chat, reply);
    }

}