From eda3fb873e59544ff36301b51e05aef64f87b0f9 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期五, 27 八月 2021 13:21:21 +0800
Subject: [PATCH] Merge branch 'newBranch1' of http://172.16.1.23:6688/r/~wxr/HDL_APP_Project into newBranch1
---
HDL_ON/DAL/Mqtt/MqttClient.cs | 45 ++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 42 insertions(+), 3 deletions(-)
diff --git a/HDL_ON/DAL/Mqtt/MqttClient.cs b/HDL_ON/DAL/Mqtt/MqttClient.cs
index b7de875..8757db9 100644
--- a/HDL_ON/DAL/Mqtt/MqttClient.cs
+++ b/HDL_ON/DAL/Mqtt/MqttClient.cs
@@ -237,6 +237,14 @@
QualityOfServiceLevel = MQTTnet.Protocol.MqttQualityOfServiceLevel.AtMostOnce
};
+ //瀹夐槻鐘舵�佸彉鍖�
+ var securityStatusChange = new MqttTopicFilter()
+ {
+ Topic = $"/user/{MqttInfoConfig.Current.HomeGatewayInfo.gatewayId}/custom/security/status/up",
+ QualityOfServiceLevel = MQTTnet.Protocol.MqttQualityOfServiceLevel.AtMostOnce
+ };
+
+
#endregion
@@ -244,7 +252,8 @@
var result = await RemoteMqttClient.SubscribeAsync(new MqttTopicFilter[] {
pirStatus,pirStudy,
appDeviceRefresh,appHomeRefresh,appRoomRefresh,residenceChange,
- topicFilterPush2, topicAlinkStatus ,mqttkeyChange});
+ topicFilterPush2, topicAlinkStatus ,mqttkeyChange,
+ securityStatusChange});
if (result.Items[0].ResultCode == MQTTnet.Client.Subscribing.MqttClientSubscribeResultCode.GrantedQoS0)
{
isSubscribeSuccess = true;
@@ -434,7 +443,39 @@
pm.GetHomeGatewayList();
MainPage.Log($"缃戝叧瀵嗛挜鍙樻洿.鏂板瘑閽ワ細{DB_ResidenceData.Instance.HomeGateway.aesKey}");
}
+ //瀹夐槻鐘舵�佸彉鍖�
+ else if (topic == $"/user/{MqttInfoConfig.Current.HomeGatewayInfo.gatewayId}/custom/security/status/up")
+ {
+ if (!string.IsNullOrEmpty(DB_ResidenceData.Instance.HomeGateway.aesKey))
+ {
+ try
+ {
+ var securityBytes = Securitys.EncryptionService.AesDecryptPayload(e.ApplicationMessage.Payload, DB_ResidenceData.Instance.HomeGateway.aesKey);
+ var securityString = Encoding.UTF8.GetString(securityBytes);
+ var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<SecurityStatusObj>(securityString);
+ MainPage.Log($"瀹夐槻鐘舵�佸彉鍖栵細{securityString}");
+ if (temp != null)
+ {
+ Control_Udp.ReceiveRepeatManager(temp.id, null);
+ foreach (var updataSecurity in temp.objects)
+ {
+ var updataLocalSecurity = FunctionList.List.securities.Find((obj) => obj.sid == updataSecurity.sid);
+ if (updataLocalSecurity != null)
+ {
+ updataLocalSecurity.status = updataSecurity.status;
+ updataLocalSecurity.alarm = updataSecurity.alarm;
+ ArmCenterPage.LoadEvent_RefreshSecurityStatus(updataLocalSecurity);
+ }
+ }
+ HomePage.LoadEvent_RefreshSecurityStatus();
+ }
+ }catch(Exception ex)
+ {
+ MainPage.Log($"瀹夐槻杩滅▼淇℃伅寮傚父:{ex.Message}");
+ }
+ }
+ }
#endregion
//A缃戝叧璁惧鐘舵��-鍖呭惈娑傞甫璁惧
else if (topic == $"/user/{DB_ResidenceData.Instance.CurrentRegion.id}/app/thing/property/send")
@@ -641,8 +682,6 @@
.WithCleanSession()
.WithProtocolVersion(MQTTnet.Formatter.MqttProtocolVersion.V311)
.WithCommunicationTimeout(new TimeSpan(0, 0, 10))
- //.WithCommunicationTimeout (new TimeSpan (0, 0, 5))
- //.WithCommunicationTimeout (new TimeSpan (0, 1, 0))
.Build();
await DisConnectRemoteMqttClient("StartRemoteMqtt");
--
Gitblit v1.8.0