From df3906c03db154e8622b7caeaa3bf93b67c6d40a Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期五, 15 十月 2021 10:25:35 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/newBranch1' into CJL-Linphone
---
HDL_ON/DAL/Mqtt/MqttClient.cs | 61 ++++++++++++++++++++++--------
1 files changed, 45 insertions(+), 16 deletions(-)
diff --git a/HDL_ON/DAL/Mqtt/MqttClient.cs b/HDL_ON/DAL/Mqtt/MqttClient.cs
index ab7a620..1974da4 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;
@@ -399,7 +408,7 @@
for (int i = 0; i < FunctionList.List.GetDeviceFunctionList().Count;)
{
var localFunction = FunctionList.List.GetDeviceFunctionList()[i];
- if (localFunction.Spk_Prefix == FunctionCategory.Music || string.IsNullOrEmpty(localFunction.Spk_Prefix))
+ if (SPK.MusicSpkList().Contains(localFunction.spk))
{
i++;
continue;
@@ -434,13 +443,46 @@
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")
{
var bytes = Securitys.EncryptionService.AesDecryptPayload(e.ApplicationMessage.Payload, tuyaEncryptKey);
var revString = Encoding.UTF8.GetString(bytes);
+ MainPage.Log($"mqtt 鐘舵�佹洿鏂�:{revString}");
Control.Ins.UpdataFunctionStatus(revString, null, true);
}
//涓�绔彛鏁版嵁瑙f瀽
@@ -714,21 +756,8 @@
//娴嬭瘯璐﹀彿锛屼笉鎸や笅绾�
switch (UserInfo.Current.userMobileInfo)
{
- case "13415629083":
- case "18316120654":
- case "15622703419":
- case "18824864143":
- case "464027401@qq.com":
- case "2791308028@qq.com":
- case "13697499568":
- case "18666455392":
- case "13375012446":
- case "13602944661":
- case "18778381374":
- case "18316672920":
- case "15971583093":
case "15626203746":
- case "551775569@qq.com":
+ case "464027401@qq.com":
return;
}
--
Gitblit v1.8.0