如何搭建一套免费开源的微信群机器人问答系统?
前言
自动消息回复和机器人,一直是企业微信的专利。但在非常多场景或者人文习惯中,个人微信和微信群也同样需要它们。比如活动组织者、团购团长、社群管理、私域流量运营者们,都要经营个人微信群。
那就不免会遇到许多信息收集、咨询提问的状况。群消息不停弹出,整理统计信息和回复消耗你大量精力,还可能发生错乱,功亏一篑。
但这些如果借助自动消息回复和机器人,也许很快就能解决。vika维格表的用户@choogoo 就有同样的场景需求。身为国内某大厂的产品经理,他日常就喜欢做一点小程序或者网站去解决自己实际应用中的问题。
于是,一个名为「微信智能问答机器人系统」的开源项目诞生了,繁杂的群信息对接管理可以轻松搞定。值得一提的是,vika维格表作为数据中台,在 choogoo 的开发过程中承担着重要一环。
GitHub 项目首页:https://github.com/choogoo/wechat-openai-qa-bot
👉 活动报名👉 取消报名👉 活动提醒👉 活动结算
实现功能
- 群内智能问答:自定义问答内容,智能匹配答案;
- 多个群相同问题不同回答内容;
- 免打扰功能,使用「QA +群 ID +回答内容」匹配群,未配置问题答案的群不会受到机器人干扰;
- 支持非群主小程序卡片、网页链接分享检测,自动提醒、警告发送者撤回;
- 支持快团团订货单转换,原始表发送到群即可自动转换为按楼栋统计表;
- 群聊天消息存档到维格表;
- 简单客服后台,可以把群内消息按发言人列表区分。
群内咨询转换为客服后台一对一聊天
相关依赖
项目用到了一些免费且好用的开源项目和平台:
- vika维格表 —— 将过去复杂的IT数据库技术,做得像表格一样简单
- Wechaty —— 只需几行代码,您就可以拥有一个功能齐全的聊天机器人
- wechaty-puppet-xp —— 可能是目前最好用的免费wechat机器人
- wechaty-puppet-wechat —— 目前最简单的免费wechat机器人
- 微信对话开放平台 —— 5分钟零基础免费一键搭建智能对话机器人,并应用于微信公众号、小程序、企业网站、APP等
- vue-im —— 由@polk6开源的客服web项目,实现客服后台回复咨询消息
在微信对话开放平台设置问题与回复
如何快速开始
- 下载源码并安装依赖
git clone https://github.com/choogoo/wechat-openai-qa-bot.git
npm install
- 在电脑上登陆微信,微信版本必须为WeChatSetup-v3.3.0.115.exe
- 修改配置文件
快速开始仅需要修改WX_TOKEN、VIKA_TOKEN、VIKA_SPACENAME、VIKA_DATASHEETNAME四个配置项
const configs = {
WX_TOKEN: '', // 微信对话平台token
VIKA_TOKEN: '', // VIKA维格表token
VIKA_SPACENAME:'', // VIKA维格表空间名称,修改为自己的已存在的任意空间名称
VIKA_DATASHEETNAME:'', // VIKA维格表名称,修改为自己的表名称,可填写任意名称,不需要在维格表中建表,程序会自动建表
linkWhiteList: ['ledongmao',], // 群内链接检测白名单,白名单里成员发布的卡片、链接消息不提示
imOpen: false, // 是否开启uve-im客户端,设置为true时,需要先 cd ./vue-im 然后 npm install 启动服务 npm run dev
noderedOpen: false, // 是否开启nodered,开启nodered后可以以可视化界面启动机器人,需要先导入 ./tools 目录下的 flows.json
}
- 启动
npm start
开发助力
依赖中的大部分软件工具或平台都比较好理解,而其中的vika维格表其实充当了 CMS 系统后台的作用。
vika维格表是一款支持 API 的智能多维表格,你可以利用维格表 API,将维格表与其他软件连接,实现相互的数据传输,搭建高效工作流;或者作为后端的数据库,帮助快速搭建产品原型,验证想法,比如:
- 开发一款塞尔达菜谱小程序,轻松从维格表中读取菜谱数据
- 开发一个轻量的课程论坛网站,轻松从维格表中读取讨论数据
- 开发一款简易的笔记 App,轻松存储笔记数据到维格表
- ……
在 choogoo 的这个开源项目中,微信群中的信息可以通过 API 往vika维格表中写入并存储,可视化地充当后台管理信息数据。
维格表:群信息收集
维格表:通知公告管理 👉 群内自动推送通知公告
更多应用
choogoo 已经倾向于用维格表去做更多互联网项目的 CMS 内容管理系统,比如正在做的「扫码登记管家」小程序。疫情期间,去到哪个小区或社区都要纸笔登记个人信息,不如扫码登记方便且易管理。
小程序:扫码登记管家
事实上,这个小程序 2020 年就已经上线使用,并且有了 4、5 万的用户。但当时做得比较简陋,登记表的格式全都固定了格式,没办法改变。彼时想要做不同的模板,开发工作量太大。
而如今用上了维格表,choogoo 将之作为模板管理的工具:在维格表建好一个模板,小程序端通过API 读取维格表中的信息,调用生成登记模板。
扫码登记管家管理后台与登记表模板
面向开发者,特别是独立开发者,维格表的优势就在于它可以作为后台系统,管理你的表结构、元数据、配置文件等,再通过 API 调用解决具体的业务场景难题,节省大量开发时间。
之前抗疫期间,他还参与了上海一个关于解决社区管理问题的开源项目,也涉及到 AI 机器人。当时他就强烈建议大家使用维格表。
因为这种自发的开源项目团队,大家的知识结构或能力各不相同,内部缺乏对于数据库操作,或者整个系统架构部署方面的人才或经验,而用vika维格表不用管部署,也不用维护,上来就看数据,很方便。
订单信息管理
对于 choogoo 而言,维格表作为验证阶段快速出 Mvp的工具是非常好的,可以验证更多的业务流程和想法。这段时间,choogoo 已经把大部分项目都基于维格表去重构和验证。
你还能用维格表开发出什么,玩出什么花样?或者你想要节约更多开发时间,不妨到维格表开发者中心了解更多:https://vika.cn/developers/
vika维格表连接一切,帮助更多开发者拓展应用可能,一起做更有趣的东西吧。