ChatGPT-飞书机器人
为飞书用户准备的 ChatGPT 机器人。视频演示如下,生成速度可能较慢,请耐心等待~
效果
[视频演示链接]
如何使用本项目代码?
视频教程见 -> https://youtu.be/axvH1D0Dhnk | https://www.bilibili.com/video/BV1uT411R7TL/
1. 创建飞书开放平台应用,获取 APPID 和 Secret
访问开发者后台,创建名为 ChatGPT 的应用,并上传应用头像。创建完成后,访问【凭证与基础信息】页面,复制 APPID 和 Secret 备用。
[图片1]
2. 开启机器人功能
开启应用的机器人功能
[图片2]
3. 访问 AirCode,创建新项目
登录 AirCode,创建一个新的 Node.js v16 项目,项目名可填写 ChatGPT
[图片3]
4. 复制本项目 event.js 源码内容,粘贴到 Aircode
访问ChatGPT-Feishu/event.js at master · bestony/ChatGPT-Feishu (github.com),复制代码
[图片4]
将代码粘贴到 AIrcode 默认创建的 hello.js 中。点击顶部的 deploy,完成第一次部署。
[图片5]
部署成功后,可在下方看到。
[图片6]
5. 安装所需依赖
点击页面左下角的包管理器,安装 axios
和 @larksuiteoapi/node-sdk
。安装完成后,点击上方的部署使其生效。
[图片7]
6. 配置环境变量
配置三个环境变量 APPID
、SECRET
和 BOTNAME
,分别填写飞书开放平台获取的 APPID、SECRET 和机器人名称。
配置环境变量可能会失败,可以多次 deploy,确保配置成功。
[图片8]
配置完成后,点击上方的 Deploy 按钮部署,使环境变量生效。
[图片9]
会变成这样
[图片10]
7. 获取 OpenAI 的 KEY,配置环境变量
访问 Account API Keys - OpenAI API,点击 Create new secret key,创建新的 key 并保存备用。
[图片11]
回到 Aircode,配置名为 KEY
的环境变量,填写刚刚生成的 Key。配置完成后,点击部署使其生效。
[图片12]
8. 开启权限并配置事件
访问开放平台页面,开通以下 6 个权限:
- im:message
- im:message.group_at_msg
- im:message.group_at_msg:readonly
- im:message.p2p_msg
- im:message.p2p_msg:readonly
- im:message:send_as_bot
[图片13]
然后回到 AirCode,复制函数的调用地址。
[图片14]
回到事件订阅界面,添加事件。
[图片15]
9. 发布版本,等待审核
完成上述配置后,在飞书开放平台后台找到应用发布,创建新版本并发布。
如何贡献?
欢迎通过 issue 提交想法,帮助迭代项目,或直接通过 Pull Request 提交代码。发布成功后,你就可以在飞书中体验 ChatGPT 了。
[图片16]
交流群
[图片17]
常见问题
1. 提交事件订阅地址时提示 Challenge Code 没有返回?
检查是否配置了 Encrypt Key,目前不支持对加密数据解密。路径是应用后台 - 事件订阅
[图片18]
2. 可以私聊回复,但无法群聊回复?
确保 6 项开放平台权限都已开通且已发布版本,权限进入可用状态。
另一种情况是飞书机器人名称与 BOTNAME 变量不一致。由于 aircode 的环境变量不支持中文,如果机器人名称为中文也会导致部署失败。
解决方法:将飞书机器人名称改为英文,或直接修改代码中的 BOTNAME 值。
3. aircode 提示报错 failed to obtain token?
说明 aircode 的环境变量配置未成功,请重新配置并重新部署。
4. cannot set propoertis of undefined (setting 'event_type')?
这是正常现象,说明你使用 HTTP 发起请求或使用了 aircode 的 debug 功能。