Skip to content

Feishu ChatGpt 在飞书上与ChatGPT随时对话~

Notifications You must be signed in to change notification settings

tcm3602/feishu-chatGpt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


在飞书与ChatGPT随时对话,智慧随身。
Feishu ChatGpt

项目特点

  • 🍋 基于goCache内存键值对缓存

项目部署

有关飞书具体的配置文件说明,➡︎ 点击查看
git clone git@github.com:Leizhenpeng/feishu-chatGpt.git
cd feishu-chatGpt/code

# 配置config.yaml
mv config.example.yaml config.yaml
本地部署

如果你的服务器没有公网 IP,可以使用反向代理的方式

飞书的服务器在国内对ngrok的访问速度很慢,所以推荐使用一些国内的反向代理服务商

//测试部署
go run main.go
cpolar http 9000

//正式部署
nohup cpolar http 9000 -log=stdout &

//查看服务器状态
https://dashboard.cpolar.com/status

// 下线服务
ps -ef | grep cpolar
kill -9 PID

更多详细介绍,参考飞书上的小计算器: Go机器人来啦


serverless部署
cd ..
s deploy

更多详细介绍,参考仅需1min,用Serverless部署基于 gin 的飞书机器人

docker部署

待补充

功能解释

责任链-设计模式

划重点@bro

千万不要用if else,这样的代码,不仅可读性差,而且,如果要增加一个处理器,就需要修改代码,违反了开闭原则

用户发送的文本消息,根据消息内容,匹配到对应的处理器,处理器处理消息,返回结果给用户

这种匹配,可以使用责任链模式,将匹配的逻辑抽象成一个个的处理器,然后将这些处理器串联起来,形成一个链条。

用户发送的消息,从链条的头部开始,依次匹配,匹配到后,就不再继续匹配,直接返回结果给用户

!!!切记!!!

责任链模式参考代码

详细配置步骤

  • 获取 OpenAI 的 KEY
  • 创建 飞书 机器人
    1. 前往开发者平台创建应用,并获取到 APPID 和 Secret
    2. 打开机器人能力
    3. 从cpolar或者serverless获得公网地址,例如http://xxxx.r6.cpolar.top/webhook/event ,在飞书机器人的 事件订阅 板块填写回调地址。
    4. 给订阅添加下列回调事件
      • 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
    5. 发布版本,等待企业管理员审核通过

更多介绍,参考飞书上的小计算器: Go机器人来啦

相关阅读

About

Feishu ChatGpt 在飞书上与ChatGPT随时对话~

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 96.9%
  • Dockerfile 3.1%