Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/kwp-lab/vika-faq-engine

企业微信客服话术库-维格表版
https://github.com/kwp-lab/vika-faq-engine

expressjs qcloud-scf serverless vikadata wecom weixin

Last synced: 2 months ago
JSON representation

企业微信客服话术库-维格表版

Lists

README

        

# vika-faq-engine
(企业微信话术库-维格表版)

微信社群运营少不了使用企业微信的各项能力,本工程基于企业微信自建应用的形式进行构建。
可以在企业微信聊天附件栏或聊天工具栏快速调起话术库/素材库页面(H5),点击任意话术(消息卡片)即可发送给外部联系人或者群聊,支持外部单聊、外部群聊、班级群各种会话窗口。

## 🎨 idea起源

最初,我只是想模仿搜索引擎的样式,做一款基于维格表的轻量级FAQ搜索页,因此诞生了 ```vika-faq-engine``` 这个有点草率的名字。但随着不断的开发迭代,发现它的适用场景越来越多,就决定把它升级成企业微信专用的“话术库/素材库”

在体验了企业微信自带的快捷回复功能和市面上一些付费的SCRM,发现有以下的一些问题:

> 企业微信自带的聊天工具功能简陋,无法发送图片、H5卡片
> 当拥有大量话术时,无法根据关键词进行搜索
> 没有知识库体系,客服团队没法协同梳理一个知识库,话术编辑麻烦
> 话术、素材难以自定义分类

因此,我在构思工程搭建思路的时候,就围绕这些痛点进行优化,断断续续地花了几个月的闲余时光,终于做出来了,它就是名字 low low 的“企业微信话术库-维格表版”

它实现了如下功能:

- [x] 轻量级搜索引擎,支持多个关键词组合查询,命中词语会以红色高亮显示
- [x] 快捷回复页,支持置顶 3 个素材/话术分类,高频素材快捷发送
- [x] 素材分类动态实时刷新,在维格表拖动视图顺序即可变更客户端 H5 页面的置顶分类
- [x] 支持一键部署,CLI一个命令即可完成整个工程的云端部署
- [x] 多终端支持,企业微信 PC 端和手机 APP 端都可以使用


## 💡 如何使用

跟着下方操作说明,快速将工程部署到腾讯云,然后在企业微信进行体验。

**前期准备**
- 注册一个维格表帐号([前往](https://vika.cn))
- 将维格表模板《企业微信客服话术库》另存到自己的空间站([前往下载](https://vika.cn/share/shrRgZqX5mMKm4MQmE3lR/fodR4R7ZPGvky))
- 注册一个腾讯云帐号([前往](https://cloud.tencent.com/))
- 在企业微信里创建一个自建应用(往下阅读有教程)

### 1. 搭建环境

本工程使用 nodejs 作为 JavaScript 运行时,请参考官网提前安装,此处不细说。→[《如何安装 Node.js》](http://nodejs.cn/learn/how-to-install-nodejs)

完成下方三步操作,即可完成本地开发环境的搭建:

**(1)安装开发环境**
```bash
# 安装 Serverless Framework
npm install -g serverless

# 下载工程代码至本地
git clone xxxxxx

cd xxxxx/src

# 使用 npm 安装工程的依赖库
npm install

```


**(2)编辑 ```config_init.js``` 文件,填写必要的执行时参数**

此文件用于配置 nodejs 运行时的参数。
请根据文件里的备注说明填写参数,填写完毕后,将 ```config_init.js``` 重命名为 ```config.js```


**(3)将自建应用的参数,填写到维格表《自建应用配置》**

如果你完成了上文的前提准备第二点,另存到自己的空间站后,会看到一个表《自建应用配置》,请将企业微信自建应用的 `appSecret` 和企业的 `corpid` 填写到该表的字段内

![自建应用配置表示意图](docs/screenshots/chrome_GLZqIRlkQG.png)

此文件用于配置 nodejs 运行时的参数。
请根据文件里的备注说明填写参数,填写完毕后,将 ```config_init.js``` 重命名为 ```config.js```


**(4)本地启动**

```bash
npm run dev
```

至此,本地环境就已经搭建完毕了,你可以通过浏览器查看页面实时效果。修改任何 js、html 文件都会实时刷新(使用 nodemon 来监听代码文件的变化并重启服务,使用 browser-sync 来实时刷新浏览器页面。)

在浏览器模式下,你可以体验如下功能:

- 访问话术库首页("/"), 输入关键字进行话术搜索
- 访问“快捷回复”页面("/quickreply"), 查看不同分类下的10条置顶话术

无法体验的功能:

- 一键将话术(文本、H5卡片)发送到企业微信群


### 2. 创建自建应用

前往企业微信管理后台,按照教程 [创建与配置企业微信自建应用](docs/how-to-create-wecom-app.md) 的操作步骤执行。


### 3. 部署

为了能完整体验所有功能,并在实际业务当中使用,我们需要将代码部署到云端。
使用 ```Serverless Framework``` 的 cli 命令,一键部署到腾讯云。

```bash
# 进入工程根目录
cd path://to/your/project/src

# 执行部署
serverless deploy

# 或者使用如下缩写
sls deploy
```


## 本工程的依赖项

- **[vika维格表](https://vika.cn)**
一款“可视化数据库”,免费易上手,不用开发就可以充当话术库的管理后台。以前搭建后台系统,需要先数据库建表,然后再做管理界面和帐号管理。现在只需要在维格表上创建好必要的几个表格,即可完成整套“管理后台”的构建,管理员访问维格表就等同于访问“话术库管理后台”,再通过API打通与前端界面的数据传输,一个前后端分离的话术库系统就搭建完毕了。

- **[Express 4](http://expressjs.com)**
基于 Node.js 平台,快速、开放、极简的 Web 开发框架。懂的都懂,不解释。

- **[腾讯云函数(SCF)](https://cloud.tencent.com/product/scf)**
为开发者提供无服务器执行环境,足够玩耍的免费额度,按调用次数收费。将工程代码通过cli可以直接部署,超灵活的开发调试体验。

- **[腾讯云 API 网关](https://cloud.tencent.com/product/apigw)**
通过 API 网关,将网络请求转发到云函数进行处理。免费获得4级域名,加上云函数就可以轻量快捷地提供服务端能力,两者配合简直是开发者搭建小工具的神器。

- **[jQuery](https://jquery.com/)**
jQuery 是一个快速、简洁的 JavaScript 框架,是继 Prototype 之后又一个优秀的 JavaScript 代码库

- **[Bootstrap 4](https://getbootstrap.com/)**
Bootstrap 是 Twitter 推出的一个用于前端开发的开源工具包。它由 Twitter 的设计师 Mark Otto 和 Jacob Thornton 合作开发,是一个 CSS/HTML 框架。


## 相关教程

[《创建与配置企业微信自建应用》](docs/how-to-create-wecom-app.md)

[《vika企业微信话术库的工作原理》](docs/how-does-this-function-work.md)

[《如何设置可信域名》](docs/how-to-verify-domain.md)


## 更新日志
2021年11月17日
- 【新增】readme.md 文档的补充完善
- 【新增】补充相关教程

2021年11月13日
- 【新增】快捷回复页,支持置顶三个素材标签
- 【新增】升级维格表表结构,支持“H5页面”类型的素材录入并在企业微信端显示
- 【新增】在维格表追加新的表“自建应用配置”,用于记录企业微信自建应用的配置参数
- 【新增】index.html 和 quickreply.html 页面优化,集成企业微信JS-SDK
- 【新增】支持从企业微信工具栏和附件栏一键分享“文本”和“H5页面”这两种类型的素材到会话中

2021年4月7日
- 【新增】关键词支持从“问题”和“答案”这两个字段同时检索


## License
MIT