From 9ef48d7b2da7c408b53f73be0f6eef3cbac1c84a Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期四, 19 十一月 2020 10:23:45 +0800 Subject: [PATCH] Evoyo.Home1.1.0120111601_Release --- ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayReceiveLogic.cs | 45 ++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 44 insertions(+), 1 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayReceiveLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayReceiveLogic.cs index b912a16..76c3d28 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayReceiveLogic.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayReceiveLogic.cs @@ -33,6 +33,14 @@ } /// <summary> + /// 缃戝叧鎺ユ敹浜嬩欢(鍙傛暟1:涓婚 鍙傛暟2:鎺ㄩ�佹秷鎭�) + /// </summary> + private Action<string, string> GatewayReceiveEvent = null; + /// <summary> + /// 鎺ユ敹缃戝叧鐨刬d + /// </summary> + private string GatewayReceiveId = null; + /// <summary> /// 璁惧鎺ㄩ�佷簨浠堕泦鍚� /// </summary> private Dictionary<string, Action<CommonDevice>> dicDeviceEvent = new Dictionary<string, Action<CommonDevice>>(); @@ -54,6 +62,11 @@ /// <param name="msgData">鎺ユ敹鐨勬暟鎹�</param> public void GatewayOverallMsgReceive(string gatewayId, string topic, string reportTopic, string msgData) { + //濡傛灉瀹冨湪鐧婚檰鐣岄潰,鍒欎笉鍋氫换浣曞鐞� + if (Common.Config.Instance.HomeId == string.Empty) + { + return; + } if (topic == "AppNoLogin") { HdlThreadLogic.Current.RunMain(() => @@ -141,7 +154,11 @@ { if (HdlGatewayLogic.Current.IsGatewayExist(gatewayId) == false) { - //涓嶆槸鑷繁缁戝畾鐨勭綉鍏筹紝鍒欎笉澶勭悊 + //涓嶆槸鑷繁缁戝畾鐨勭綉鍏筹紝鍒欎笉澶勭悊,浣嗘槸涓嬮潰杩欎釜涓滆タ鏈夌偣鐗规畩 + if (gatewayId == this.GatewayReceiveId) + { + this.GatewayReceiveEvent?.Invoke(topic, msgData); + } return; } //璁惧灞炴�т笂鎶� @@ -194,6 +211,11 @@ else if (topic == gatewayId + "/Scene/Exec_Respon") { this.SceneExecPush(null); + } + //缃戝叧鎺ユ敹浜嬩欢 + else if (gatewayId == this.GatewayReceiveId) + { + this.GatewayReceiveEvent?.Invoke(topic, msgData); } } catch (Exception ex) @@ -1115,6 +1137,18 @@ } } + /// <summary> + /// 娣诲姞缃戝叧鎺ユ敹浜嬩欢(action鍙兘瀛樺湪涓�涓�,涓嶢ddAttributeEvent涓嶅叡瀛�,AddAttributeEvent浼樺厛) + /// </summary> + /// <param name="i_gatewayId">缃戝叧id</param> + /// <param name="action">鍙兘瀛樺湪涓�涓猘ction (鍙傛暟1:涓婚 鍙傛暟2:鎺ㄩ�佹秷鎭�)</param> + public void AddGatewayReceiveEvent(string i_gatewayId, Action<string, string> action) + { + //娣诲姞浜嬩欢 + this.GatewayReceiveEvent = action; + this.GatewayReceiveId = i_gatewayId; + } + #endregion #region 鈻� 绉婚櫎璁惧鐩戝惉_______________________ @@ -1158,6 +1192,15 @@ } } + /// <summary> + /// 绉婚櫎缃戝叧鎺ユ敹浜嬩欢(鍙兘瀛樺湪涓�涓簨浠�) + /// </summary> + public void RemoveGatewayReceiveEvent() + { + this.GatewayReceiveEvent = null; + this.GatewayReceiveId = null; + } + #endregion #region 鈻� 涓�鑸柟娉昣__________________________ -- Gitblit v1.8.0