カスタムキーボードを使用して、選択したオプションを取得します。電報ボットのキーボード入力からの応答を得るには?
選択したオプションを取得するにはどうすればよいですか?例はありますか?
私の質問はここでは、 "ノード・電報・ボット-API" により
に答えている:How to get the response of the keyboard selection?
は、C#のための任意の解決策はありますか?
カスタムキーボードを使用して、選択したオプションを取得します。電報ボットのキーボード入力からの応答を得るには?
選択したオプションを取得するにはどうすればよいですか?例はありますか?
私の質問はここでは、 "ノード・電報・ボット-API" により
に答えている:How to get the response of the keyboard selection?
は、C#のための任意の解決策はありますか?
SendTextMessageAsync
を呼び出すと、「カスタム返信キーボード」を指定するIReplyMarkup
オブジェクトが渡されます。私はTelegram Bot APIについてはあまりよく分かりませんが、これはあなたがリンクしたGitHubの問題によって参照されるものと同じように見えます。
several implementations listed in the API documentationと思われます。私はどちらかInlineKeyboardMarkup
またはReplyKeyboardMarkup
あなたが探していると思われる。
私はReplyKeyboardMarkupを探しています –
カスタムキーボードを作成するには、テキストメッセージを送信してIReplyMarkup
を渡す必要があります。選択されたオプションは、OnMessage
イベントで処理できるメッセージとして送信されます。返信マークとしてReplyKeyboardHide
を設定すると、カスタムキーボードを非表示にすることができます。ここで
は一例です。ここで
private const string FirstOptionText = "First option";
private const string SecondOptionText = "Second option";
private async void BotClientOnMessage(object sender, MessageEventArgs e)
{
switch (e.Message.Text)
{
case FirstOptionText:
await BotClient.SendTextMessageAsync(e.Message.Chat.Id, "You chose the first option", replyMarkup:new ReplyKeyboardHide());
break;
case SecondOptionText:
await BotClient.SendTextMessageAsync(e.Message.Chat.Id, "You chose the second option", replyMarkup:new ReplyKeyboardHide());
break;
default:
await BotClient.SendTextMessageAsync(e.Message.Chat.Id, "Hi, select an option!",
replyMarkup: new ReplyKeyboardMarkup(new[]
{
new KeyboardButton(FirstOptionText),
new KeyboardButton(SecondOptionText),
}));
break;
}
}
私はこれが助けて欲しい!
Telegram Bot APIにアクセスするライブラリはどれですか? –
私はtelegram.botを使用しています –