陈嘉乐
2020-09-02 652243206427f35a256400a149a1734085824cb9
ZigbeeApp/Shared/Phone/ZigBee/Device/BindObj.cs
@@ -19,6 +19,15 @@
        }
        [System.Serializable]
        public class AddedDeviceSingleBindResponseAllData : ErrorResponCommon
        {
            /// <summary>
            /// 网关直接反馈绑定设备信息
            /// </summary>
            public AddedDeviceSingleBindResponseData addedDeviceSingleBindResponseData;
        }
        [System.Serializable]
        public class AddedDeviceBindResponseData
        {
            /// <summary>
@@ -35,6 +44,56 @@
            /// </summary>
            public int Result = -1;
        }
        [System.Serializable]
        public class AddedDeviceSingleBindResponseData
        {
            /// <summary>
            /// 控制设备节点的mac地址
            /// </summary>
            public string DeviceAddr;
            /// <summary>
            /// 控制设备节点的端口号
            /// </summary>
            public int Epoint;
            /// <summary>
            ///绑定名称
            /// </summary>
            public string BindName;
            /// <summary>
            /// 0:成功,针对场景和跨网关绑定
            ///<para>1:失败,节点设备或场景不存在。</para>
            ///<para>2:同网关设备绑定,等待控制源设备写入反馈结果;以下面主题结果为准</para>
            /// </summary>
            public int Result = -1;
            /// <summary>
            /// 绑定类型
            ///<para>0:绑定设备 </para>
            ///<para>1:绑定场景</para>
            /// </summary>
            public int BindType;
            /// <summary>
            ///绑定的cluster数组
            /// </summary>
            public List<int> BindClusterList = new List<int>();
            /// <summary>
            /// 绑定设备Mac地址, 当BindType=0时存在
            /// </summary>
            public string BindMacAddr;
            /// <summary>
            /// 绑定设备的端口号,当BindType=0时存在
            /// </summary>
            public int BindEpoint;
            /// <summary>
            /// 绑定场景,当BindType=2时存在
            /// </summary>
            public int BindScenesId;
            /// <summary>
            ///绑定的设备或场景的名称
            /// </summary>
            public string ESName;
        }
        /// <summary>
        /// 绑定列表的信息
@@ -140,10 +199,54 @@
            /// </summary>
            public int BindScenesId;
        }
        /// <summary>
        /// 单个设备的数据
        /// </summary>
        [System.Serializable]
        public class AddSingleBindData
        {
            /// <summary>
            /// 控制设备节点的mac地址
            /// </summary>
            public string DeviceAddr;
            /// <summary>
            /// 错误信息
            /// </summary>
            public int Epoint;
            /// <summary>
            ///绑定名称,不修改名称时忽略该选项
            /// </summary>
            public string BindName;
            /// <summary>
            /// 绑定类型
            ///<para>0:绑定设备 </para>
            ///<para>1:绑定场景</para>
            /// </summary>
            public int BindType;
            /// <summary>
            ///绑定的clusters数组,需要控制设备的OutCluster列表中存在该cluster。如绑定某个设备的on/off,为6。如绑定场景,填族Id为6
            /// </summary>
            public List<int> BindClusterList = new List<int>();
            /// <summary>
            /// 绑定设备Mac地址, 当BindType=0时存在
            /// </summary>
            public string BindMacAddr;
            /// <summary>
            /// 绑定设备的端口号,当BindType=0时存在
            /// </summary>
            public int BindEpoint;
            /// <summary>
            /// 绑定场景,当BindType=1时存在
            /// </summary>
            public int BindScenesId;
        }
        #endregion
        #region 解除绑定
        /// <summary>
        ///解除绑定数据,网关反馈信息
        /// </summary>
@@ -311,9 +414,9 @@
        {
            /// <summary>
            /// 绑定类型
            ///<para>0:移除设备,同网关设备间的移除</para>
            ///<para>1:移除设备,跨网关设备间的移除</para>
            ///<para>2:移除绑定场景</para>
            ///<para>0:同网关设备</para>
            ///<para>1:跨网关设备间</para>
            ///<para>2:场景</para>
            /// </summary>
            public int BindType;
            /// <summary>
@@ -337,6 +440,104 @@
            /// </summary>
            public string ESName;
        }
        /// <summary>
        /// 获取所有绑定的信息
        /// </summary>
        public class BindListAllInfo
        {
            /// <summary>
            /// 控制源设备Mac地址
            /// </summary>
            public string KeyMacAddr;
            /// <summary>
            /// 控制源设备的端口号
            /// </summary>
            public int KeyEpoint;
            /// <summary>
            /// 绑定类型
            ///<para>0:同网关设备</para>
            ///<para>1:跨网关设备间</para>
            ///<para>2:场景</para>
            /// </summary>
            public int BindType;
            /// <summary>
            /// 绑定的cluster
            /// </summary>
            public int BindCluster;
            /// <summary>
            /// 绑定设备Mac地址, 当BindType=0时存在
            /// </summary>
            public string BindMacAddr;
            /// <summary>
            /// 绑定设备的端口号,当BindType=0时存在
            /// </summary>
            public int BindEpoint;
            /// <summary>
            /// 绑定场景,当BindType=1时存在
            /// </summary>
            public int BindScenesId;
            /// <summary>
            /// 绑定的设备或场景名称
            /// </summary>
            public string ESName;
        }
        /// <summary>
        /// 获取面板绑定回复的数据【通过mac获取的回复]
        /// </summary>
        [System.Serializable]
        public class GetPanelBindResponseDataByMac
        {
            /// <summary>
            /// 0:成功
            ///<para>1:绑定不存在</para>
            /// </summary>
            public int Result;
            /// <summary>
            /// MaxNumItems
            /// </summary>
            public int MaxNumItems;
            /// <summary>
            /// StartIndex
            /// </summary>
            public int StartIndex;
            /// <summary>
            /// ReturnBindNum
            /// </summary>
            public int ReturnBindNum;
            /// <summary>
            /// 绑定列表 ,当Status=0时存在。
            /// </summary>
            public List<BindDeviceByMacObj> BindList = new List<BindDeviceByMacObj>();
        }
        /// <summary>
        /// 获取面板绑定回复的数据【通过mac获取的回复]
        /// </summary>
        public class BindDeviceByMacObj
        {
            /// <summary>
            /// ControllerEpoint
            /// </summary>
            public int ControllerEpoint;
            /// <summary>
            /// 绑定的cluster
            /// </summary>
            public int BindCluster;
            /// <summary>
            /// 绑定设备Mac地址, 当BindType=0时存在
            /// </summary>
            public string BindMacAddr;
            /// <summary>
            /// 绑定设备的端口号,当BindType=0时存在
            /// </summary>
            public int BindEpoint;
            /// <summary>
            /// BindMode
            /// </summary>
            public int BindMode;
        }
        #endregion
        #region 从节点设备本地记录读取绑定列表信息