花了两三个小时,终于搞清楚了 QQ 机器人的按钮怎么用了
QQ 机器人基本上名存实亡了,各种限制,搞的没人愿意用,今年龙虾火了,腾讯火速把机器人开放了,然后又装死,SDK 也好久不更新了,文档乱七八糟的。
现在搞成非企业认证都不让其他人私聊,个人机器人加群都有限制(够用,但以后保不齐会变,腾讯不是第一天切香肠了)

唯一有个好处,现在 Markdown 开放了,可以直接用了,以前还要做模版还要申请,麻烦的很。
研究了几个小时,终于搞明白了 Markdown 的按钮怎么用了。
https://bot.q.qq.com/wiki/develop/api-v2/server-inter/message/type/markdown.html

Markdown 就是正常使用
有个好玩的就是内嵌键盘,主要就是按钮回调。

上图中的按钮,不是点击出来文字自己发送,是点击后直接出事件。
我用 Python 写的,就去看了下 SDK
https://github.com/tencent-connect/botpy/
讲个笑话,最后一次更新:2 years ago

里面有个互动事件(未启用),所以并没有这个文件,只好自己看看代码。

首先需要监听事件

interaction=True
然后
async def on_interaction_create(self, interaction: Interaction):

on_interaction_result 是为了及时响应,防止客户端一直 loading 的,这个方法下面正常处理事件就好了。
生成键盘的有 demo

直接抄就行了,要注意的就是
按钮的 Action 的 type

0 为跳转,1 为回调(重要),2 为自动回显到发送框
我们监听的就是 1
我们创建 type 为 1 的按钮就行了。

然后正常发个带键盘的 MD 出去

腾讯也是有意思,类型不一致,他们自己就是这么用的,我也没管

先发消息触发 MD 消息。
然后点击按钮触发回调。

还算顺利,实现了我要的效果(总有人发消息不知道格式,用按钮就好了)
感谢分享。怀念之前的 酷 Q,论坛好多有趣的机器人。