From e1a8f2f7e4d850beedeb1469610b878c1427e976 Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期三, 15 十二月 2021 09:01:53 +0800 Subject: [PATCH] 更新 --- SiriIntents/HDLRunSceneIntentHandlder.cs | 70 +++++++++++++++++++++++++++++++---- 1 files changed, 62 insertions(+), 8 deletions(-) diff --git a/SiriIntents/HDLRunSceneIntentHandlder.cs b/SiriIntents/HDLRunSceneIntentHandlder.cs index 99f94ee..6d260c2 100644 --- a/SiriIntents/HDLRunSceneIntentHandlder.cs +++ b/SiriIntents/HDLRunSceneIntentHandlder.cs @@ -1,4 +1,5 @@ 锘縰sing System; +using System.Collections.Generic; using Foundation; using HDLSceneSiri; using ObjCRuntime; @@ -28,14 +29,14 @@ } else { - var rsp = new HDLRunSceneIntentResponse(HDLRunSceneIntentResponseCode.Failure, null); + var rsp = new HDLRunSceneIntentResponse(HDLRunSceneIntentResponseCode.Error, null); if (NSLocale.PreferredLanguages[0].Contains("zh-")) { rsp.SuccessMessage = "璐﹀彿鏈櫥褰�"; } else { - rsp.SuccessMessage = "Not logged in to the app"; + rsp.SuccessMessage = "Not logged in to the app."; } completion(rsp); } @@ -54,7 +55,35 @@ { if (Server.HttpServerRequest.Ins.DataManager.IsLgoin) { - var result = Server.HttpServerRequest.Ins.ExecuteScene(intent.SceneId); + if(Server.HttpServerRequest.Ins.DataManager.HomeId!= intent.HomeId) + { + var rsp = new HDLRunSceneIntentResponse(HDLRunSceneIntentResponseCode.Error, null); + if (NSLocale.PreferredLanguages[0].Contains("zh-")) + { + rsp.SuccessMessage = "浣忓畢涓嶅尮閰�"; + } + else + { + rsp.SuccessMessage = "Residential mismatch."; + } + completion(rsp); + return; + } + + var result = "-1"; + if (intent.ControlType == "1") + { + result = Server.HttpServerRequest.Ins.ExecuteScene(intent.ControlId); + } + else + { + + var security = Newtonsoft.Json.JsonConvert.DeserializeObject<SecurityState>(intent.ControlJSONStr); + var sendObj = new List<SecurityState>() { new SecurityState() { + gatewayId =security.gatewayId,sid = security.sid, status = security.status, userSecurityId = security.userSecurityId + } }; + result = Server.HttpServerRequest.Ins.SetSecurityStatus(sendObj); + } if (result == "0") { var rsp = new HDLRunSceneIntentResponse(HDLRunSceneIntentResponseCode.Success, null); @@ -64,34 +93,34 @@ } else { - rsp.SuccessMessage = "Successful execution"; + rsp.SuccessMessage = "Successful execution "; } completion(rsp); } else { - var rsp = new HDLRunSceneIntentResponse(HDLRunSceneIntentResponseCode.Failure, null); + var rsp = new HDLRunSceneIntentResponse(HDLRunSceneIntentResponseCode.Error, null); if (NSLocale.PreferredLanguages[0].Contains("zh-")) { rsp.SuccessMessage = "鎵ц澶辫触"; } else { - rsp.SuccessMessage = "Execution failed"; + rsp.SuccessMessage = "Execution failed."; } completion(rsp); } } else { - var rsp = new HDLRunSceneIntentResponse(HDLRunSceneIntentResponseCode.Failure, null); + var rsp = new HDLRunSceneIntentResponse(HDLRunSceneIntentResponseCode.Error, null); if (NSLocale.PreferredLanguages[0].Contains("zh-")) { rsp.SuccessMessage = "璐﹀彿鏈櫥褰�"; } else { - rsp.SuccessMessage = "Not logged in to the app"; + rsp.SuccessMessage = "Not logged in to the app."; } completion(rsp); } @@ -104,4 +133,29 @@ } } } + + + /// <summary> + /// 瀹夐槻鐘舵�侀厤缃� + /// </summary> + public class SecurityState + { + /// <summary> + /// 瀹夐槻浜戠id + /// </summary> + public string userSecurityId; + /// <summary> + /// 缃戝叧id 缃戝叧id 濡傛灉浼犵殑鏄痵id璇ュ瓧娈甸渶瑕佷紶 + /// </summary> + public string gatewayId; + /// <summary> + /// 瀹夐槻sid + /// </summary> + public string sid; + /// <summary> + /// 鐘舵�� enable甯冮槻銆乨isable鎾掗槻 + /// </summary> + public string status; + } + } -- Gitblit v1.8.0