• 在线客服聊天系统源码_美观强大golang内核开发_二进制运行傻瓜式安装_附搭建教程...


    在线客服系统是什么

    在线客服系统可以看作一种即时通讯软件,提供网站及其他应用和访客对话的平台,更加方便网站与访客之间的交流。访客无需安装软件就可以访问企业应用,获取自己想要的信息。

    一般来说,在线客服系统的特点包含可最小化、最大化,快速、易用三点,沟通方式多样化。

    在线客服系统只需在浏览器窗口就可以进行实时交谈,它作为企业网站的客服服务和主动营销工具,给浏览过网站页面的访客建立档案,提供个性化服务,达到变访客为客户的营销目的。

    不仅如此,在线客服系统还可以完整地保留员工与客户的交谈内容,保证与客户的联系。灵通的在线客服系统还具有管理员工绩效的功能,再加上其强大的访客跟踪功能,为企业增加了营销渠道和销售机会。

    纵观当前市场,已经开发的在线客服系统多如牛毛,但真正能满足企业需求、适合所有企业的高效即时通讯系统寥寥无几。

    不过,你要是对客服系统的功能要求不高的话,可以试试GOFLY在线客服。

    无论是PC网站、手机网站、小程序、公众号、APP还是客户端,都可以接入和使用GOFLY在线客服,马上拥有在线客服功能。

    GOFLY在线客服是一款注重低成本、低门槛,接入和使用极其简单快捷 的客服系统。即使你是技术小白,也能轻松学会,接入和使用均傻瓜式,无技术门槛,

    GOFLY在线客服能满足绝大部分场景使用需求,客服聊天图文并茂,

    GOFLY在线客服妥妥地算得上是一款性价比高的在线客服系统。走过路过不要错过呀,不妨试上一试!#客服系统#

    为什么推荐我们的客服系统

    • 我们的系统支持多租户运营,一次购买,终身使用!
    • 支持公众号/小程序/PC网站/移动端网站/APP/多语言,全渠道对接智能化客服系统。
    • 摆脱各大SaaS客服平台诸多限制,搭建属于自己的在线客服系统。

    GOFLY在线客服系统是一款专注私有本地化部署的网页聊天即时通讯、在线客服坐席系统。采用Golang语言 Gin框架内核+MySQL开发编译而成,多协程模式运行,支撑高并发。 充分考虑用户的合理需求,多年持续性匠心开发功能。

    客服系统比较常见,主流的还是采用三方SDK接入,这些SDK的实现方式大都采用长连接,性能要求比较高,费用也偏高。我们在此的目标是开发一个属于自己的客服系统,完全的无依赖第三方,完全自己控制。

    我们的客服聊天系统采用长连接

    客服系统的及时性要求很高,客服一般要处理多个用户的聊天咨询,在一般情况下,客服和用户之间的聊天实时性很高,要求不能存在轮询等待这样的情况。

    开发成本:短连接通过http协议实现,收发消息只需要发送http请求即可,开发简单。

    即时通讯:长连接需要客户端和服务器一直保持连接,比较消耗服务器性能,但是可以及时获取到消息

    1. 极高通信速度;

    2. 确保实时性;

    3. 避免短时间内重复连接所造成的信道资源和网络资源的浪费。

    后端技术方案

    数据库:MySQL

    项目框架:Golang+Gin

    WEB前端技术方案

    VUE+ElementUI

    移动端

    目前访客端接入方式为:跳转H5聊天页面,移动端以webview内嵌的方式

    客服端采用uniapp开发,跨平台的生成移动端APP

    数据库结构

    消息记录存储

    访客信息存储

    客服信息存储

    常用配置存储

    系统管理相关存储

    后端程序结构

    WEB前端访客端结构

    效果展示

    访客端效果

    客服端效果

    支持访客扫码与客服聊天沟通

    在线体验

    PC端:https://gofly.v1kf.com    https://www.sopans.com

    对接代码

    1. <script src="https://gofly.v1kf.com/static/js/kefu-front.js"></script>
    2. <script>
    3. KEFU.init({
    4. KEFU_URL:"https://gofly.v1kf.com",
    5. KEFU_KEFU_ID: "taoshihan",
    6. KEFU_ENT: "5",
    7. KEFU_LANG:"cn",
    8. KEFU_SHOW_TYPES:1,
    9. KEFU_AUTO_OPEN:false,
    10. })
    11. </script>

    KEFU_URL: 网站的URL地址,例如 https://www.baidu.com
    KEFU_KEFU_ID: 客服账号用户名
    KEFU_ENT: 客服的商户ID
    KEFU_LANG: cn 中文 , en英文
    KEFU_SHOW_TYPES: 展示样式,1:普通右下角,2:圆形icon
    KEFU_AUTO_OPEN: true 自动展开,false 不自动    

    部署教程+宝塔面板一键部署包

    【软件商店=>一键部署=>导入项目】

    image.png

    点击一键部署,输入域名后,全部默认即可完成

    image.png

    image.png

    网站在线客服系统附源码演示及下载地址:www.sopans.com

    演示网站:https://www.sopans.com

    手动宝塔面板安装

    提前安装宝塔面板,宝塔面板可以很方便的配置域名、反向代理、数据库,所以建议安装一下。安装nginx,mysql数据库(5.7或以上)

    image.png

    创建数据库

    请记住设置的数据库名,用户名,密码

    image.png

    部署程序服务


    上传压缩包文件到服务器,比如上传到/www/wwwroot/go-fly-pro,给此目录的所有文件赋权限777

    image.png


    编辑config/mysql.json,修改为创建数据库时设置的数据库名,用户名,密码

    image.png

    进入shell终端执行命令


    切换目录到/www/wwwroot/kefu.xxxx.com

    cd /www/wwwroot/kefu.xxxx.com

    执行导入数据库命令,确保数据库配置信息正确,自动创建导入数据库相关表

    ./kefu install

    执行开启服务命令,监听端口,开启服务,-d为守护进程模式

    确保所有之前的旧进程已经关闭了,使用ps命令查看进程,没有关闭的kill掉旧进程。例如:ps aux|grep kefu

    如果没有关闭旧进程,会导致访问还是跑到了旧进程,新服务不生效。例如:killall kefu

    ./kefu server -d

    关闭服务,可以用ps -ef|grep kefu查看下进程是否存在,验证关闭成功

    ./sh stop.sh ,这里如果关闭不成功,可以多执行几次确保进程全部关闭

    到宝塔安全页面将8081端口开放

    如果是云服务器,则安全组也需要设置下让8081端口可以被外网访问。

    image.png

    此时可以访问外网地址: http://ip:8081/login

    配置域名

    到宝塔网站页面=>添加站点

    image.png

    设置反向代理,反代到客服程序监听的默认8081端口

    image.png

    image.png

    编辑反向代理配置文件

    image.png

    完整的配置文件(注意端口号,其他应该都不需要改动)

    1. #PROXY-START/
    2. location /
    3. {
    4. try_files $uri @kefu;
    5. }
    6. location @kefu {
    7. proxy_pass http://127.0.0.1:8081;
    8. proxy_set_header Host $host;
    9. proxy_set_header X-Real-IP $remote_addr;
    10. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    11. proxy_set_header REMOTE-HOST $remote_addr;
    12. add_header X-Cache $upstream_cache_status;
    13. proxy_set_header Upgrade $http_upgrade;
    14. proxy_set_header Connection "upgrade";
    15. #Set Nginx Cache
    16. add_header Cache-Control no-cache;
    17. }
    18. #PROXY-END/

    配置HTTPS

    需要先暂停反向代理,才能去开启

    免费的SSL证书

    image.png

    源码编译

    解压源码压缩包目录,里面有个install_go.sh的shell脚本,这是我写好的安装golang环境的脚本。

    直接执行  sh install_go.sh

    检查golang环境是否安装成功,执行  go version

    编译可执行文件,执行 go build -o kefu ,这样就会在当前目录生成名为 kefu 的二进制可执行文件。剩下步骤和上面一致。

    分布式方案

    目前为了减少依赖当前项目不支持分布式,但是可以有其他实现方案

    因为无依赖部署很方便,所以可以按域名进行分布,比如kf1.sopans.com kf2.sopans.com ,部署到不同的机器上,都使用一个MySQL数据库。前端跳转到客服的时候,通过访客ID进行下分配策略

    按地域分布,比如cn.sopans.com部署到国内机器, hk.sopans.com部署在香港,na.sopans.com 部署到北美,根据访客集中地区进行前端分配。

  • 相关阅读:
    IntelliJ IDEA 的常用快捷键
    cap分布式理论
    淘宝价格带卡位公式是什么?如何定价?
    Cadence Allegro DXF结构图的导入详细教程
    LeetCode //C - 77. Combinations
    最全总结:这几种 Python 命令行参数化的方式真香啊
    R7-19 天梯赛团队总分
    浅谈SQL Server索引视图(物化视图)以及索引视图与查询重写
    webGIS轨迹移动案例(高德)
    【大数据】Apache NiFi 助力数据处理及分发
  • 原文地址:https://blog.csdn.net/taoshihan/article/details/125523102