控制设备

控制设备协议说明

控制消息是对智能家居设备进行控制的消息。目前支持以下设备控制消息。

TurnOnRequest

当用户想打开指定设备时,右转主机会将该消息发送给智能家居服务。

Header信息

Payload信息

应用举例

当用户在右转主机操作打开设备时向智能家居服务发送TurnOnRequest消息,消息示例如下。

{
    "header": {
        "namespace": "YouZhuan.ConnectedHome.Control",
        "name": "TurnOnRequest",
        "messageId": "01ebf625-0b89-4c4d-b3aa-32340e894688",
        "payloadVersion": "1"
    },
    "payload": {
        "accessToken": "[OAuth token here]",
        "appliance": {
            "additionalApplianceDetails": {},
            "applianceId": "[Device ID for Light]"
        }
    }
}

TurnOnConfirmation

当请求的设备成功打开时,智能家居服务需要返回该消息给右转主机。

Header信息

Payload信息

应用举例

当电视成功打开时,技能向YouZhuan发送TurnOnConfirmation消息,示例如下。

{
    "header": {
        "namespace": "YouZhuan.ConnectedHome.Control",
        "name": "TurnOnConfirmation",
        "messageId": "26fa11a8-accb-4f66-a272-8b1ff7abd722",
        "payloadVersion": "1"
    },
    "payload": {
        "attributes": []
    }
}

TurnOffRequest

当用户想关闭设备时,右转主机会发送该消息给智能家居服务,通知智能家居服务关闭该设备。

Header信息

Payload信息

应用举例

当用户说(或触发主机的关闭事件)“小右小右,帮我关闭灯光”,右转主机理解用户意图后,会向智能家居服务发送TurnOffRequest消息,示例如下。

{
    "header": {
        "namespace": "YouZhuan.ConnectedHome.Control",
        "name": "TurnOffRequest",
        "messageId": "01ebf625-0b89-4c4d-b3aa-32340e894688",
        "payloadVersion": "1"
    },
    "payload": {
        "accessToken": "[OAuth token here]",
        "appliance": {
            "additionalApplianceDetails": {},
            "applianceId": "[Device ID]"
        }
    }
}

TurnOffConfirmation

当请求的设备成功关闭时,智能家居服务会向右转主机发送该消息。

Header信息

Payload信息

应用举例

当灯光成功关闭时,智能家居服务会向右转主机发送TurnOffConfirmation消息,示例如下。

{
    "header": {
        "namespace": "YouZhuan.ConnectedHome.Control",
        "name": "TurnOffConfirmation",
        "messageId": "26fa11a8-accb-4f66-a272-8b1ff7abd722",
        "payloadVersion": "1"
    },
    "payload": {
        "attributes": []
    }
}

PauseRequest

当用户想暂停设备时,右转主机会发送该消息给智能家居服务。

Header信息

Payload信息

应用举例

用户说“小右,暂停窗帘”时,右转主机了解用户意图后,会发送PauseRequest消息给智能家居服务。消息示例如下。

{
    "header": {    
        "namespace": "YouZhuan.ConnectedHome.Control",
        "name": "PauseRequest",
        "messageId": "01ebf625-0b89-4c4d-b3aa-32340e894688",
        "payloadVersion": "1"
    },
    "payload": {
        "accessToken": "[OAuth token here]",
        "appliance": {
            "additionalApplianceDetails": {},
            "applianceId": "[Device ID]"
        }
    }
}

PauseConfirmation

设备成功暂停时,智能家居服务需要返回该消息。

Header信息

Payload信息

应用举例

当窗帘暂停后,智能家居服务需要返回PauseConfirmation消息,示例如下。

{
    "header": {        
        "namespace": "YouZhuan.ConnectedHome.Control",
        "name": "PauseConfirmation",
        "messageId": "26fa11a8-accb-4f66-a272-8b1ff7abd722",
        "payloadVersion": "1"
    },
    "payload": {
        "attributes": []
    }
}

SetTemperatureRequest

当用户需要设置设备温度时,智能主机向智能家居服务发送该消息,通知设备调整温度。

Header信息

Payload信息

应用举例

用户说“小右小右,把客厅温度设置为23度”,主机了解用户意图,向智能家居服务发送SetTemperatureRequest消息,消息示例如下。

{
    "header": {
        "namespace": "YouZhuan.ConnectedHome.Control",
        "name": "SetTemperatureRequest",
        "messageId": "01ebf625-0b89-4c4d-b3aa-32340e894688",
        "payloadVersion": "1"
    },
    "payload": {
        "targetTemperature": {
            "value": 23,
            "scale": "CELSIUS"
        },
        "accessToken": "[OAuth token here]",
        "appliance": {
            "additionalApplianceDetails": {},
            "applianceId": "[Device ID]"
        }
    }
}

SetTemperatureConfirmation

当设备温度设置成功时,智能家居服务需要返回该消息。

Header信息

Payload信息

应用举例

当设备温度成功设置成23度时,智能家居服务需要返回SetTemperatureConfirmation消息,消息示例如下。

{
    "header": {
        "namespace": "YouZhuan.ConnectedHome.Control",
        "name": "SetTemperatureConfirmation",
        "messageId": "780013dd-99d0-4c69-9e35-db0457f9f2a7",
        "payloadVersion": "1"
    },
    "payload": {
        "previousState": {
            "mode": {
                "value": "AUTO"
            },
            "temperature": {
                "value": 25.0
            }
        },
        "temperature": {
            "value": 23.0
        },
        "mode": {
            "value": "AUTO"
        },
        "attributes": []
    }
}

SetFanSpeedRequest

当用户需要设置设备的风速时,主机会向智能家居服务发送该消息。

Header信息

Payload信息

应用举例

用户说“小右小右,把空调的风速设为2档”,YouZhuan接收用户意图后,向技能发送SetFanSpeedRequest消息,消息示例如下。

{
    "header": {
        "namespace": "YouZhuan.ConnectedHome.Control",
        "name": "SetFanSpeedRequest",
        "messageId": "01ebf625-0b89-4c4d-b3aa-32340e894688",
        "payloadVersion": "1"
    },
    "payload": {
        "fanSpeed": {
            "value": 2
        },
        "accessToken": "[OAuth token here]",
        "appliance": {
            "additionalApplianceDetails": {},
            "applianceId": "[Device ID]"
        }
    }
}

用户说“小右小右,把空调的风速设为高速风”,YouZhuan接收用户意图后,向技能发送SetFanSpeedRequest消息,消息示例如下。

{
    "header": {
        "namespace": "YouZhuan.ConnectedHome.Control",
        "name": "SetFanSpeedRequest",
        "messageId": "01ebf625-0b89-4c4d-b3aa-32340e894688",
        "payloadVersion": "1"
    },
    "payload": {
        "fanSpeed": {
            "level": "high"
        },
        "accessToken": "[OAuth token here]",
        "appliance": {
            "additionalApplianceDetails": {},
            "applianceId": "[Device ID]"
        }
    }
}

SetFanSpeedConfirmation

设备风速设定成功时,智能家居服务会需要返回SetFanSpeedConfirmation消息。

Header信息

Payload信息

应用举例

当空调风速设定为2档成功时,智能家居服务需要返回SetFanSpeedConfirmation消息,消息示例如下。

{
    "header": {
        "namespace": "YouZhuan.ConnectedHome.Control",
        "name": "SetFanSpeedConfirmation",
        "messageId": "780013dd-99d0-4c69-9e35-db0457f9f2a7",
        "payloadVersion": "1"
    },
    "payload": {
        "previousState": {
            "fanSpeed": {
                "value": 1
            }
        },
        "fanSpeed": {
            "value": 2
        },
        "attributes": []
    }
}

SetModeRequest

当用户需要设置设备的模式时,主机会向智能家居服务发送该消息。

Header信息

Payload信息

应用举例

用户说“小右小右,把空调调成制冷模式”,主机理解用户意图后,向智能家居服务发送SetModeRequest消息,消息示例如下。

{
    "header": {
        "namespace": "YouZhuan.ConnectedHome.Control",
        "name": "SetModeRequest",
        "messageId": "01ebf625-0b89-4c4d-b3aa-32340e894688",
        "payloadVersion": "1"
    },
    "payload": {
        "mode": {
            "deviceType": "AIR_CONDITION",
            "value": "COOL"
        },
        "accessToken": "[OAuth token here]",
        "appliance": {
            "additionalApplianceDetails": {},
            "applianceId": "[Device ID]"
        }
    }
}

SetModeConfirmation

当设备的模式设置成功时,智能家居服务返回该消息。

Header信息

Payload信息

应用举例

设备模式设置成功时,智能家居服务返回SetModeConfirmation消息,消息示例如下。

{
    "header": {
        "namespace": "YouZhuan.ConnectedHome.Control",
        "name": "SetModeConfirmation",
        "messageId": "780013dd-99d0-4c69-9e35-db0457f9f2a7",
        "payloadVersion": "1"
    },
    "payload": {
        "previousState": {
            "mode": {
                "value": "AUTO"
            }
        },
        "mode": {
            "deviceType": "AIR_CONDITION",
            "value": "COOL"
        },
        "attributes": []
    }
}

SetColorRequest

用户需要设置灯光颜色时,主机会向智能家居服务发送该消息,通知技能调整灯光颜色。

Header信息

Payload信息

应用举例

用户说:“小右小右(或者面板操作),把卧室的灯设置为红色”,主机了解到该意图时,会向智能家居服务发送SetColorRequest消息,消息示例如下。

{
    "header": {
        "namespace": "YouZhuan.ConnectedHome.Control",
        "name": "SetColorRequest",
        "messageId": "01ebf625-0b89-4c4d-b3aa-32340e894688",
        "payloadVersion": "1"
    },
    "payload": {
        "accessToken": "[OAuth token here]",
        "appliance": {
            "additionalApplianceDetails": {},
            "applianceId": "[Device ID]"
        },
        "color": {
            "hue": 0.0,
            "saturation": 1.0000,
            "brightness": 1.0000
        }
    }
}

SetColorConfirmation

当灯光颜色成功设定时,智能家居服务需要返回该消息。

Header信息

Payload信息

应用举例

当卧室灯光成功调成红色时,智能家居服务返回SetColorConfirmation消息,消息示例如下。

{
    "header": {
        "namespace": "YouZhuan.ConnectedHome.Control",
        "name": "SetColorConfirmation",
        "messageId": "780013dd-99d0-4c69-9e35-db0457f9f2a7",
        "payloadVersion": "1"
    },
    "payload": {
        "achievedState": {
            "color": {
                "hue": 0.0,
                "saturation": 1.0000,
                "brightness": 1.0000
            }
        },
        "attributes": []
    }
}

最后更新于