Telegram超级群组中replyKeyboardMarkup桌面及Web端失效问题求助
解决超级群组话题中键盘在桌面/Web端不显示的问题
针对你遇到的普通键盘(ReplyKeyboardMarkup)在超级群组话题里仅安卓端显示、桌面/Web端失效的问题,可尝试以下几种解决方案:
1. 替换为Inline键盘(最推荐)
普通键盘属于全局键盘,在Telegram桌面/Web端的超级群组话题场景下存在渲染兼容性问题,而Inline键盘是绑定到单条消息的,跨客户端一致性更好。
修改请求中的reply_markup为Inline键盘的URL编码JSON:
%7B%22inline_keyboard%22%3A%5B%5B%7B%22text%22%3A%22Button%22%2C%22callback_data%22%3A%22btn_action%22%7D%5D%5D%7D
完整请求示例:
https://api.telegram.org/bot<TOKEN>/sendMessage?chat_id=CHAT_ID&message_thread_id=ID&text=test&reply_markup=%7B%22inline_keyboard%22%3A%5B%5B%7B%22text%22%3A%22Button%22%2C%22callback_data%22%3A%22btn_action%22%7D%5D%5D%7D
2. 调整普通键盘的参数
如果坚持使用普通键盘,尝试添加resize_keyboard参数强制客户端适配,同时移除可能干扰渲染的selective参数:
修改后的reply_markupURL编码值:
%7B%22keyboard%22%3A%5B%5B%22Button%22%5D%5D%2C%22resize_keyboard%22%3Atrue%7D
完整请求示例:
https://api.telegram.org/bot<TOKEN>/sendMessage?chat_id=CHAT_ID&message_thread_id=ID&text=test&reply_markup=%7B%22keyboard%22%3A%5B%5B%22Button%22%5D%5D%2C%22resize_keyboard%22%3Atrue%7D
3. 检查机器人权限
确保机器人在超级群组中拥有足够权限:
- 将机器人设置为群组管理员,至少赋予发送消息和管理消息的基础权限
- 确认群组未限制机器人发送特定类型消息的权限
内容的提问来源于stack exchange,提问作者Roman
相关产品推荐
相关产品推荐

