From 627093aca723d4bfb971b97c828e8b3a22dbda78 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期五, 17 七月 2020 17:26:19 +0800
Subject: [PATCH] 2020-07-17-1
---
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlExperienceAccountLogic.cs | 248 ++++++++++++++++++++++++++++++++++++++----------
1 files changed, 194 insertions(+), 54 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlExperienceAccountLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlExperienceAccountLogic.cs
index 877cbb2..198b656 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlExperienceAccountLogic.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlExperienceAccountLogic.cs
@@ -56,6 +56,10 @@
this.InitRoomData();
//鍒濆鍖栬澶�
this.InitDeviceData();
+ //鍒濆鍖栧満鏅�
+ this.InitSceneData();
+ //鍒锋柊宸﹁竟鍒锋柊鎴块棿瑙嗗浘鍒楄〃
+ HdlRoomLogic.Current.RefreshRoomListView();
}
#endregion
@@ -95,15 +99,17 @@
}
System.IO.Directory.CreateDirectory(path);
- //娓呯┖褰撳墠浣忓畢鍒楄〃
- Config.Instance.HomeFilePathList.Clear();
- Config.Instance.HomeFilePathList.Add($"House_{homeId}.json");
+ //娉ㄦ剰,杩欓噷涓嶆竻绌哄綋鍓嶄綇瀹呭垪琛�,淇濈暀瀹冧箣鍓嶇殑浣忓畢鍒楄〃
+
//鍒涘缓涓存椂浣忓畢
var house = new House() { Id = homeId, Name = Language.StringByID(R.MyInternationalizationString.uMyHome) };
house.IsVirtually = true;
house.Save(false);
Config.Instance.HomeId = house.Id;
- Config.Instance.Home = House.GetHouseByHouseId(house.Id);
+ Config.Instance.Home = HdlResidenceLogic.Current.GetHouseByHouseId(house.Id);
+
+ //棰勫垱寤轰釜浜轰腑蹇冨叏閮ㄧ殑鏂囦欢澶�
+ UserCenterLogic.CreatAllUserCenterDirectory();
}
#endregion
@@ -116,16 +122,39 @@
private void InitFloorData()
{
Config.Instance.Home.FloorDics = new Dictionary<string, string>();
- Config.Instance.Home.FloorDics["floorKey1"] = "1F";
- Config.Instance.Home.FloorDics["floorKey2"] = "2F";
- Config.Instance.Home.FloorDics["floorKey3"] = "3F";
- Config.Instance.Home.FloorDics["floorKey4"] = "4F";
- Config.Instance.Home.FloorDics["floorKey5"] = "5F";
+ //Config.Instance.Home.FloorDics["floorKey1"] = "1F";
+ //Config.Instance.Home.FloorDics["floorKey2"] = "2F";
+ //Config.Instance.Home.FloorDics["floorKey3"] = "3F";
+ //Config.Instance.Home.FloorDics["floorKey4"] = "4F";
+ //Config.Instance.Home.FloorDics["floorKey5"] = "5F";
}
#endregion
#region 鈻� 鍒濆鍖栨埧闂確________________________
+
+ /// <summary>
+ /// 鑾峰彇鎴块棿鏍锋澘鍒楄〃
+ /// </summary>
+ /// <returns></returns>
+ private Dictionary<string, string> GetRoomSampleList()
+ {
+ var dicRoomName = new Dictionary<string, string>();
+ //瀹㈠巺
+ dicRoomName["KeTing"] = Language.StringByID(R.MyInternationalizationString.uLivingRoom);
+ //闃冲彴
+ dicRoomName["YangTai"] = Language.StringByID(R.MyInternationalizationString.uBalcony);
+ //鍗у
+ dicRoomName["WoShi"] = Language.StringByID(R.MyInternationalizationString.uBedroom);
+ //鐜勫叧
+ dicRoomName["XuanGuan"] = Language.StringByID(R.MyInternationalizationString.uVestibule);
+ //鍘ㄦ埧
+ dicRoomName["ChuFang"] = Language.StringByID(R.MyInternationalizationString.uKitchen);
+ //璧板粖
+ dicRoomName["ZouLang"] = Language.StringByID(R.MyInternationalizationString.uCorridor);
+
+ return dicRoomName;
+ }
/// <summary>
/// 鍒濆鍖栨埧闂�
@@ -137,19 +166,7 @@
//鑾峰彇鍏ㄩ儴鐨勬ゼ灞備富閿�
var listFloorKey = this.GetAllFloorKeys();
- var dicRoomName = new Dictionary<string, string>();
- //瀹㈠巺
- dicRoomName.Add("KeTing", Language.StringByID(R.MyInternationalizationString.uLivingRoom));
- //闃冲彴
- dicRoomName.Add("YangTai", Language.StringByID(R.MyInternationalizationString.uBalcony));
- //鍗у
- dicRoomName.Add("WoShi", Language.StringByID(R.MyInternationalizationString.uBedroom));
- //鐜勫叧
- dicRoomName.Add("XuanGuan", Language.StringByID(R.MyInternationalizationString.uVestibule));
- //鍘ㄦ埧
- dicRoomName.Add("ChuFang", Language.StringByID(R.MyInternationalizationString.uKitchen));
- //璧板粖
- dicRoomName.Add("ZouLang", Language.StringByID(R.MyInternationalizationString.uCorridor));
+ var dicRoomName = this.GetRoomSampleList();
//璁剧疆鍒濆妤煎眰
Config.Instance.Home.CurrentFloorId = listFloorKey[0];
@@ -198,32 +215,41 @@
{
//floorKey1 _ KeTing YangTai WoShi XuanGuan ChuFang ZouLang
var list = new List<AddDevicePra>();
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A1璺皟鍏夊櫒, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A220pir浼犳劅鍣�, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A2鎸夐敭闈㈡澘, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A3鎸夐敭闈㈡澘, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A3璺户鐢靛櫒, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A4鎸夐敭闈㈡澘, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A鍗峰笜鐢垫満, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A寮�鍚堝笜鐢垫満, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A鏂规偊鍗曞紑鍙屾帶闈㈡澘, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A鏂规偊鍙屽紑鍥涙帶闈㈡澘, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A鏂规偊鍥涘紑鍏帶闈㈡澘, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A鏂规偊鏂伴灏忔ā鍧�, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A鏂规偊鏂伴闈㈡澘, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A鏅鸿兘闂ㄩ攣, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A姘存蹈浼犳劅鍣�, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A鐑熼浘浼犳劅鍣�, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A鐕冩皵浼犳劅鍣�, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A绌烘皵寮�鍏�, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A绌鸿皟缃戝叧, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A绠�绾�2鎸夐敭闈㈡澘, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A绠�绾�3鎸夐敭闈㈡澘, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A绠�绾�4鎸夐敭闈㈡澘, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A绱ф�ユ寜閿�, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A绾㈠浼犳劅鍣�, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
- list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A闂ㄧ獥纾佷紶鎰熷櫒, RoomId = "floorKey1_KeTing", DeviceCount = 1 });
+ //鑾峰彇鍏ㄩ儴鐨勬ゼ灞備富閿�
+ var listFloorKey = this.GetAllFloorKeys();
+ foreach (var floorKey in listFloorKey)
+ {
+ //瀹㈠巺
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A2鎸夐敭闈㈡澘, RoomId = floorKey + "_KeTing", DeviceCount = 1 });
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A3鎸夐敭闈㈡澘, RoomId = floorKey + "_KeTing", DeviceCount = 1 });
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A4鎸夐敭闈㈡澘, RoomId = floorKey + "_KeTing", DeviceCount = 2 });
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A绌鸿皟缃戝叧, RoomId = floorKey + "_KeTing", DeviceCount = 1 });
+ //闃冲彴
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A220pir浼犳劅鍣�, RoomId = floorKey + "_YangTai", DeviceCount = 1 });
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A鍗峰笜鐢垫満, RoomId = floorKey + "_YangTai", DeviceCount = 1 });
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A寮�鍚堝笜鐢垫満, RoomId = floorKey + "_YangTai", DeviceCount = 1 });
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A2鎸夐敭闈㈡澘, RoomId = floorKey + "_YangTai", DeviceCount = 1 });
+
+ //鍗у
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A1璺皟鍏夊櫒, RoomId = floorKey + "_WoShi", DeviceCount = 1 });
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A3璺户鐢靛櫒, RoomId = floorKey + "_WoShi", DeviceCount = 1 });
+
+ //鐜勫叧
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A绌烘皵寮�鍏�, RoomId = floorKey + "_XuanGuan", DeviceCount = 1 });
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A1璺皟鍏夊櫒, RoomId = floorKey + "_XuanGuan", DeviceCount = 1 });
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A闂ㄧ獥纾佷紶鎰熷櫒, RoomId = floorKey + "_XuanGuan", DeviceCount = 1 });
+
+ //鍘ㄦ埧
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A4鎸夐敭闈㈡澘, RoomId = floorKey + "_ChuFang", DeviceCount = 1 });
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A姘存蹈浼犳劅鍣�, RoomId = floorKey + "_ChuFang", DeviceCount = 1 });
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A鐑熼浘浼犳劅鍣�, RoomId = floorKey + "_ChuFang", DeviceCount = 1 });
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A鐕冩皵浼犳劅鍣�, RoomId = floorKey + "_ChuFang", DeviceCount = 1 });
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A鍚搁《鐕冩皵浼犳劅鍣�, RoomId = floorKey + "_ChuFang", DeviceCount = 1 });
+
+ //璧板粖
+ list.Add(new AddDevicePra { DeviceType = VirtualDeviceEnum.A4鎸夐敭闈㈡澘, RoomId = floorKey + "_ZouLang", DeviceCount = 1 });
+ }
return list;
}
@@ -234,6 +260,9 @@
{
//鍏堝埛鏂板鍣�
LocalDevice.Current.ReFreshByLocal();
+ //椤轰究涔熸暣涓�涓嬬綉鍏�(鏈夊彲鑳藉畠鏄粠瀹炰綋璐﹀彿杞负铏氭嫙鏃�,娌℃湁娓呯┖)
+ HdlGatewayLogic.Current.ReFreshByLocal();
+ HdlGatewayLogic.Current.RefreshAppOldSelectGatewayId();
Type thisType = m_Current.GetType();
//鑾峰彇闇�瑕佸垱寤虹殑铏氭嫙璁惧鍒楄〃
@@ -245,6 +274,81 @@
var myMethod = thisType.GetMethod(methordName);
myMethod.Invoke(this, new object[] { data.DeviceCount, data.RoomId });
}
+ }
+
+ #endregion
+
+ #region 鈻� 鍒濆鍖栧満鏅痏________________________
+
+ /// <summary>
+ /// 鍒濆鍖栧満鏅�
+ /// </summary>
+ private void InitSceneData()
+ {
+ //鍒锋柊瀹瑰櫒
+ HdlSceneLogic.Current.ReFreshByLocal();
+
+ //鑾峰彇鍏ㄩ儴鐨勬ゼ灞備富閿�
+ var listFloorKey = this.GetAllFloorKeys();
+ //鑾峰彇鍏ㄩ儴鐨勬埧闂存ā鏉垮垪琛�
+ var dicRoom = this.GetRoomSampleList();
+
+ //floorKey1 _ KeTing YangTai WoShi XuanGuan ChuFang ZouLang
+ int sceneIdNo = 1;
+ //瀵规瘡涓�涓ゼ灞�
+ foreach (var floorKey in listFloorKey)
+ {
+ //瀵规瘡涓�涓埧闂�
+ foreach (var strKey in dicRoom.Keys)
+ {
+ var room = HdlRoomLogic.Current.GetRoomById(floorKey + "_" + strKey);
+ if (room == null)
+ {
+ continue;
+ }
+ //鐏叏寮�
+ var listAdjust1 = this.InitVirtualSceneAdjustList(room, 1);
+ var sceneName = Language.StringByID(R.MyInternationalizationString.uAllLightOpen);
+ var scene = HdlSceneLogic.Current.AddVirtualScene(sceneIdNo, sceneName, listAdjust1);
+ sceneIdNo++;
+ HdlSceneLogic.Current.AddSceneToRoom(room, scene);
+
+ //鐏叏鍏�
+ var listAdjust2 = this.InitVirtualSceneAdjustList(room, 0);
+ var sceneName2 = Language.StringByID(R.MyInternationalizationString.uAllLightClose);
+ var scene2 = HdlSceneLogic.Current.AddVirtualScene(sceneIdNo, sceneName2, listAdjust2);
+ sceneIdNo++;
+ HdlSceneLogic.Current.AddSceneToRoom(room, scene2);
+ }
+ }
+ }
+
+ /// <summary>
+ /// 鍒濆鍖栬櫄鎷熷満鏅殑鎵ц鐩爣(statu 0:鍏� 1:寮�)
+ /// </summary>
+ /// <param name="i_room"></param>
+ /// <param name="statu"></param>
+ /// <returns></returns>
+ private List<Scene.DeviceListData> InitVirtualSceneAdjustList(Room i_room, int statu)
+ {
+ var listBind = new List<Scene.DeviceListData>();
+ foreach (var mainKey in i_room.ListDevice)
+ {
+ var device = LocalDevice.Current.GetDevice(mainKey);
+ if (device == null) { continue; }
+ //鍙缁х數鍣ㄥ拰鐏�
+ if (device.Type == DeviceType.OnOffOutput
+ || device.Type == DeviceType.DimmableLight)
+ {
+ var data = new Scene.DeviceListData();
+ data.Type = 0;
+ data.DeviceAddr = device.DeviceAddr;
+ data.Epoint = device.DeviceEpoint;
+ data.TaskList.Add(new Safeguard.TaskListInfo() { TaskType = 1, Data1 = statu });
+ listBind.Add(data);
+ }
+ }
+ return listBind;
}
#endregion
@@ -462,6 +566,7 @@
//1涓紶鎰熷櫒
var device = new IASZone() { DeviceAddr = "DeviceAddr" + this.DeviceNumber, DeviceEpoint = 1 };
device.IasDeviceType = 13;
+ device.DeviceID = 1026;
//璁剧疆璁惧鐨勫熀鏈俊鎭�
this.SetBaseDataToDevice(device, 1200, 1200, "MSPIR01-ZB.10", i_RoomId);
@@ -482,8 +587,23 @@
{
var device = new IASZone() { DeviceAddr = "DeviceAddr" + this.DeviceNumber, DeviceEpoint = 1 };
device.IasDeviceType = 43;
+ device.DeviceID = 1026;
//璁剧疆璁惧鐨勫熀鏈俊鎭�
this.SetBaseDataToDevice(device, 1300, 1300, "MSG01/M-ZB.10", i_RoomId);
+
+ this.DeviceNumber++;
+ }
+ }
+
+ public void Zigbee鍚搁《鐕冩皵浼犳劅鍣�(int i_DeviceCount, string i_RoomId)
+ {
+ for (int i = 0; i < i_DeviceCount; i++)
+ {
+ var device = new IASZone() { DeviceAddr = "DeviceAddr" + this.DeviceNumber, DeviceEpoint = 1 };
+ device.IasDeviceType = 43;
+ device.DeviceID = 1026;
+ //璁剧疆璁惧鐨勫熀鏈俊鎭�
+ this.SetBaseDataToDevice(device, 1300, 1300, "MGCD01/ZB.10", i_RoomId);
this.DeviceNumber++;
}
@@ -495,6 +615,7 @@
{
var device = new IASZone() { DeviceAddr = "DeviceAddr" + this.DeviceNumber, DeviceEpoint = 1 };
device.IasDeviceType = 21;
+ device.DeviceID = 1026;
//璁剧疆璁惧鐨勫熀鏈俊鎭�
this.SetBaseDataToDevice(device, 1301, 1301, "MSDC01/M-ZB.10", i_RoomId);
@@ -508,6 +629,7 @@
{
var device = new IASZone() { DeviceAddr = "DeviceAddr" + this.DeviceNumber, DeviceEpoint = 1 };
device.IasDeviceType = 40;
+ device.DeviceID = 1026;
//璁剧疆璁惧鐨勫熀鏈俊鎭�
this.SetBaseDataToDevice(device, 1301, 1301, "MSS01/M-ZB.10", i_RoomId);
@@ -521,6 +643,7 @@
{
var device = new IASZone() { DeviceAddr = "DeviceAddr" + this.DeviceNumber, DeviceEpoint = 1 };
device.IasDeviceType = 13;
+ device.DeviceID = 1026;
//璁剧疆璁惧鐨勫熀鏈俊鎭�
this.SetBaseDataToDevice(device, 1303, 1303, "MSPIR01/M-ZB.10", i_RoomId);
@@ -534,6 +657,7 @@
{
var device = new IASZone() { DeviceAddr = "DeviceAddr" + this.DeviceNumber, DeviceEpoint = 1 };
device.IasDeviceType = 42;
+ device.DeviceID = 1026;
//璁剧疆璁惧鐨勫熀鏈俊鎭�
this.SetBaseDataToDevice(device, 1304, 1304, "MSW01/M-ZB.10", i_RoomId);
@@ -547,6 +671,7 @@
{
var device = new IASZone() { DeviceAddr = "DeviceAddr" + this.DeviceNumber, DeviceEpoint = 1 };
device.IasDeviceType = 44;
+ device.DeviceID = 1026;
//璁剧疆璁惧鐨勫熀鏈俊鎭�
this.SetBaseDataToDevice(device, 1305, 1305, "MBU01/M-ZB.10", i_RoomId);
@@ -591,8 +716,8 @@
this.SetBaseDataToDevice(device, 2300, 2300, "MPD0101-ZB.10", i_RoomId);
}
- //1涓户鐢靛櫒
- var device2 = new ToggleLight() { DeviceAddr = "DeviceAddr" + this.DeviceNumber, DeviceEpoint = 8 };
+ //1涓皟鍏夊櫒
+ var device2 = new DimmableLight() { DeviceAddr = "DeviceAddr" + this.DeviceNumber, DeviceEpoint = 8 };
device2.DfunctionType = DeviceFunctionType.A鐏厜;
//璁剧疆璁惧鐨勫熀鏈俊鎭�
this.SetBaseDataToDevice(device2, 2300, 2300, "MPD0101-ZB.10", i_RoomId);
@@ -607,8 +732,8 @@
{
for (int i = 0; i < i_DeviceCount; i++)
{
- //20涓┖璋�
- for (int j = 1; j <= 20; j++)
+ //10涓┖璋冨簲璇ュ彲浠ヤ簡
+ for (int j = 1; j <= 10; j++)
{
var device = new AC() { DeviceAddr = "DeviceAddr" + this.DeviceNumber, DeviceEpoint = j };
//瀹ゆ俯榛樿26鈩�
@@ -789,10 +914,24 @@
device.ModelIdentifier = ModelIdentifier;
device.CurrentGateWayId = string.Empty;
- //榛樿姣忎釜璁惧閮藉彲浠ュ畾浣�
+ //榛樿姣忎釜璁惧閮藉彲浠ュ畾浣�,鎷ユ湁寮�鍏冲姛鑳�
device.InClusterList.Add(new CommonDevice.InClusterObj { InCluster = 3 });
device.OutClusterList.Add(new CommonDevice.OutClusterObj { OutCluster = 3 });
-
+ if (device.Type == DeviceType.AirSwitch || device.Type == DeviceType.OnOffOutput
+ || device.Type == DeviceType.DimmableLight || device.Type == DeviceType.ColorDimmableLight)
+ {
+ device.InClusterList.Add(new CommonDevice.InClusterObj { InCluster = 6 });
+ device.OutClusterList.Add(new CommonDevice.OutClusterObj { OutCluster = 6 });
+ }
+ if (device.Type == DeviceType.OnOffOutput || device.Type == DeviceType.DimmableLight
+ || device.Type == DeviceType.ColorDimmableLight)
+ {
+ device.InClusterList.Add(new CommonDevice.InClusterObj { InCluster = 8 });
+ }
+ if (device.Type == DeviceType.WindowCoveringDevice)
+ {
+ device.InClusterList.Add(new CommonDevice.InClusterObj { InCluster = 258 });
+ }
//娣诲姞铏氭嫙璁惧
LocalDevice.Current.AddVirtualDeviceToMemory(device);
@@ -837,7 +976,8 @@
A鏂规偊鍙屽紑鍥涙帶闈㈡澘 = 23,
A鏂规偊鍥涘紑鍏帶闈㈡澘 = 24,
A鏂规偊鏂伴闈㈡澘 = 25,
- A鏂规偊鏂伴灏忔ā鍧� = 26
+ A鏂规偊鏂伴灏忔ā鍧� = 26,
+ A鍚搁《鐕冩皵浼犳劅鍣� = 27,
}
#endregion
--
Gitblit v1.8.0