var websock = null;
var global_callback = null;
var serverPort = '8000'; //webSocket連接端口
// function getWebIP(){
// var curIP = window.location.hostname;
// return curIP;
// }
function initWebSocket(){ //初始化weosocket
//ws地址
// var wsuri = "ws://" +getWebIP()+ ":" + serverPort;
let wsuri = "ws://172.16.70.100:9999/qd/userLongConnect"; //無(上一步、下一步) designId
// let wsuri = "ws://172.16.70.100:9999/qd/longConn"
websock = new WebSocket(wsuri);
websock.onopen = function () {
websocketOpen();
websock.send({flag: 3, designId: "1234567890" });
}
websock.onmessage = function(e){
websocketonmessage(e);
}
websock.onclose = function(e){
websocketclose(e);
}
websock.onerror = function () {
console.log("WebSocket連接發生錯誤");
}
}
// 實際調用的方法
function sendSock(agentData,callback){
global_callback = callback;
if (websock.readyState === websock.OPEN) {
//若是ws開啓狀態
websocketsend(agentData)
}else if (websock.readyState === websock.CONNECTING) {
// 若是 正在開啓狀態,則等待1s後重新調用
setTimeout(function () {
sendSock(agentData,callback);
}, 1000);
}else {
// 若未開啓 ,則等待1s後重新調用
setTimeout(function () {
sendSock(agentData,callback);
}, 1000);
}
}
// 連接成功
function websocketOpen(){
console.log("連接成功");
}
//數據接收
function websocketonmessage(msg){
return global_callback(msg.data);
}
//數據發送
function websocketsend(agentData){
let value = JSON.stringify(agentData);
websock.send(value);
}
//關閉
function websocketclose(){
console.log("連接關閉");
}
initWebSocket();
export {
sendSock,
websocketclose,
}