网页聊天即时通讯、在线客服坐席系统,专注私有本地化部署的源码
一、项目简介基于Golang语言和MySQL实现的WEB在线客服系统。 GOFLY是一款基于Golang+Vue开发的在线客服系统。一套可私有化部署的在线客服系统,编译后的二进制文件可直接使用无需搭开发环境,下载zip解压即可,仅依赖MySQL数据库,是一个开箱即用的网页在线客服系统,致力于帮助广大开发者/中小站长快速整合私有客服功能。 主要技术栈 gin + jwt-go + websocket + go.uuid + gorm + cobra 二、功能概述GOFLY在线客服系统是一款专注私有本地化部署的网页聊天即时通讯、在线客服坐席系统。采用Golang语言 Gin框架内核+MySQL开发编译而成,多协程模式运行,支撑高并发。 高性能一、Golang可以利用到多核CPU进行异步并行,利用管道进行通信,编译为二进制可执行文件,运行效率极高 高并发二、Golang可以轻易地启动成千上万个Goroutine,比系统线程切换效率高得多。基于Channel的同步通信,复杂度降低,功能得到提升。 极稳定三、相比很多PHP+MySQL客服系统,PHP的wokerman框架,对进程的处理不够稳定,运行效率低。Swoole扩展安装复杂,不能完全兼容各种系统环境 功能强四、利用语言优势为中小企业量身定制的全智能、全渠道的云客服平台,多商户系统支持自营、对外运营,独立私有化部署数据隐私更安全 有保障五、持续开发三年时间,git提交上千次,代码持久维护,遇到部署安装或者bug问题可随时解决。 两分钟装好客服,一键下载使用基于强大的golang跨平台交叉编译功能,服务端程序全平台支持 Windows/Centos/Ubuntu/Debain/Fedora 下载私有化部署安装包,两分钟安装完成,十分钟搞定上线! 支持多商家(多站点)支持多商家(多站点),每个注册用户为一个商家,每个商家可以添加多个坐席子账户。不限坐席每个商家可以无限添加坐席,不限制坐席数智能分配商家主账号优先认领,坐席账号智能分配,可随意转接客服,最大限度满足客服需求支持H5移动端系统自动适配移动端,也可以接入app(h5方式)支持微信公众号/手机APP管理系统客服可以与微信公众号/手机app管理系统访客实时沟通机器人自动回复支持设置常见问题,顾客可以点击常见问题系统会自动回复,也可以设置关键词,触发关键词机器人自动回复其它发送文本图片语音信息、访客标签备注轨迹搜索、消息预知、数据统计、来源追踪、自动欢迎问候语、客服消息监控等... 不限坐席部署一套系统即可支持多个用户(网站)使用,每注册一个用户为一个商家,不限商家数,不限制坐席数 数据安全程序源码及聊天数据全部存储在自己的服务器,无任何第三方服务依赖,支持SSL加密隧道传输,可避免信息数据泄露 Golang+Vue结构开发语言的优势可以轻松应对高并发问题,访客再多也不怕! 轻松部署一段代码,一个链接,轻松部署,移动APP, 网页咨询, 图片,语音,表情,文件多元素沟通. 多客服对话分配支持客服分流/转接/,多客服沟通,到达信息精准传达,无须客户沟通重复内容. 三、技术选型安装使用1. 先安装和运行mysql >=5.5版本 , 创建gofly数据库.
- create database gofly charset utf8;
复制代码 在config目录mysql.json中配置数据库
- {
- "Server":"127.0.0.1",
- "Port":"3306",
- "Database":"gofly",
- "Username":"go-fly",
- "Password":"go-fly"
- }
复制代码 2. 二进制文件运行1、下载地址 2、文件解压缩 windows系统下,在cmd命令行,进入项目解压后目录; linux系统下创建目录执行如下 linux服务器: mkdir go-fly cd go-fly wget xxxxxxxxxxx.zip unzip xxxx.zip chmod 0777 -R ./ 导入数据库( 注意:会删除表并且清空数据 ) windows: go-fly.exe install linux: ./go-fly install 运行项目 linux: ./go-fly server [可选 -p 8082 -d] windows: go-fly.exe server [可选 -p 8082] 3、参数说明 -p 指定端口 -d linux下是否以daemon守护进程运行 -h 查看帮助 3. 源码运行- 基于go module使用
- go env -w GO111MODULE=on
- go env -w GOPROXY=https://goproxy.cn,direct
- 下载go-fly 项目
- 进入go-fly 目录
- 源码运行 go run go-fly.go server
- 源码打包 go build go-fly.go 会生成go-fly可以执行文件
- 导入数据库(会删除表清空数据) ./go-fly install
- 二进制文件运行
- linux: ./go-fly server [可选 -p 8082 -d]
- windows: go-fly.exe server [可选 -p 8082 -d]
- 关闭程序 ./go-fly stop
- linux下使用ps命令结合kill命令杀掉进程
- ps -ef|grep go-fly 看到父子进程id
- kill 进程父进程id ; kill 进程子进程id
4. 网页使用1.服务端安装成功后可把域名换成自己的域名或IP - //下面js路径和GOFLY_URL 都要改成自己的
- <script src="https://gofly.sopans.com/assets/js/gofly-front.js"></script>
- <script>
- GOFLY.init({
- GOFLY_URL:"https://gofly.sopans.com",
- GOFLY_KEFU_ID: "kefu2",
- GOFLY_BTN_TEXT: "客服在线 欢迎咨询",
- GOFLY_LANG:"cn"
- })
- </script>
复制代码 nginx部署1.参考支持https的部署示例 , 注意反向代理的端口号和证书地址 , 不使用https也可以访问 , 只是不会有浏览器通知弹窗 2.尽量按照下面的配置处理, 配置独立域名或者二级域名, 不建议在主域名加端口访问, 不建议主域名加目录访问 3.如果遇到域名跨域错误问题, 检查下面配置中add_header Access-Control-Allow-Origin这俩header头是否添加. 代码里已经解决跨域 , nginx里不要加跨域头,否则会冲突报错 - server {
- listen 443 ssl http2;
- ssl on;
- ssl_certificate conf.d/cert/4263285_gofly.sopans.com.pem;
- ssl_certificate_key conf.d/cert/4263285_gofly.sopans.com.key;
- ssl_session_timeout 5m;
- ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
- ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
- ssl_prefer_server_ciphers on;
- #listen 80;
- server_name gofly.sopans.com;
- access_log /var/log/nginx/gofly.sopans.com.access.log main;
- location /static {
- root /var/www/html/go-fly;//自己的部署路径,静态文件直接nginx响应
- }
- location / {
- proxy_pass http://127.0.0.1:8081;
- proxy_http_version 1.1;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header Upgrade $http_upgrade;
- proxy_set_header Connection "upgrade";
- proxy_set_header Origin "";
- }
- }
- server{
- listen 80;
- server_name gofly.sopans.com;
- access_log /var/log/nginx/gofly.sopans.com.access.log main;
- location /static {
- root /var/www/html/go-fly;//自己的部署路径,静态文件直接nginx响应
- }
- location / {
- proxy_pass http://127.0.0.1:8081;
- proxy_http_version 1.1;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header Upgrade $http_upgrade;
- proxy_set_header Connection "upgrade";
- proxy_set_header Origin "";
- }
- }
复制代码 宝塔部署宝塔环境- 创建一个静态站点,地址为想要访问的域名
- 为该站点配置证书
- 设置反向代理
- 修改反代配置 按照图示,将对应代码加入到配置文件中
- #PROXY-START/
- location /
- {
- proxy_pass http://127.0.0.1:8081;
- proxy_http_version 1.1;
- proxy_set_header Host $host;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- proxy_set_header REMOTE-HOST $remote_addr;
-
- proxy_set_header Upgrade $http_upgrade;
- proxy_set_header Connection "upgrade";
- proxy_set_header Origin "";
-
- add_header X-Cache $upstream_cache_status;
-
- #Set Nginx Cache
-
- add_header Cache-Control no-cache;
- expires 12h;
- }
- #PROXY-END/
复制代码
网页聊天即时通讯、在线客服坐席系统,专注私有本地化部署的源码
网页聊天即时通讯、在线客服坐席系统,专注私有本地化部署的源码
网页聊天即时通讯、在线客服坐席系统,专注私有本地化部署的源码
网页聊天即时通讯、在线客服坐席系统,专注私有本地化部署的源码
网页聊天即时通讯、在线客服坐席系统,专注私有本地化部署的源码
游客,本帖隐藏的内容需要积分高于 2 才可浏览,您当前积分为 0
提取码下载:
|