在商淘軟件WSTMart多用戶商城系統中,要實現集成客服系統的原理及操作設置是怎麽做的?接下來就一起來看看吧。
1、安裝與設置
首先在“應用”-“擴展管理”-“插件管理”安裝客服插件。安裝完成之後點擊“設置”,設置上相關信息
2、windows下啟動socket服務
雙擊打開~\addons\wstim\GatewayWorker\start_for_win.bat
~代表項目根目錄
打開之後出現如下窗口,則表示啟動成功。註意該窗口不能關閉,否則socket服務器將停止。
至此,前端可通過new WebSocket(‘ws://ip地址或網站域名:端口號’)建立長連接。
若為本地測試則使用本機局域網ip進行連接;
例如:new WebSocket(‘ws://192.168.1.36:8585’)
3、Linux下啟動socket服務
切換到該目錄下~\addons\wstim\gatewayworker-linux\start.php
~代表項目根目錄
.以debug方式啟動
php start.php start至此,前端可通過new WebSocket(‘ws://ip地址或網站域名:端口號’)建立長連接。
若為本地測試則使用本機局域網ip進行連接;
例如:new WebSocket(‘ws://192.168.1.36:8585’)
3、Linux下啟動socket服務
切換到該目錄下~\addons\wstim\gatewayworker-linux\start.php
~代表項目根目錄
.以debug方式啟動
php start.php start
以debug模式啟動可以在命令行中查看程序中的輸出信息。
.以守護進程方式啟動
php start.php start -d
至此,前端可通過new WebSocket(‘ws://ip地址或網站域名:端口號’)建立長連接。
若為本地測試則使用本機局域網ip進行連接;
例如:new WebSocket(‘ws://192.168.1.36:8585’)
4、https協議下啟動socket服務
https協議實際是http+SSL,就是在http協議上加入SSL層。Workerman支持http協議,同時也支持SSL(需要Workerman版本>=3.3.7),
所以只需要在http協議的基礎上開啟SSL即可支持https協議。
準備工作:
(1).PHP安裝了openssl擴展
(2).已經申請了證書(pem/crt文件及key文件)放在磁盤任意目錄
start_gateway.php中設置以下代碼。
start_gateway.php所在路徑:
windows版本所在路徑:
~\addons\wstim\GatewayWorker\Applications\YourApp\start_gateway.php
linux版本所在路徑:
~\addons\wstim\gatewayworker-linux\Applications\YourApp\start_gateway.php
~代表項目根目錄
//證書最好是申請的證書
$context = array(
//更多ssl選項請參考手冊http://php.net/manual/zh/context.ssl.php
'ssl' => array(
//請使用絕對路徑
'local_cert' => '磁盤路徑/server.pem', //也可以是crt文件
'local_pk' => '磁盤路徑/server.key',
'verify_peer' => false,
// 'allow_self_signed' => true, //如果是自簽名證書需要開啟此選項
)
);// websocket協議(端口任意,只要沒有被其它程序占用就行)
$gateway = new Gateway("websocket://0.0.0.0:443", $context);//開啟SSL,websocket+SSL即wss
$gateway->transport = 'ssl';
註意:
如果無法啟動,則一般是443端口被占用,請改成其它端口。如果必須使用443端口請參考worekrman手冊創建wss服務方法二部分。
wss端口只能通過wss協議訪問,ws無法訪問wss端口。
證書一般是與域名綁定的,所以測試的時候客戶端請使用域名連接,不要使用ip去連。
如果出現無法訪問的情況,請檢查服務器防火墻。
此方法要求PHP版本>=5.6,因為微信小程序要求tls1.2,而PHP5.6以下版本不支持tls1.2。
測試
打開chrome瀏覽器,按F12打開調試控制臺,在Console一欄輸入(或者把下面代碼放入到html頁面用js運行)
//證書是會檢查域名的,請使用域名連接
ws = new WebSocket("wss://域名");
ws.onopen = function() {
alert("連接成功");
}
ws.onmessage = function(e) {
alert("收到服務端的消息:" + e.data);
};
5、修改客服插件相關配置項
打開~\addons\wstim\Apis.json
~代表項目根目錄
填入socket服務監聽的域名(ip)及監聽的端口
若網站為https協議則填寫wss:域名:端口號
打開~\addons\wstim\view\static\js\common.js
~代表項目根目錄
修改下圖中的兩項
例如:
註意域名最後有斜桿