From 1a0a7f736c6d2e7129e7591d40bed67ec7c0f09a Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期五, 05 二月 2021 10:47:42 +0800
Subject: [PATCH] 2021-02-05 1.编译冲突修改

---
 HDL_ON/DAL/Mqtt/MqttClient.cs |  134 ++++++++++++++++++++------------------------
 1 files changed, 61 insertions(+), 73 deletions(-)

diff --git a/HDL_ON/DAL/Mqtt/MqttClient.cs b/HDL_ON/DAL/Mqtt/MqttClient.cs
index 405c696..8c97e15 100644
--- a/HDL_ON/DAL/Mqtt/MqttClient.cs
+++ b/HDL_ON/DAL/Mqtt/MqttClient.cs
@@ -138,7 +138,7 @@
                     try
                     {
                         System.Threading.Thread.Sleep(500);
-                        if (!Control.Ins.IsRemote) continue;
+                        //if (!Control.Ins.IsRemote) continue;
                         //杩涘叆鍚庡彴涓嶅鐞�
                         if (MainPage.IsEnterBackground) continue;
 
@@ -171,38 +171,31 @@
             {
                 try
                 {
-                    //2020-05-14 璁㈤槄涓婚璐ㄩ噺鏀逛负0
-                    var topicFilterBusGateWayToClient = new MqttTopicFilter()
+                    if (DB_ResidenceData.Instance.GatewayType == 0 && !DB_ResidenceData.Instance.CheckWhetherGatewayIdIsNull())
                     {
-                        Topic = $"/BusGateWayToClient/{MqttInfoConfig.Current.HomeGatewayInfo.gatewayId}/#",
-                        QualityOfServiceLevel = MQTTnet.Protocol.MqttQualityOfServiceLevel.AtMostOnce
-                        //QualityOfServiceLevel = MQTTnet.Protocol.MqttQualityOfServiceLevel.ExactlyOnce
-                    };
-
+                        Utlis.WriteLine("寮�濮嬭闃呬竴绔彛閫氱敤涓婚锛�");
+                        //2020-05-14 璁㈤槄涓婚璐ㄩ噺鏀逛负0
+                        var topicFilterBusGateWayToClient = new MqttTopicFilter()
+                        {
+                            Topic = $"/BusGateWayToClient/{MqttInfoConfig.Current.HomeGatewayInfo.gatewayId}/#",
+                            QualityOfServiceLevel = MQTTnet.Protocol.MqttQualityOfServiceLevel.AtMostOnce
+                        };
+                        await RemoteMqttClient.SubscribeAsync(topicFilterBusGateWayToClient);
+                    }
+                    //鎸や笅绾夸富棰�
                     var topicFilterPush2 = new MqttTopicFilter
                     {
                         Topic = $"/BusGateWayToClient/{UserInfo.Current.ID}/#",
                         QualityOfServiceLevel = MQTTnet.Protocol.MqttQualityOfServiceLevel.AtMostOnce,
-                        //QualityOfServiceLevel = MQTTnet.Protocol.MqttQualityOfServiceLevel.ExactlyOnce
                     };
                     var topicAlinkStatus = new MqttTopicFilter()
                     {
                         Topic = $"/user/{DB_ResidenceData.Instance.CurrentRegion.RegionID}/app/thing/property/send",
                         QualityOfServiceLevel = MQTTnet.Protocol.MqttQualityOfServiceLevel.AtMostOnce
                     };
-                    var topicAlinkGatewayStatus = new MqttTopicFilter()
-                    {
-                        Topic = $"/user/{DB_ResidenceData.Instance.HomeGateway.gatewayId}/app/thing/property/send",
-                        QualityOfServiceLevel = MQTTnet.Protocol.MqttQualityOfServiceLevel.AtMostOnce
-                    };
-                    //var topicBusStatus = new MqttTopicFilter()
-                    //{
-                    //    Topic = $"/BusGateWayToClient/{}/Common",
-                    //    QualityOfServiceLevel = MQTTnet.Protocol.MqttQualityOfServiceLevel.AtMostOnce
-                    //};
 
                     Utlis.WriteLine("寮�濮嬭闃咃紒");
-                    var result = await RemoteMqttClient.SubscribeAsync(new MqttTopicFilter[] { topicFilterBusGateWayToClient, topicFilterPush2, topicAlinkStatus, topicAlinkGatewayStatus });
+                    var result = await RemoteMqttClient.SubscribeAsync(new MqttTopicFilter[] {  topicFilterPush2, topicAlinkStatus });
                     if (result.Items[0].ResultCode == MQTTnet.Client.Subscribing.MqttClientSubscribeResultCode.GrantedQoS0)
                     {
                         Control.Ins.GatewayOnline = true;
@@ -210,9 +203,6 @@
                         Utlis.WriteLine("璁㈤槄鎴愬姛锛�");
 
                         MqttRemoteSend(new byte[] { 0 }, 3);
-
-                        //杩炴帴鎴愬姛鍚庢娴嬫槸鍚﹂渶瑕侀�氳繃杩滅▼鑾峰彇Key
-                        //CheckIfNeedGetLocalPasswordFromRemote();
                     }
                 }
                 catch (Exception ex)
@@ -261,62 +251,61 @@
                             try
                             {
                                 var topic = e.ApplicationMessage.Topic;
+                                //涓�绔彛涓婚澶勭悊
+                                if (DB_ResidenceData.Instance.GatewayType == 0 && !DB_ResidenceData.Instance.CheckWhetherGatewayIdIsNull())
+                                {
+                                    if (topic == $"/BusGateWayToClient/{MqttInfoConfig.Current.HomeGatewayInfo.gatewayId}/NotifyBusGateWayInfoChange")
+                                    {
+                                        //缃戝叧涓婄嚎锛岄渶瑕佹洿鏂癮eskey
+                                        //鏀跺埌缃戝叧涓婄嚎娑堟伅涓婚
+                                        ReceiveNotifyBusGateWayInfoChange();
+                                        return;
+                                    }
+                                    else if (topic == $"/BusGateWayToClient/{MqttInfoConfig.Current.HomeGatewayInfo.gatewayId}/NotifyGateWayOffline")
+                                    {
+                                        //缃戝叧鎺夌嚎
+                                        //----绗簩姝ワ細璇诲彇璐﹀彿涓嬮潰鐨勭綉鍏冲垪琛�
+                                        ReceiveNotifyGateWayOffline();
+                                        return;
+                                    }
+                                    else if (topic == $"/BusGateWayToClient/{MqttInfoConfig.Current.HomeGatewayInfo.gatewayId}/Common/CheckGateway")
+                                    {
+                                        var ss = Encoding.UTF8.GetString(e.ApplicationMessage.Payload);
+                                        ReceiveCheckGateway(ss);
+                                        return;
+                                    }
+                                }
+
                                 if (topic == $"/BusGateWayToClient/{UserInfo.Current.ID}" + PushNotifySqueeze)
                                 {
                                     var mMes = Encoding.UTF8.GetString(e.ApplicationMessage.Payload);
                                     //鏂版尋涓嬬嚎涓婚鏂规 鏀跺埌鎸や笅绾夸富棰�
                                     ReceiveNotifySqueezeAsync(mMes);
                                 }
-                                else if (topic == $"/BusGateWayToClient/{MqttInfoConfig.Current.HomeGatewayInfo.gatewayId}/NotifyBusGateWayInfoChange")
-                                {//缃戝叧涓婄嚎锛岄渶瑕佹洿鏂癮eskey
-                                    //鏀跺埌缃戝叧涓婄嚎娑堟伅涓婚
-                                    ReceiveNotifyBusGateWayInfoChange();
-                                }
-                                else if (topic == $"/BusGateWayToClient/{MqttInfoConfig.Current.HomeGatewayInfo.gatewayId}/NotifyGateWayOffline")
-                                {//缃戝叧鎺夌嚎
-                                    //----绗簩姝ワ細璇诲彇璐﹀彿涓嬮潰鐨勭綉鍏冲垪琛�
-                                    ReceiveNotifyGateWayOffline();
-                                }
-                                else if (topic == $"/BusGateWayToClient/{MqttInfoConfig.Current.HomeGatewayInfo.gatewayId}/Common/CheckGateway")
-                                {
-                                    var ss = Encoding.UTF8.GetString(e.ApplicationMessage.Payload);
-                                    ReceiveCheckGateway(ss);
-                                }
-                                //娑傞甫璁惧鐘舵��
+                                //A缃戝叧璁惧鐘舵��-鍖呭惈娑傞甫璁惧
                                 else if (topic == $"/user/{DB_ResidenceData.Instance.CurrentRegion.RegionID}/app/thing/property/send")
                                 {
                                     var bytes = Securitys.EncryptionService.AesDecryptPayload(e.ApplicationMessage.Payload, tuyaEncryptKey);
-                                    MainPage.Log($"tuya mqtt A-Link data");
-                                    //A鍗忚鏁版嵁澶勭悊
                                     var revString = Encoding.UTF8.GetString(bytes);
                                     Control.Ins.UpdataFunctionStatus(revString, null);
                                 }
+                                //涓�绔彛鏁版嵁瑙f瀽
                                 else
                                 {
                                     SetGatewayOnlineResetCheck();
                                     var bytes = Securitys.EncryptionService.AesDecryptPayload(e.ApplicationMessage.Payload, mqttEncryptKey);
                                     //bus鏁版嵁瑙f瀽
-                                    if (DB_ResidenceData.Instance.GatewayType == 0)
-                                    {
-                                        var packet = new Packet();
+                                    var packet = new Packet();
 
-                                        if (!string.IsNullOrEmpty(mqttEncryptKey))
-                                        {
-                                            packet.Bytes = Securitys.EncryptionService.AesDecryptPayload(e.ApplicationMessage.Payload, mqttEncryptKey);
-                                        }
-                                        else
-                                        {
-                                            packet.Bytes = e.ApplicationMessage.Payload;
-                                        }
-                                        packet.Manager();
+                                    if (!string.IsNullOrEmpty(mqttEncryptKey))
+                                    {
+                                        packet.Bytes = Securitys.EncryptionService.AesDecryptPayload(e.ApplicationMessage.Payload, mqttEncryptKey);
                                     }
                                     else
                                     {
-                                        MainPage.Log($"mqtt A-Link data");
-                                        //A鍗忚鏁版嵁澶勭悊
-                                        var revString = Encoding.UTF8.GetString(bytes);
-                                        Control.Ins.UpdataFunctionStatus(revString, null);
+                                        packet.Bytes = e.ApplicationMessage.Payload;
                                     }
+                                    packet.Manager();
                                 }
                             }
                             catch { }
@@ -343,7 +332,6 @@
                         });
                     }
                     #endregion
-                    //}
 
                     //(4)===========寮�濮嬭繛鎺ヨ繃绋�==========
                     //涔嬪墠宸茬粡鑾峰彇鍙傛暟鎴愬姛杩�
@@ -419,10 +407,10 @@
         /// <returns></returns>
         static async Task StartMQTTGetInfo()
         {
-            if (!Control.Ins.IsRemote)
-            {
-                return;
-            }
+            //if (!Control.Ins.IsRemote)
+            //{
+            //    return;
+            //}
 
             await GetMqttInfoAndMQTTConnectAsync();
 
@@ -443,10 +431,10 @@
         static async Task MQTTConnectAsync()
         {
 
-            if (!Control.Ins.IsRemote)
-            {
-                return;
-            }
+            //if (!Control.Ins.IsRemote)
+            //{
+            //    return;
+            //}
 
             //if (MqttInfoConfig.Current.HomeGatewayInfo != null && MqttInfoConfig.Current.mMqttInfo != null)
             //娌℃湁缃戝叧鎯呭喌涓嬶紝涔熼渶瑕佽繛鎺qtt锛屾秱楦︾涓夋柟璁惧涓嶉渶瑕佺綉鍏�
@@ -468,12 +456,12 @@
                     MqttInfoConfig.Current.IfGetMqttInfoSuccess = true;
                     MqttInfoConfig.Current.Save();
 
-                    mqttEncryptKey = MqttInfoConfig.Current.HomeGatewayInfo.aesKey;
 
                     if (MqttInfoConfig.Current.HomeGatewayInfo == null)
                     {
                         MqttInfoConfig.Current.HomeGatewayInfo = new Server.HomeGatewayInfo();
                     }
+                    mqttEncryptKey = MqttInfoConfig.Current.HomeGatewayInfo.aesKey;
                     //瑙e瘑瀵嗛挜瑙勫垯锛氬凡鐜版湁鐨勪綇瀹匢D涓哄熀鍑�,浠庡彸杈逛竴涓�鑾峰彇鍊�,鏈�鍚庡鏋滀笉澶�16浣�,鍒欏線鍙宠ˉ闆�
                     string aesKey = string.Empty;
                     for (int i = DB_ResidenceData.Instance.CurrentRegion.RegionID.Length - 1; i >= 0; i--)
@@ -708,18 +696,18 @@
                 MqttInfoConfig.Current.mMqttInfo = mqttInfoRequestResult_Obj;
                 await MQTTConnectAsync();
                 //1.鍒ゆ柇鏄惁缁戝畾浜嗙綉鍏筹紝鑾峰彇缃戝叧杩滅▼杩炴帴鐨勫姞瀵咾EY
-                if (DB_ResidenceData.Instance.CheckWhetherGatewayIsBound())
+                //if (DB_ResidenceData.Instance.CheckWhetherGatewayIsBound())
                 {
                     //2.鎵惧嚭鏄惁瀛樺湪鍖归厤褰撳墠浣忓畢鐨刴ac锛屽瓨鍦ㄥ啀杩涜杩滅▼銆�
                     MqttInfoConfig.Current.HomeGatewayInfo = DB_ResidenceData.Instance.HomeGateway;
                     //3.寮�濮嬭繛鎺�
                     await MQTTConnectAsync();
                 }
-                else
-                {
-                    Utlis.WriteLine("============>杩樻病缁戝畾缃戝叧");
-                    hadGateway = false;
-                }
+                //else
+                //{
+                //    Utlis.WriteLine("============>杩樻病缁戝畾缃戝叧");
+                //    hadGateway = false;
+                //}
             }
         }
 

--
Gitblit v1.8.0