文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

亲测一份PHP在线客服系统源码-thinkphp+workerman开发-网上流传最广的客服源码搭建教程...

2023-09-13 13:14

关注

为了帮一个客户修改自己的客服系统,所以把源码在本地搭建了一下。因为,我本身就是使用golang有开发一款客服系统的,本来不愿意看这种旧版本的PHP客服源码。但是客户那边需求很少,购买我的商务版感觉不合算,所以网上找了这一个客服源码,也是流传最广的一款PHP客服系统。当然这个源码有没有后门漏洞,就需要仔细看代码了,一般情况下可能会有BUG以及后门的,请谨慎参考。

我本地环境windows10 ,PHP的代码需要在php-fpm下运行,websocket服务端需要命令行执行。先提前安装好集成环境,比如phpstudy,方便一点。

首先把代码放到一个目录里

 

到数据库管理面板,先创建好一个数据库,比如:phpkefu。访问phpmyadmin,把根目录的kefu.sql 导入进去

配置后台的数据库连接信息 config/database.php

// +----------------------------------------------------------------------return [    // 数据库类型    'type'            => 'mysql',    // 服务器地址    'hostname'        => '127.0.0.1',    // 数据库名    'database'        => 'phpkefu',    // 用户名    'username'        => 'phpkefu',    // 密码    'password'        => 'phpkefu',    // 端口    'hostport'        => '3306',    // 连接dsn    'dsn'             => '',    // 数据库连接参数    'params'          => [],    // 数据库编码默认采用utf8    'charset'         => 'utf8',    // 数据库表前缀    'prefix'          => 'v2_',    // 数据库调试模式    'debug'           => true,    // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)    'deploy'          => 0,    // 数据库读写是否分离 主从式有效    'rw_separate'     => false,    // 读写分离后 主服务器数量    'master_num'      => 1,    // 指定从服务器序号    'slave_no'        => '',    // 自动读取主库数据    'read_master'     => false,    // 是否严格检查字段是否存在    'fields_strict'   => true,    // 数据集返回类型    'resultset_type'  => 'array',    // 自动写入时间戳字段    'auto_timestamp'  => false,    // 时间字段取出后的默认时间格式    'datetime_format' => 'Y-m-d H:i:s',    // 是否需要进行SQL性能分析    'sql_explain'     => false,    // Builder类    'builder'         => '',    // Query类    'query'           => '\\think\\db\\Query',    // 是否需要断线重连    'break_reconnect' => true,    // 断线标识字符串    'break_match_str' => [],];

配置workerman websocket服务端的数据库连接信息 websocket/config.php

 2020,    // http api 服务对外端口    'api_port' => 2945,    // gateway worker number    'gateway_worker' => 2,    // business worker number    'business_worker' => 2,    // 是否开启客服只允许单点登录 0 不开启 1 开启,    // 切换需要重启    'single_login' => 1,    // 是否开启 ssl    'is_open_ssl' => true,    'context' => [        'ssl' => [            // 请使用绝对路径            'local_cert'  => 'fullchain.pem', // 也可以是crt文件            'local_pk'  => 'privkey.pem',            'verify_peer'   => false,            'allow_self_signed' => true,// 是否允许自签名证书        ]    ],    'database' => [        'host'        => '127.0.0.1',        'user'        => 'phpkefu',        'password'    => 'phpkefu',        'database'    => 'phpkefu',        'port'        => '3306',        'charset'     => 'utf8',    ]];

配置nginx的虚拟主机,把根目录定位在  public目录 下

 然后增加伪静态配置

    if (!-e $request_filename) {            rewrite ^/(.*)$ /index.php?s=$1 last;             break;     }

这样就能访问后台了

http://域名/admin

配置项目

账户是admin,如果密码忘记了怎么办。可以直接修改数据库表v2_admin ,密码规则是md5(密码+ 加密盐) , 加密盐可以在config/service.php中看到

在这个配置里还要看看,webscoket的配置,注意区分是ws还是wss

    // 通信协议    'protocol' => 'ws://',    // socket server    'socket' => '127.0.0.1:2020',

还有一个配置文件是service_socketio.php  ,这里面也有一些域名,websocket的配置信息

启动websocket服务

双击执行websocket目录下的start_for_win.bat

还有注意看看这个目录下的config.php  ,如果不支持wss ,需要改 'is_open_ssl' => false , 如果需要支持wss,需要配置证书文件的地址

整体访问流程

整体项目就搭建起来了,需要我们先登录客服后台 /admin  去增加配置商户

再登录商户后台 /seller去增加配置坐席 ,获取访客聊天连接

再登录客服后台  ,去接待具体客户

来源地址:https://blog.csdn.net/taoshihan/article/details/130178492

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯