# 统一网关

请求方式:post
正式环境:https://hotel.yonsz.net/api/hotel/open/gateway
沙箱环境:https://hotel.stress.yonsz.net/api/hotel/open/gateway

# 统一请求参数

请求参数统一使用json格式数据,具体格式如下

字段名称 字段说明 类型 必须 备注
header 系统级参数 Object Y 格式如下
header.authType 目前仅支持MD5 String Y 固定值 MD5
header.appId 创建应用后生成appId String Y -
header.version 版本 String Y 默认1.0
header.requestTime 请求时间戳 String Y 精确到毫秒
header.roomNo 房间号 String N 除 设备列表 和 情景模式列表,其他接口必须传此参数
header.token token String Y token为appId、requestTime、requestId、roomNo四个字段通过‘|’连接后,追加appSecret,然后Md5得到(注意secret前面也有“|”)。
注:roomNo为空也需要参与计算,即appSecret前面需要两个||
例如:abc123|1506588294932|304a1c510f9e4683a43be5f2a7cfeb52|1001|123456
计算md5值:bd8224167872ee06751826367e735206
payload 应用级参数 Object Y 根据业务类型可选,具体请参考接口详情
payload.type 请求类型 String Y 取值如下:
LIST 获取设备列表
CONTROL 设备控制
MODE 情景模式控制
STATUS 查询设备状态
CHECKIN/CHECKOUT/MODIFY 登记入住退房
SERVICE 服务请求
ROOM_LIST 房间列表

示例

{
  "header": {
    "version": 1, 
    "authType": "MD5", 
    "appId": "abc123", 
    "requestTime": 1506588295432, 
    "requestId": "304a1c510f9e4683a43be5f2a7cfeb52", 
    "roomNo": "1001", 
    "token": "bd8224167872ee06751826367e735206"
  }, 
  "payload": {
    "type": "CONTROL", 
    "name": "", 
    "devices": [
      {
        "code": "1_001_", 
        "oper": "tempSet", 
        "value": "18"
      }
    ]
  }
}

# 统一响应参数

响应请求参数统一使用json格式数据,具体格式如下

字段名称 字段说明 类型 长度 备注
success 是否成功 String 11 true_成功,false_失败
statusCode 状态码 int 11 详情请参考状态码说明
message 结果消息 String 64 状态码的描述
requestId 请求id String 11 对应请求参数的header的requestId
responseTime 响应时间 String 11
result 返回数据 Object - 具体请参考接口详情

示例

{
  "success": true, 
  "message": "success", 
  "requestId": "304a1c510f9e4683a43be5f2a7cfeb52", 
  "responseTime": 1506588295432, 
  "result": { ... }, 
  "statusCode": 200
}


# 支持的设备与操作命令

支持操作的命令会在设备发现时返回,所以实际操作命令请以接口返回为主

设备(设备类型) 操作命令 取值范围 命令说明
空调(air) - -
- power - 打开设备
- powerOff - 关闭设备
- tempUp - 温度调高
- tempDown - 温度调低
- windVertical - 打开上下摆风
- windVerticalStop - 关闭上下摆风
- windHorizontal - 左右摆风
- tempSet [16-32] 温度设置,操作时需要上传指定度数
- cold - 制冷
- heat - 制热
- dehumidification - 除湿
- sleep - 睡眠
- windSpeed - 风速
- windSpeedAuto - 风速自然风
- windSpeedLow - 风速低风
- windSpeedMedium - 风速中风
- windSpeedHigh - 风速高速风
电视/机顶盒(tv/box) - -
- power - 打开设备
- powerOff - 关闭设备
- volplus - 音量加
- volminus - 音量减
- up -
- down -
- left -
- right -
- ok - 确定
- pause - 暂停播放
- play - 开始播放
- boot - 返回主页
- back - 后退
- menu - 菜单
- powerbox - 机顶盒
- signal - 信号源
- chplus - 频道加
- chminus - 频道减
- mute - 静音
- channelSet [1-9] 频道设置
灯光(light) - -
- power - 打开设备
- powerOff - 关闭设备
- brightness [20-100] 灯光亮度
- brightness_up [20-100] 增加亮度
- brightness_down [20-100] 减少亮度
- color_temp [20-100] 色温
- color_temp_up [20-100] 增加色温
- color_temp_down [20-100] 减少色温
窗帘(blind) - -
- open - 打开窗帘
- close - 关闭窗帘
- stop - 停止窗帘
- open_up - 开大一点, value为步长,默认为20
- open_down - 关小一点, value为步长,默认为20
- travelcontrol [0-100] 窗帘行程控制(注:不是所有的窗帘都支持该操作)
插座(plug) - -
- power - 打开设备
- powerOff - 关闭设备
报警触发器(alarm_trigger) - -


# 设备状态

设备 状态名称 状态说明
空调 - -
- openFlag 设备开关标识:0_关闭,1_打开
- model 模式:1_制冷模式,2_除湿模式,4_制热模式
- temp 温度,取值范围[16-32],大部分空调只能设置30度,小部分空调可以设置32度
- speed 速度:0_自动风,1_低速风,2_中速风,3_高速风
- sleep 睡眠模式:0_关闭,1_开启
- economic 经济模式:0_关闭,1_开启
- screen 屏幕:0_关闭,1_开启
- windDirect 风向
窗帘 - -
- openFlag 设备开关标识:0_关闭,1_打开
- travelControl 窗帘的行程控制,取值范围[0-100]
- stop 窗帘是否停止:0_关闭,1_开启
灯光 - -
- openFlag 设备开关标识:0_关闭,1_打开
- brightness 亮度,取值范围[20-100]
- colorTemp 色温,取值范围[20-100]
其他 - -
- openFlag 设备开关标识:0_关闭,1_打开

# 统一状态码

状态码 状态码说明
200 执行成功则为200, 与success=true 语义一致
401 token校验失败
404 设备不存在,没有该设备或者设备被移除则返回本错误码
501 设备操作不支持,请重新获取设备操作
500 控制出现未知异常,统一返回该代码
最后一次更新时间: 1/7/2022, 3:29:20 PM