黄学彪
2020-11-19 9ef48d7b2da7c408b53f73be0f6eef3cbac1c84a
ZigbeeApp/Shared/Phone/ZigBee/Device/ZbGateway.cs
@@ -2664,6 +2664,9 @@
                                //订阅一个挤下线的主题
                                await RemoteMqttClient.SubscribeAsync("/ZigbeeGateWayToClient/" + Config.Instance.ConnEmqClientId + "/Push/NotifySqueeze");
                                //如果这个函数卡久了的话,会接收到云端推送的挤下线主题,不知道为什么
                                new Thread(async () =>
                                {
                                await initGateWayBaseInfomation();
                                //没有主网关时主动读取,获取主网关信息
@@ -2702,6 +2705,9 @@
                                        }
                                    }
                                }
                                })
                                { IsBackground = true }.Start();
                            });
                        }
                        #endregion
@@ -2819,6 +2825,24 @@
        }
        /// <summary>
        /// 强制断开本地的网关连接
        /// </summary>
        public async Task CloseLocalConnectionOnForce()
        {
            try
            {
                await localMqttClient.DisconnectAsync();
            }
            catch { }
            finally
            {
                localIsConnected = false;
                //这个东西也要弄
                localMqttIsConnecting = false;
            }
        }
        /// <summary>
        /// 断开远程Mqtt的链接
        /// </summary>
        public static async Task DisConnectRemoteMqttClient(string s = "")
@@ -2838,6 +2862,25 @@
            catch (Exception e)
            {
                DebugPrintLog($"Remote断开通讯连接出异常:{e.Message}");
            }
        }
        /// <summary>
        /// 强制断开远程Mqtt的链接
        /// </summary>
        /// <returns></returns>
        public static async Task CloseRemoteConnectionOnForce()
        {
            try
            {
                await RemoteMqttClient.DisconnectAsync();
            }
            catch { }
            finally
            {
                remoteIsConnected = false;
                //这个东西也要弄
                remoteMqttIsConnecting = false;
            }
        }
@@ -3558,7 +3601,7 @@
#if DEBUG
            if (flage == true)
            {
                //if (msg.Contains("DeviceStatusReport") == false)
                //if (msg.Contains("DeviceInfoRespon") == true)
                {
                    System.Console.WriteLine(msg + "  " + System.DateTime.Now.ToLongTimeString() + " " + System.DateTime.Now.Millisecond);
                }