项目起源
很自豪给大家推荐,春松客服是我参与主导团队的第一个纯社区开源项目,目前在 Github 中文项目中开源排名第一。
目前我们正在规划 V8 产品迭代,这将会是一个全新的升级,请关注我们的项目进展 cskefu
同时也欢迎大家加入我们的团队。
中国本土团队自主研发
- 春松客服是北京华夏春松于 2018 年发布的开源项目,目的是帮助企业上线智能客服系统。
- 2022 年中,春松客服开源社区成立,目前春松客服由春松客服技术委员会领导,核心开发者来自开源社区,实践与客户、合伙伙伴共建社区。
最有价值开源项目
至 2022 年 10 月,春松客服在企业中部署超过 1.8 万次,上线 客户超过 500 家,是 GitHub 上最受欢迎的中文开源客服系统。因开源、云原生架构和功能丰富受到广泛好评,在 Gitee 上赢得最有价值项目奖项。
我们的愿景
在开源客服系统,我希望将春松客服平台成为一个开源的生态,希望吸引到成千上万的开发者和企业来使用和参与春松客服的开发。
- 春松客服不是传统的客服操作系统,区别与传统客服产品或客服厂商,因为我们在尝试使用开源方式打造一个可持续发展的客服生态
- 我们承诺开放客服系统基础的核心能力和底层框架,上层应用增强功能则有开发者来决定
- 开源不代表免费,我们将会对提供的增值能力进行收费,以保证主导团队的可持续发展,包括但不限于(技术支持、SaaS 平台)
- 春松客服是一套开发者友好的客服操作系统,我们致力于让春松客服在即使脱离了主导团队,仍旧具备可持续发展的开源产品
春松客服是一个依托于开源精神的客服操作系统,我们承诺永远开源,并与开发者打造一个完美的客服系统生态。
我们想做客服系统的 Kubernetes。
最终用户
一线客服团队人员
一线客服人员作为日常之中,长期使用客服系统的人员;客服系统的能力和效率将直接影响到他们的使用;
客服领域开发者
开发者们,可以利用春松客服的开放能力,为春松客服编写大量的增强插件。
产品设计理念
春松客服的核心目标,不是打造一个我们认为的客服系统,而是我们希望打造一套轻量化的智能客服系统框架和具有海量插件的平台。
- 对于一线客服团队,可以根据自己的需要,选择合适的功能。
- 对于客服领域的开发者们,提供一个平台,让开发者们可以轻松实现春松客服 + 的能力
合理的功能边界定义
传统的客服系统提供了大量复杂的功能和配置,虽然总能找到对用户来说想要的功能,但是大量冗杂、甚至逻辑冲突的功能,这虽然没有过错;但的确极大的提高了一线客服人员的使用成本。
对于真正的使用者来说,我们希望客服系统的功能,可以刚好满足我所需要的全部功能,同时可以方便的进行功能的增减和升级。
所以,春松客服的功能边界在:提供 高性能、稳定、通用的、生产级 智能客服系统底座和平台。
明确的功能范 围定义
- 春松客服确保底层基础能力的支持,并且保证良好的可扩展性
- 春松客服避免直接内置开发复杂的应用功能(这往往会有兼容性问题),更多以标准开放能力为目标,交由开发者来实现
增强插件
功能介绍
春松客服 V7
春松客服到现在,已经发展了 2 年的时间,目前版本迭代到 V7,下面展示春松客服的功能和介绍网址入口。
账号和权限
系统管理员
在春松客服里,系统管理员是具备管理所辖组织内坐席、权限、角色、联系人和坐席监控等资源的管理员,系统管理员分 为两种类型:超级管理员和普通管理员,普通管理员也简称“管理员”。
超级管理员为春松客服系统设置的,初始化一个春松客服实例后,默认超级管理员用户名为 admin
,密码为 admin1234
,并且有且只有一个,IT 人员在初始化搭建的春松客服实例的第一件事就是更改超级管理员账号的密码,以确保系统安全。超级管理员具备更新系统所有属性的能力,读写数据,是春松客服内权限最大的用户。
安装启动系统,进入春松客服后台界面,输入初始化的超级管理员账号密码(用户名: admin
, 密码: admin1234
),点击立即登录。
超级管理员同时维护者春松客服的组织机构的高层级,组织机构是树形结构,默认情况下没有组织机构信息,春松客服搭建完成后,由超级管理员设定根节点,比如总公司、总公司下属子公司,维护这样的一个层级结构,再创建其他管理员账号,普通管理员账号可以创建多个,不同管理员隶属于不同组织机构,该管理员只有管理其所在组织机构及该组织机构附属组织机构的权限。
系统管理员切换不同的组织机构,可以查看不同组织机构的数据。
权限设计
春松客服权限体系包括:组织机构,角色,账号。
权限的管理
角色可以自定义,设置对一系列资源的读写。角色的创建和删除,修改资源授权,只有超 级管理员可以操作,,普通【管理员】只具备角色的使用权:添加或删除权限里的系统账号。
系统账号读写资源与角色的关系
将账号添加到角色后,因为账号也同时隶属于不同的组织机构,那么账号所具有的权限就是其所在组织机构以及附属组织机构的角色对应的资源的读写。
根据角色和坐席所在组织机构进行权限检查:
- 超级管理员可以管理系统所有资源
- 管理员可以创建部门人员
- 组织机构支持层级的树状结构
- 角色包含对不同资源的读写权限
- 资源如联系人,客户等是根据组织机构进行隔离的
- 网站渠道必须启用技能组,不同网站渠道接入的访客根据网站渠道设置分配给不同的技能组
- 系统数据根据坐席当前所在的组织机构进行展示
- 坐席可以看到自己所在组织机构以及附属组织机构的数据
假设组织机构如下:
- 李四所能看到的联系人全集是 A 部门及其附属部门所创建的全部联系人
- 李四看不到 B 部门的联系人,张三看不到 A 部门的联系人
- 李四能看到刘一创建的联系人,刘一看不到李四创建的联系人
组织机构管理
创建部门
系统 -> 系统概况 -> 用户和组 -> 组织机构 -> 创建部门,并且可以启用或关闭技能组
- 名词解释:
部门 需要创建的部门名称
上级机构 选择上级部门
启用技能组 这里启用与否,技能是接待同一个渠道的坐席人员群组,春松客服支持配置自动分配策略,连接访客与坐席,简称 ACD 模块
更新、删除部门
进入部门列表
系统 -> 系统概况 -> 用户和组 -> 组织机构
编辑 (修改) 部门
系统 -> 系统概况 -> 用户和组 -> 组织机构 -> 修改部门
删除部门
系统 -> 系统概况 -> 用户和组 -> 组织机构 -> 删除部门
设置部门地区
系统 -> 系统概况 -> 用户和组 -> 组织结 构 -> 选中一个部门 -> 地区设置
角色管理
创建角色
系统 -> 系统概况 -> 用户和组 -> 系统角色 -> 新建角色
只有【系统超级管理员】可以创建角色。
名词解释:
角色 系统中用户的操作权限是通过角色来控制,角色可以理解为具备一定操作权限的用户组;
可以把一个或者更多的用户添加到一个角色下;
可以给一个角色设置一定的系统权限,相当于这个角色下面的用户有了这些系统权限;
角色创建好了以后,在所有组织机构中共享。不同组织机构的管理员,只能管理其所在组织机构和下属组织机构里的账号的角色。
编辑 (修改) 角色
系统 -> 系统概况 -> 用户和组 -> 系统角色 -> 修改角色
只有【系统超级管理员】可以编辑角色。
删除角色
系统->系统概况->用户和组->系统角色>删除角色
只有【系统超级管理员】可以删除角色。
账号管理
创建用户账号:系统 -> 系统概况 -> 用户和组 -> 用户账号 -> 创建新用户
提示:
电子邮件: 需要有效的格式密码: 字母数字最少8位,手动录入手机号: 全系统唯一
-
用户分为管理 员和普通用户
-
坐席分为一般坐席和 SIP 坐席,普通用户与管理用户都可以成为坐席,SIP 坐席是在多媒体坐席的基础上
-
每个账号必须分配到一个部门下,以及关联到一个角色上,才可以查看或管理资源,请详细阅读【组织机构】和【角色】管理
-
创建普通用户
-
创建多媒体坐席
-
创建管理员
查看账号信息
系统 -> 系统概况 -> 用户和组 -> 用户账号
点击操作一栏中的“编辑”“删除”,可以对当前用户列表中的所有用户的信息进行编辑或者删除
添加账号到部门
系统 -> 系统概况 -> 用户和组 -> 组织结构 -> 选中一个部门 -> 添加用户到当前部门
-
可以把已经存在的 用户账号 添加到一个特定的部门中
-
一个用户账号只能隶属于一个部门
添加账号到角色
系统->系统概况->用户和组->系统角色>添加用户到角色
渠道管理
春松客服支持多种渠道,访客的来源可能是多渠道的,这也是目前联络中心发展的趋势,以及对智能客服系统的一个挑战,一方面随着信息技术和互联网通信、聊天工具的演变,企业的客户逐渐分散,尤其是营销平台多元化。
多渠道的适应能力,是春松客服的重要特色。在【渠道管理】的子菜单中,查看支持的不同类型的渠道。
渠道支持
渠道名称 | 简介 | 获得 |
---|---|---|
网页渠道 | 通过在网页中注入春松客服网页渠道 HTML,实现聊天控件,访客与客服建立实时通信连接,支持坐席邀请访客对话等功能 | 开源,免费,随基础代码发布 |
Facebook Messenger 渠道 | 简称“Messenger 插件”或“ME”插件,Messenger 是 Facebook 旗下的最主要的即时通信软件,支持多种平台,因其创新的理念、优秀的用户体验和全球最大的社交网络,而广泛应用。春松客服 Messenger 插件帮助企业在 Facebook 平台上实现营销和客户服务 | 开源,免费,随基础代码发布 |
网页渠道
网页聊天支持可以适配移动设备浏览器,桌面浏览器。可以在电脑,手机,微信等渠道接入网页聊天控件。
安装
获取网页脚本,系统 -> 系统管理 -> 客服接入 -> 网站列表 -> 点击“Chatopera 官网” -> 基本设置 -> 接入;
将图中的代码复制到一个 Web 项目的页面中,例如下图的。
使用
使用浏览器打开该 Web 页面。
【提示】该网页需要使用 http(s) 打开,不支持使用浏览器打开本地 HTML 页面。
点击该网页中出现的“在线客服”按钮,出现聊天窗口,可以作为访客,与客服聊天了。
【提示】春松客服提供一个测试网页客户端的例子,可以使用 http://IP:PORT]}}/testclient.html 进行访问。
Facebook 渠道
Messenger 是 Facebook 旗下的最主要的即时通信软件,支持多种平台,因其创新的理念、优秀的用户体验和全球最大的社交网络,而广泛应用。通过 Facebook Messenger 的官方链接,可以了解更多。
春松客服 Messenger 插件帮助企业在 Facebook 平台上实现营销和客户服务。
- 集成 Facebook 粉丝页,使用 OTN 推送营销活动信息,吸引新粉丝和激活老客户
- 集成 Chatopera 机器人客服,自动回答常见问题,提升客户体验
- 支持机器人客服转人工坐席,解决客户的复杂问题
- 产品迭代一年,提供多个最佳实践,帮助企业高效率运营
- 春松客服运营分析和 Chatopera 机器人客服运营分析生成报表,洞察业务指标
了解 Messenger
首先,出海企业要获客,或者通过互联网方式提供服务,那么 Facebook 上的广告和 Messenger 服务,是您无论如何都要使用的,因为你可以从这里找到您的目标客户、潜在客户。但是,如果 Facebook 平台的商业化程度过高,将影响社交网络内用户的体验,比如用户收到和自己不相关、不感兴趣的、大量的广告。为此 Facebook 在广告和 Messenger 上,有很多设计、一些限制,达到了商业化和人们社交需求的平衡,这是 Facebook 能成为今天世界上最大的社交网络的关键原因之一。
其次,您需要了解 Messenger 的一些应用场景,比如 Cskefu 为九九互动提供的智能客服和 OTN 服务的案例 chatopera-me-jiujiu2020。
在正式介绍春松客服 Messenger 插件的使用之前,需要说明 Cskefu 提供该插件是通过 Facebook Messenger 平台的开发者 APIs 实现,因此,该插件的功能安全可靠、稳定强大并且会不断更新。
https://developers.facebook.com/docs/messenger-platform
使用指南
春松客服全新版本 V8
自今年春松客服开源社区和技术委员会成立,我们重新复盘了春松客服的发展过往;我们决心重构整个春松客服,所有 V8 会是一个全新定位的版本。
- 新版本前端 UI 与产品功能
- 首页模块
- 会话工作台
- 工单中心
- 用户中心
- 全新打造学习中心
- 多维度统计
- 系统设计
- 渠道管理
- 渠道列表
- 渠道配置模板
- 账号管理
- 账号列表
- 分组管理
- 角色管理
- 核心功能构建
- 性能测试场景设计
- 支持横向扩容
- 插件平台技术设计方案
- 通用渠道接入能力设计
- 渠道管理
- 支持 K8s 部署,Helm Chart
- 部署方式优化
- Docker-compose 部署
- 依赖组件升级
后端技术栈
- JAVA 版本:JAVA 11
- 构建工具:Maven
- 后端技术栈
- Spring security
- Webflux
- MyBatis 2.2.2
- Jackson
- Redisson 3.17.7
- Mysql 8.0
- HikariCP
- Swagger 3.0.0
- Spring boot 2.7.4
- Spring cloud 2021.0.4
- Spring cloud alibaba 2021.0.4.0
- RabbitMQ
- XXL-Job
- Seata
- ES6
- Oauth2.0
- MinIO
应用部署
春松客服适应各种部署方式,本文使用 Docker 和 Docker compose 的方式,适合体验、开发、测试和上线春松客服,此种方式简单快捷。
更新:我们正在推进基于 Helm Chart 的方式安装,让企业可以更方便的 Kubernetes 容器平台使用
重要提示:部署应用后,必须按照《系统初始化》文档进行系统初始化,再使用,不做初始化,会造成坐席无法分配等问题。
环境准备
项目 | 说明 |
---|---|
操作系统 | Linux (CentOS 7.x, Ubuntu 16.04+ 等),推荐使用 Ubuntu LTS |
Docker 版本 | Docker version 1.13.x 及以上 |
Docker Compose 版本 | version 1.23.x 及以上 |
防火墙端口 | 8035, 8036 |
其他软件 | git |
内存 | 开发测试 >= 8GB |
CPU 颗数 | 开发测试 >= 2 |
硬盘 | >= 20GB |
获取源码
git clone -b master https://github.com/cskefu/cskefu.git cskefu
cd cskefu
cp sample.env .env # 使用文本编辑器打开 .env 文件,并按照需求需改配置
以上命令中,master
代表当前稳定版,是 cskefu/cskefu 的 master 分支,分支说明。
分支 | 说明 |
---|---|
master | 当前稳定版本 |
develop | 当前开发版本 |
克隆代码时,按照需要指定分支信息;本部署文档针对 master 分支。
配置项说明
以下为部署相关的环境变量,可以在 .env
中覆盖默认值。
KEY | 默认值 | 说明 |
---|---|---|
COMPOSE_FILE | docker-compose.yml | 服务编排描述文件,保持默认值 |
COMPOSE_PROJECT_NAME | cskefu | 服务实例的容器前缀,可以用其它字符串 |
MYSQL_PORT | 8037 | MySQL 数据库映射到宿主机器使用的端口 |
REDIS_PORT | 8041 | Redis 映射到宿主机器的端口 |
ES_PORT1 | 8039 | ElasticSearch RestAPI 映射到宿主机器的端口 |
ES_PORT2 | 8040 | ElasticSearch 服务发现端口映射到宿主机器的端口 |
CC_WEB_PORT | 8035 | 春松客服 Web 服务地址映射到宿主机器 的端口 |
CC_SOCKET_PORT | 8036 | 春松客服 SocketIO 服务映射到宿主机器的端口 |
ACTIVEMQ_PORT1 | 8051 | ActiveMQ 端口 |
ACTIVEMQ_PORT2 | 8052 | ActiveMQ 端口 |
ACTIVEMQ_PORT2 | 8053 | ActiveMQ 端口 |
DB_PASSWD | 123456 | 数据库密码,设置到 MySQL, Redis, ActiveMQ |
LOG_LEVEL | INFO | 日志级别,可使用 WARN, ERROR, INFO, DEBUG |
以上配置中,端口的各默认值需要保证在宿主机器上还没有被占用;数据库的密码尽量复杂;CC_WEB_PORT 和 CC_SOCKET_PORT 这两个值尽量不要变更;生产环境下 LOG_LEVEL 使用至少 WARN 的级别。
以下为一些业务功能相关配置的环境变量:
KEY | 默认值 | 说明 |
---|---|---|
TONGJI_BAIDU_SITEKEY | placeholder | 使用百度统计 记录和查看页面访问情况,默认不记录 |
EXTRAS_LOGIN_BANNER | off | 登录页上方展示通知的内容,默认 (off) 不展示 |
EXTRAS_LOGIN_CHATBOX | off | 登录页支持加入一个春松客服网页渠道聊天按钮,比如 https://oh-my.cskefu.com/im/xxx.html,默认 (off不展示 |
管理命令
启动服务
cd cskefu # 进入下载后的文件夹
docker-compose pull # 拉取镜像
docker-compose up -d contact-center # 启动服务
查看服务日志
docker-compose logs -f contact-center
登陆系统
在日志中,查看到如下类似信息,代表服务已经启动。
INFO c.c.socketio.SocketIOServer - SocketIO server started at port: 8036 [nioEventLoopGroup-2-1]INFO com.chatopera.cc.Application - Started Application in 35.319 seconds (JVM running for 42.876) [main]
然后,从浏览器打开 http://YOUR_IP:CC_WEB_PORT/ 访问服务。默认管理员账号:admin 密码:admin1234
演示环境
春松客服提供了,在线体验环境,方便您了解春松客服最新功能。
内容 | 说明 |
---|---|
网站 | https://demo.cskefu.com |
默认用户名 | admin |
默认密码 | admin1234 |
注意,请不要修改用户名和密码,演示环境随时有可能可能,请自行保障数据安全。
客户案例
关注春松客服
- 春松客服官网 https://www.cskefu.com
- Github 主页 https://github.com/cskefu/cskefu
- 春松客服文档站 https://docs.cskefu.com
社区会议
定期社区会议
周日 10:00UTC+8(中文)(单周)。转换为您的时区