Botgo
QQ机器人 GOSDK
Install / Use
/learn @tencent-connect/BotgoREADME
BotGo
QQ频道机器人,官方 GOLANG SDK。
注意事项
- websocket 事件推送链路将在24年年底前逐步下线,后续官方不再维护。
- 新的webhook事件回调链路目前在灰度验证,灰度用户可体验通过页面配置事件监听及回调地址。如未在灰度范围,可联系QQ机器人反馈助手开通。

灰度期间,原有机器人仍可使用websocket事件链路接收事件推送。
一、quick start
1. QQ机器人创建与配置
- 创建开发者账号,创建QQ机器人 QQ机器人开放平台

- 配置沙箱成员 (QQ机器人上线前,仅沙箱环境可访问)。新创建机器人会默认将创建者加入沙箱环境。

2. 云函数创建与配置
- 腾讯云账号开通scf服务 快速入门
- 创建函数
- 选择模板

- 启用"公网访问"、"日志投递"

- 编辑云函数,启用"固定公网出口IP" (QQ机器人需要配置IP白名单,仅白名单内服务器/容器可访问OpenAPI)


3. 使用示例构建、上传云函数部署包
- 打开 examples/receive-and-send
- 复制 config.yaml.demo -> config.yaml

- 登录开发者管理端,将BotAppID和机器人秘钥分别填入config.yaml中的appid和secret字段


- 执行Makefile中build指令
- 将config.yaml、scf_bootstrap、qqbot-demo(二进制文件)打包,上传至云函数

4.配置QQ机器人事件监听、回调地址、IP白名单
- 复制云函数地址 + "/qqbot"后缀,填入回调地址输入框。点击确认。

- 勾选 C2C_MESSAGE_CREATE 事件。点击确认。

- 将云函数 "固定公网出口IP" 配置到IP白名单中)

体验与机器人的对话
给机器人发送消息、富媒体文件,机器人回复消息
二、如何使用SDK
var api openapi.OpenAPI
func main() {
//创建oauth2标准token source
tokenSource := token.NewQQBotTokenSource(
&token.QQBotCredentials{
AppID: "",
AppSecret: "",
})
//启动自动刷新access token协程
if err = token.StartRefreshAccessToken(ctx, tokenSource); err != nil {
log.Fatalln(err)
}
// 初始化 openapi,正式环境
api = botgo.NewOpenAPI(credentials.AppID, tokenSource).WithTimeout(5 * time.Second).SetDebug(true)
// 注册事件处理函数
_ = event.RegisterHandlers(
// 注册c2c消息处理函数
C2CMessageEventHandler(),
)
//注册回调处理函数
http.HandleFunc(path_, func (writer http.ResponseWriter, request *http.Request) {
webhook.HTTPHandler(writer, request, credentials)
})
// 启动http服务监听端口
if err = http.ListenAndServe(fmt.Sprintf("%s:%d", host_, port_), nil); err != nil {
log.Fatal("setup server fatal:", err)
}
}
// C2CMessageEventHandler 实现处理 at 消息的回调
func C2CMessageEventHandler() event.C2CMessageEventHandler {
return func(event *dto.WSPayload, data *dto.WSC2CMessageData) error {
//TODO use api do sth.
return nil
}
}
三、SDK 开发说明 (Deprecated)
请查看: 开发说明
四、加入官方社区
欢迎扫码加入 QQ 频道开发者社区。

Related Skills
node-connect
342.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
85.3kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
342.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
342.5kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
