Przeglądaj źródła

test: websocket heart

HeWang 6 miesięcy temu
rodzic
commit
c19cf09b60
1 zmienionych plików z 10 dodań i 9 usunięć
  1. 10 9
      aarch64/pjibot_guide/common/config/c_websocket.go

+ 10 - 9
aarch64/pjibot_guide/common/config/c_websocket.go

@@ -42,7 +42,7 @@ type StatusMessage struct {
 }
 
 func keepAlive() {
-	ticker := time.NewTicker(30 * time.Second)
+	ticker := time.NewTicker(60 * time.Second)
 	defer ticker.Stop()
 	request := Request{
 		Type:      "request",
@@ -79,23 +79,22 @@ func keepAlive() {
 			}
 			c_log.GlobalLogger.Info("websocket发送心跳请求解析状态为", responseMessage.Status)
 			if responseMessage.Status != "OK" {
-				//WsConn.Close()
+				WsConn.Close()
 				c_log.GlobalLogger.Info("重试连接websocket...")
-				InitWebsocketConfig() // 重新连接
+				ConnectWebsocket() // 重新连接
 				continue
 			}
 		}
 	}
 }
 
-func InitWebsocketConfig() {
+func ConnectWebsocket() {
 	for {
 		// 防止重复调用
 		if reconnectionInProgress {
 			return
 		}
 		reconnectionInProgress = true
-
 		c_log.GlobalLogger.Info("初始化Websocket连接 - 开始。")
 		serverURL := LocalConfig.Node.Ip + ":" + LocalConfig.LocalWebsocketPort
 		path := "/"
@@ -125,12 +124,14 @@ func InitWebsocketConfig() {
 
 		WsConn = coon
 		c_log.GlobalLogger.Info("初始化Websocket连接 - 成功。")
-
-		// 保持连接活跃
-		go keepAlive()
-
 		// 连接成功,退出循环
 		reconnectionInProgress = false
 		break
 	}
 }
+
+func InitWebsocketConfig() {
+	ConnectWebsocket()
+	// 保持连接活跃
+	go keepAlive()
+}