package com.hdl.sdk.hdl_core.Config;

public class Configuration {
    public static final String UNKNOW_TYPE = "Unknow Type";
    public static final int HDL_SDK_DEV_TYPE = 58009;

    //家电类型码
    //大类
    public static final int LIGTH_BIG_TYPE = 1;
    public static final int CURTAIN_BIG_TYPE = 2;
    public static final int SENSOR_BIG_TYPE = 5;
    /**
     * 地热模块
     */
    public static final int GEOTHERMAL_BIG_TYPE = 8;
    public static final int AIR_BIG_TYPE = 7;
    public static final int AUDIO_BIG_TYPE = 9;
    /**安防功能*/
    public static final int SECURITY_BIG_TYPE = 10;
    public static final int LOGIC_BIG_TYPE = 12;
    public static final int GLOBAL_LOGIC_BIG_TYPE = 17;
    /**
     * 新风系统
     */
    public static final int FRESH_AIR_BIG_TYPE = 19;

    //支持的小类
    public static final int FRESH_AIR_LITTLE_TYPE_0 = 0;
    public static final int GEOTHERMAL_LITTLE_TYPE_0 = 0;

    /**通用开关*/
    public static final int COMMON_SWITCH_BIG_TYPE = 100;


    //小类 先不做分类
//    public static final int AIR_LITTLE_TYPE = 0;

    //操作分类码
//    public static final int SEARCH = 100;//搜索
    public static final int CONTROL = 101;//控制
    public static final int STATE = 102;//状态
//    public static final int REMARKS = 103;//备注
//    public static final int HET_DEVICES = 104;//第三方 和而泰
//    public static final int Midea_DEVICES = 105;//第三方 美的
//    public static final int JAV_DEVICES = 106;//第三方 Jav
//    public static final int GET_LOGIC_INFO = 107;//逻辑信息
//    public static final int XW_DEVICES = 108;//第三方 向往
//    public static final int WARNING = 109;//报警
//    public static final int AUDIO = 110;//背景音乐
//    public static final int RCU_CHANGE = 111;
//    public static final int RCU_SEARCH = 112;
//    public static final int RCU_MODIFY = 113;
//    public static final int RCU_READ = 114;
//    public static final int RCU_CAST = 115;
//    public static final int MANUAL_ADD_DEVICE = 116;
//    public static final int MANUAL_ADD_REMARK = 117;


    //固定Bus端口值
    public static final int PORT = 6000;
    public static final int GET_DEVICE_FROM_BUS_PORT = 8641;


    //简易编程设备搜索操作码、设备读取操作码
    public static final int DEVICES_SEARCH_COMMAND = 0xE548;
    public static final int DEVICES_SEARCH_BACK_COMMAND = 0xE549;
    public static final int DEVICES_READ_COMMAND = 0xE44A;
    public static final int DEVICES_READ_BACK_COMMAND = 0xE44B;

    //手动添加设备相关操作码
    public static final int MANUAL_ADD_DEVICE_COMMAND = 0x6F00;
    public static final int MANUAL_ADD_DEVICE_BACK_COMMAND = 0x6F01;
    public static final int MANUAL_ADD_REMARK_COMMAND = 0x6F02;
    public static final int MANUAL_ADD_REMARK_BACK_COMMAND = 0x6F03;

    //灯光操作码、状态读取码
    public static final int LIGHT_CTRL_COMMAND = 0x0031;
    public static final int LIGHT_CTRL_BACK_COMMAND = 0x0032;
    public static final int LIGHT_STATE_COMMAND = 0x0033;
    public static final int LIGHT_STATE_BACK_COMMAND = 0x0034;

    //窗帘操作码、状态读取码
    public static final int CURTAIN_CTRL_COMMAND = 0xE3E0;
    public static final int CURTAIN_CTRL_BACK_COMMAND = 0xE3E1;
    public static final int CURTAIN_STATE_COMMAND = 0xE3E2;
    public static final int CURTAIN_STATE_BACK_COMMAND = 0xE3E3;

    //空调操作码、状态读取码(目前仅支持通用空调面板)
    public static final int AIR_CTRL_COMMAND = 0xE3D8;
    public static final int AIR_CTRL_BACK_COMMAND = 0xE3D9;
    public static final int AIR_STATE_COMMAND = 0xE3DA;
    public static final int AIR_STATE_BACK_COMMAND = 0xE3DB;

    public static final int AIR_HVAC_CTRL_COMMAND = 0x193A;
    public static final int AIR_HVAC_CTRL_BACK_COMMAND = 0x193B;
    //    public static final int AIR_HVAC_STATE_COMMAND = 0x1938;
    public static final int AIR_HVAC_STATE_BACK_COMMAND = 0x209A;


    //逻辑模块操作码、状态读取码
    public static final int LOGIC_CTRL_COMMAND = 0x0002;
    public static final int LOGIC_CTRL_BACK_COMMAND = 0x0003;
    public static final int LOGIC_STATE_COMMAND = 0x000C;
    public static final int LOGIC_STATE_BACK_COMMAND = 0x000D;


    //六端口交换机传感器 传感器操作码
    public static final int SENSOR_STATE_COMMAND = 0xE4F9;
    public static final int SENSOR_STATE_BACK_COMMAND = 0xE4FA;
//    public static final int SENSOR_BROADCAST_COMMAND = 0x1647;

    public static final int WARNING_COMMAND = 0xF606;

    //处理转发音乐数据
    public static final int AUDIO_CTRL_READ_COMMAND = 0x192E;
    public static final int AUDIO_CTRL_READ_BACK_COMMAND = 0x192F;
    public static final int MUSIC2_COMMAND = 0x0218;
    public static final int MUSIC3_COMMAND = 0x021A;
    public static final int AUDIO_MenuPlay_INSTRUCTION_COMMAND = 0x1970;
    public static final int AUDIO_MenuPlay_INSTRUCTION_BACK_COMMAND = 0x1971;


    public static final int COMMOND_COMMAND = 0xE01C;

    public static final int COMMOND_BACK_COMMAND = 0xE01D;


    /**
     * 2019-07-08 地热
     */
    //地热模块
    public static final int GEOTHERMAL_MODULE_CTRL_COMMAND = 0x1C5C;
    public static final int GEOTHERMAL_MODULE_CTRL_BACK_COMMAND = 0x1C5D;
    public static final int GEOTHERMAL_MODULE_STATE_COMMAND = 0x1C5E;
    public static final int GEOTHERMAL_MODULE_STATE_BACK_COMMAND = 0x1C5F;
//    //常规地热面板
//    public static final int GEOTHERMAL_MODULE_PANEL_CTRL_COMMAND = 0x1946;
//    public static final int GEOTHERMAL_MODULE_PANEL_CTRL_BACK_COMMAND = 0x1947;
//    public static final int GEOTHERMAL_MODULE_PANEL_STATE_COMMAND = 0x1944;
//    public static final int GEOTHERMAL_MODULE_PANEL_STATE_BACK_COMMAND = 0x1945;
//    //带PI运算的地热面板
//    public static final int GEOTHERMAL_MODULE_PI_CTRL_COMMAND = 0x1942;
//    public static final int GEOTHERMAL_MODULE_PI_CTRL_BACK_COMMAND = 0x1943;
//    public static final int GEOTHERMAL_MODULE_PI_STATE_COMMAND = 0x1940;
//    public static final int GEOTHERMAL_MODULE_PI_STATE_BACK_COMMAND = 0x1941;


    /**
     * 2019-07-08 新风系统
     */
    public static final int FRESH_AIR_CTRL_COMMAND = 0x144A;
    public static final int FRESH_AIR_CTRL_BACK_COMMAND = 0x144B;
    public static final int FRESH_AIR_STATE_COMMAND = 0x144C;
    public static final int FRESH_AIR_STATE_BACK_COMMAND = 0x144D;

    /**
     * 2020-06-23 安防功能模块操作码、状态读取码  ARMING布防 ALARM报警
     */
    public static final int SECURITY_ARMING_CTRL_COMMAND = 0x0104;//布防设置
    public static final int SECURITY_ARMING_CTRL_BACK_COMMAND = 0x0105;//布防设置反馈
    public static final int SECURITY_STATE_COMMAND = 0x011E;//读取安防设置
    public static final int SECURITY_STATE_BACK_COMMAND = 0x011F;//读取安防设置反馈
    public static final int SECURITY_ALARM_CTRL_COMMAND = 0x010C;//报警设置
    public static final int SECURITY_ALARM_CTRL_BACK_COMMAND = 0x010D;//报警设置反馈

    /**
     * 2020-06-23 通用开关
     */
    public static final int COMMON_SWITCH_CTRL_COMMAND = 0xE01C;//通用开关控制
    public static final int COMMON_SWITCH_CTRL_BACK_COMMAND = 0xE01D;//通用开关控制反馈
    public static final int COMMON_SWITCH_STATE_COMMAND = 0xE018;//读通用开关状态
    public static final int COMMON_SWITCH_STATE_BACK_COMMAND = 0xE019;//读通用开关状态反馈


    /**
     * RCU 配置数据
     */
    //固定RCU发送端口
    public static final int RCU_SEND_PORT = 6006;
    //固定RCU接收端口
    public static final int RCU_RECEIVE_PORT = 6008;
    //固定RCU 组播地址
    public static final String RCU_MULTI_IP = "224.0.168.188";

    //接收更换改变为RCU设备的操作码
    public static final int RCU_CHANGE_COMMAND = 0xE506;
    public static final int RCU_CHANGE_BACK_COMMAND = 0xE507;

    //充当设备端被发现的操作码
    public static final int RCU_SEARCH_COMMAND = 0xE54A;
    public static final int RCU_SEARCH_BACK_COMMAND = 0xE54B;

    //修改备注操作码
    public static final int RCU_MODIFY_COMMAND = 0xE54C;
    public static final int RCU_MODIFY_BACK_COMMAND = 0xE54D;

    //RCU读取SDK信息操作码
    public static final int RCU_READ_SDK_INFO_COMMAND = 0xE508;
    public static final int RCU_READ_SDK_INFO_BACK_COMMAND = 0xE509;

    //RCU房间状态广播操作码
    public static final int RCU_ROOM_CAST_COMMAND = 0x20D2;


    //RCU窗帘操作码、状态读取码
    public static final int RCU_CURTAIN_CTRL_COMMAND = 0x2069;
    public static final int RCU_CURTAIN_CTRL_BACK_COMMAND = 0x206A;
    //    public static final int RCU_CURTAIN_STATE_BACK_COMMAND = 0x;
    public static final int RCU_CURTAIN_CAST_COMMAND = 0x2099;

    //RCU空调操作码、状态读取码(目前仅支持通用空调面板)
    public static final int RCU_AIR_CTRL_COMMAND = 0x2065;
    public static final int RCU_AIR_CTRL_BACK_COMMAND = 0x2066;
    public static final int RCU_AIR_CAST_COMMAND = 0x209A;


    /**
     * 1.XWSDK 新增地热和新风接口
     * 08 地热功能 (0)地热模块 (1)常规地热面板
     * (2)带PI运算的地热面板
     * <p>
     * 19 新风系统
     * <p>
     * #region 新风协议
     * //新风协议控制
     * //附加数据:  新风通道号(1 - 200) + 开关(0,1) + 风速(0 关,1低,2中,3高) + 模式(0手动,1 自动,2 智能,3 定时)
     * FreshAirControl = 0x144A,
     * //返回:新风通道号(1 - 200) + 开关(0,1) + 风速(0 关,1低,2中,3高) + 模式(0手动,1 自动,2 智能,3 定时)+ 模拟量(2byte==16bit)+
     * //室内温度(4byte) + 室外温度(4byte) + 室内湿度(4byte)+ PM2.5(4byte) + TVOC(4byte) + CO2(4byte)
     * FreshAirControlACK = 0x144B,
     * <p>
     * <p>
     * //2.新风协议读状态
     * //附加数据:  新风通道号(1 - 200)
     * FreshAirRead = 0x144C,
     * //返回:新风通道号(1 - 200) + 开关(0,1) + 风速(0 关,1低,2中,3高) + 模式(0手动,1 自动,2 智能,3 定时) + 模拟量(2byte==16bit)+
     * //室内温度(4byte) + 室外温度(4byte) + 室内湿度(4byte)+ PM2.5(4byte) + TVOC(4byte) + CO2(4byte)
     * FreshAirReadACK = 0x144D,
     * #endregion
     */

}