快速摘要
每个
callback_query.id成功应答一次,结束按钮加载。回调事件最长投递 150 秒。从点击产生回调起,API 应答窗口为 300 秒。
复合编辑要保留按钮或媒体说明时,重新提交完整值。
应答按钮回调与原地编辑消息
接收并应答回调
在需要的事件类型中显式订阅
callback_query。省略allowed_updates会沿用已保存的策略,传空数组恢复默认。按
update_id对重投去重。执行操作前验证点击人及当前业务状态。每次点击会产生独立回调 ID。尽快调用
answerCallbackQuery。同一个 ID 只有首次有效应答成功。重复、处理中、过期或无效的 ID 返回400。
curl -X POST "https://call.mp.net/bot/answerCallbackQuery" \
-H "Authorization: Bearer $MPCHAT_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"callback_query_id":"REPLACE_WITH_CALLBACK_ID"}'
text 和 show_alert 是兼容字段,当前客户端不会显示 Toast 或 Alert。需要反馈处理结果时,可以编辑原消息或发送新消息。copy_text 在本地复制,不产生回调。
选择编辑方法
方法 | 可改内容 |
| 原生文本或无媒体的 Inline 文本,可编辑实体、链接预览和按钮。 |
| 图片、视频、动图和文档的说明与实体。非空按钮仅支持 V2 媒体。 |
| 同类型替换图片、视频、动图或文档。非空按钮仅支持 V2 媒体。 |
| 只改受支持的原生文本或 Inline 消息按钮,保留其余内容。 |
四种方法均编辑当前 Bot 发出的消息,成功时返回 Message。editMessageText 传 parse_mode 会返回 400。省略 link_preview_options 会重置显式预览设置。
保留或清空现有内容
复合编辑时,省略
reply_markup、传 null 或传空键盘会清除旧按钮。要保留按钮,请重新提交完整键盘。编辑媒体时,省略说明或传空说明会清除旧说明和实体。要保留,请重新提交说明和实体。
编辑文本时,省略
entities会重新识别提及。显式传空数组会清除实体,且不会重新识别。
{"chat_id":"12345","message_id":678,"text":"已通过","reply_markup":{"inline_keyboard":[[{"text":"查看详情","url":"https://example.com/details"}]]}}这个 editMessageText 请求显式保留「查看详情」按钮。请使用可编辑消息原有的 chat_id 和 message_id。
只清除按钮并保留消息其余内容时,使用 editMessageReplyMarkup,并传入空键盘。
{"chat_id":"12345","message_id":678,"reply_markup":{"inline_keyboard":[]}}
