智能设备如何知道要执行哪个任务?

时间:2018-06-26 13:48:44

标签: node.js aws-lambda iot alexa smarthomeskill

我一直在尝试为智能设备构建一种Alexa技能,但是如果我使用我的Alexa向智能设备发送请求,那么它不知道该执行什么任务,这是我不明白的。 我知道直到Alexa调用了lambda函数,然后它才对智能设备服务器进行了api调用,但是我不了解该设备如何知道必须关闭电源或更改其颜色。光等。我们是否需要为此编写特殊的程序? 请有人解释一下它是如何工作的,因为我是新来的,我无法理解它。 预先谢谢你。

2 个答案:

答案 0 :(得分:0)

您正在正确拨打智能设备服务器。活动详细信息位于请求的API中。

检查设备的URL(通常包含动作名称,例如:Power)和主体(包含动作详细信息,如{"state":"on"}这样的Json)

因此,要编写智能设备应用程序,您将需要用于控制设备的API列表

答案 1 :(得分:0)

因此,基本上,当您与Echo设备通话时,您的echo设备将为您提供EventHandler信息。

  

Alexa.PowerController和Alexa.ColorController

这些是namespace,通过它您可以在编程时了解要使用的命令。例如。

{
    "directive": {
        "header": {
            "namespace": "Alexa.PowerController",
            "name": "TurnOn",
            "payloadVersion": "3",
            "messageId": "1bd5d003-31b9-476f-ad03-71d471922820",
            "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg=="
        },
        "endpoint": {
            "scope": {
                "type": "BearerToken",
                "token": "access-token-from-skill"
             },
            "endpointId": "appliance-001",
            "cookie": {}
        },
        "payload": {}
    }
}

有关详细信息,请访问powerControlcolorControl文档。这又是example

希望,这可能会对您有所帮助。