mirror of
https://github.com/teloxide/teloxide.git
synced 2025-01-03 17:52:12 +01:00
Merge pull request #713 from teloxide/improve_buttons_example2
Properly handle callback queries in `examples/buttons.rs`
This commit is contained in:
commit
be9c20ef32
1 changed files with 11 additions and 9 deletions
|
@ -112,16 +112,18 @@ async fn callback_handler(
|
||||||
if let Some(version) = q.data {
|
if let Some(version) = q.data {
|
||||||
let text = format!("You chose: {version}");
|
let text = format!("You chose: {version}");
|
||||||
|
|
||||||
match q.message {
|
// Tell telegram that we've seen this query, to remove 🕑 icons from the
|
||||||
Some(Message { id, chat, .. }) => {
|
//
|
||||||
|
// clients. You could also use `answer_callback_query`'s optional
|
||||||
|
// parameters to tweak what happens on the client side.
|
||||||
|
bot.answer_callback_query(q.id).await?;
|
||||||
|
|
||||||
|
// Edit text of the message to which the buttons were attached
|
||||||
|
if let Some(Message { id, chat, .. }) = q.message {
|
||||||
bot.edit_message_text(chat.id, id, text).await?;
|
bot.edit_message_text(chat.id, id, text).await?;
|
||||||
}
|
} else if let Some(id) = q.inline_message_id {
|
||||||
None => {
|
|
||||||
if let Some(id) = q.inline_message_id {
|
|
||||||
bot.edit_message_text_inline(id, text).await?;
|
bot.edit_message_text_inline(id, text).await?;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
log::info!("You chose: {}", version);
|
log::info!("You chose: {}", version);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue