| | |
| | | public class DeviceListData |
| | | { |
| | | /// <summary> |
| | | ///延时执行时间,单位秒。 |
| | | /// </summary> |
| | | public int DelayTime; |
| | | /// <summary> |
| | | /// 成员类型 |
| | | ///<para>0:设备成员</para> |
| | | ///<para>1:场景成员</para> |
| | | ///<para>2:延时成员</para> |
| | | /// </summary> |
| | | public int Type; |
| | | |
| | | /// <summary> |
| | | /// 设备mac地址 , |
| | | ///<para>当Type=0时存在。</para> |
| | | /// </summary> |
| | | public string DeviceAddr; |
| | | /// <summary> |
| | | /// 设备端口号 |
| | | ///<para>当Type=0时存在。</para> |
| | | /// </summary> |
| | | public int Epoint; |
| | | /// <summary> |
| | | /// 设备名称 |
| | | /// </summary> |
| | | public string DeviceName; |
| | | /// <summary> |
| | | /// 设备列表 |
| | | /// 当Type=0时存在 |
| | | /// </summary> |
| | | public List<TaskListInfo> TaskList = new List<TaskListInfo>(); |
| | | |
| | | /// <summary> |
| | | /// 场景成员的场景id |
| | |
| | | public int ElseScenesId; |
| | | |
| | | /// <summary> |
| | | /// 设备mac地址 , |
| | | ///<para>当Type=0时存在。</para> |
| | | ///延时执行时间,单位秒。 |
| | | /// </summary> |
| | | public string DeviceAddr; |
| | | |
| | | public int DelayTime; |
| | | /// <summary> |
| | | /// 设备端口号 |
| | | ///<para>当Type=0时存在。</para> |
| | | /// 场景动作序号,表示第几个动作 |
| | | /// </summary> |
| | | public int Epoint; |
| | | public int MemberNumber; |
| | | |
| | | /// <summary> |
| | | /// 设备名称 |
| | | /// </summary> |
| | | public string DeviceName; |
| | | |
| | | /// <summary> |
| | | /// 设备列表 |
| | | /// </summary> |
| | | public List<TaskListInfo> TaskList = new List<TaskListInfo>(); |
| | | |
| | | |
| | | |
| | | } |
| | | /// <summary> |
| | |
| | | try{ |
| | | if (sceneMemberData != null) |
| | | { |
| | | var jObject = new JObject { { "Cluster_ID", 0 }, { "Command", 810 } }; |
| | | var jObject = new JObject { { "Cluster_ID", 0 }, { "Command", 820 } }; |
| | | var data = new JObject { }; |
| | | if (sceneMemberData.Type == 0) |
| | | { |
| | |
| | | |
| | | data = new JObject { |
| | | { "ScenesId",sceneMemberData.ScenesId}, |
| | | { "DelayTime", sceneMemberData.DelayTime} , |
| | | { "Type", sceneMemberData.Type} , |
| | | { "DeviceAddr",sceneMemberData.DeviceAddr} , |
| | | { "Epoint", sceneMemberData.Epoint} , |
| | | { "TaskList", taskList } |
| | | { "TaskList", taskList }, |
| | | { "DelayTime", sceneMemberData.DelayTime} , |
| | | { "MemberNumber",sceneMemberData.MemberNumber}, |
| | | }; |
| | | } |
| | | else if (sceneMemberData.Type == 1) |
| | | { |
| | | data = new JObject { |
| | | { "ScenesId",sceneMemberData.ScenesId}, |
| | | { "DelayTime", sceneMemberData.DelayTime} , |
| | | { "Type", sceneMemberData.Type} , |
| | | { "ElseScenesId", sceneMemberData.ElseScenesId } |
| | | { "ElseScenesId", sceneMemberData.ElseScenesId }, |
| | | { "DelayTime", sceneMemberData.DelayTime} , |
| | | { "MemberNumber",sceneMemberData.MemberNumber}, |
| | | }; |
| | | } |
| | | else if (sceneMemberData.Type == 2) |
| | | { |
| | | data = new JObject { |
| | | { "Type", sceneMemberData.Type} , |
| | | { "ScenesId",sceneMemberData.ScenesId}, |
| | | { "DelayTime", sceneMemberData.DelayTime} , |
| | | { "MemberNumber",sceneMemberData.MemberNumber}, |
| | | }; |
| | | } |
| | | |
| | |
| | | public int ScenesId; |
| | | |
| | | /// <summary> |
| | | /// 延时执行时间,单位秒 |
| | | /// </summary> |
| | | public int DelayTime; |
| | | |
| | | /// <summary> |
| | | /// 添加成员类型 |
| | | ///<para>0:节点设备</para> |
| | | ///<para>1:其他场景</para> |
| | | ///<para>2:延时类型</para> |
| | | /// </summary> |
| | | public int Type; |
| | | |
| | | /// <summary> |
| | | /// 延时执行时间,单位秒 |
| | | /// 当Type=2时存在 |
| | | /// </summary> |
| | | public int DelayTime; |
| | | /// <summary> |
| | | /// 延时执行序号,表示延时索引 |
| | | ///当Type=2时存在 |
| | | /// </summary> |
| | | public int MemberNumber; |
| | | |
| | | /// <summary> |
| | | /// 作为成员的其他场景id。 |
| | |
| | | /// <para>Type=0时存在</para> |
| | | /// </summary> |
| | | public string DeviceAddr; |
| | | |
| | | /// <summary> |
| | | /// 设备端口号 |
| | | /// <para>Type=0时存在</para> |
| | | /// </summary> |
| | | public int Epoint; |
| | | |
| | | /// <summary> |
| | | /// 设备列表 |
| | | /// <para>Type=0时存在</para> |
| | |
| | | var dInfo = new JObject{ |
| | | { "Type", deviceInfo.Type}, |
| | | { "DeviceAddr",deviceInfo.DeviceAddr}, |
| | | { "Epoint",deviceInfo.Epoint} |
| | | { "Epoint",deviceInfo.Epoint}, |
| | | { "DelayTime", deviceInfo.DelayTime} , |
| | | { "MemberNumber",deviceInfo.MemberNumber}, |
| | | }; |
| | | deviceList.Add(dInfo); |
| | | } |
| | | else |
| | | else if (deviceInfo.Type == 1) |
| | | { |
| | | var dInfo = new JObject{ |
| | | { "Type", deviceInfo.Type}, |
| | | { "ElseScenesId",deviceInfo.ElseScenesId} |
| | | { "ElseScenesId",deviceInfo.ElseScenesId}, |
| | | { "DelayTime", deviceInfo.DelayTime} , |
| | | { "MemberNumber",deviceInfo.MemberNumber}, |
| | | }; |
| | | deviceList.Add(dInfo); |
| | | } |
| | | } |
| | | else if (deviceInfo.Type == 2) |
| | | { |
| | | var dInfo = new JObject{ |
| | | { "Type", deviceInfo.Type}, |
| | | { "DelayTime", deviceInfo.DelayTime} , |
| | | { "MemberNumber",deviceInfo.MemberNumber}, |
| | | }; |
| | | deviceList.Add(dInfo); |
| | | } |
| | | |
| | | } |
| | | |
| | | var data = new JObject { |
| | | {"ScenesId",sceneRemoveMemberData.ScenesId}, |
| | |
| | | /// 移除成员类型 |
| | | ///<para >0:设备成员</para> |
| | | ///<para >1:场景成员</para> |
| | | ///<para >2:延时类型</para> |
| | | /// </summary> |
| | | public int Type; |
| | | |
| | |
| | | public string DeviceAddr; |
| | | |
| | | /// <summary> |
| | | /// 设备端口号 当Type=0时存在 |
| | | /// 设备端口号 |
| | | /// 当Type=0时存在 |
| | | /// </summary> |
| | | public int Epoint; |
| | | |
| | | /// <summary> |
| | | /// 场景成员id,当Type=1时存在 |
| | | /// 场景成员id |
| | | /// 当Type=1时存在 |
| | | /// </summary> |
| | | public int ElseScenesId; |
| | | |
| | | /// <summary> |
| | | /// 延时执行时间,单位秒 |
| | | /// 当Type=2时存在 |
| | | /// </summary> |
| | | public int DelayTime; |
| | | /// <summary> |
| | | /// 延时执行序号,表示延时索引 |
| | | ///当Type=2时存在 |
| | | /// </summary> |
| | | public int MemberNumber; |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | mainGateway.Actions += action; |
| | | System.Console.WriteLine("Scene/Open_Actions 启动" + "_" + mainGateway.getGatewayBaseInfo.gwID + System.DateTime.Now.ToString()); |
| | | try{ |
| | | var jObject = new JObject { { "Cluster_ID", 0 }, { "Command", 808 } }; |
| | | var jObject = new JObject { { "Cluster_ID", 0 }, { "Command", 821 } }; |
| | | var data = new JObject { { "ScenesId", ScenesId }, { "DelayTime", delayTime } }; |
| | | jObject.Add("Data", data); |
| | | mainGateway.Send(("Scene/Open"),System.Text.Encoding.UTF8.GetBytes(jObject.ToString())); |