【问题标题】:Alexa Custom Skill Device DiscoveryAlexa 自定义技能设备发现
【发布时间】:2017-08-28 15:11:16
【问题描述】:

我是 Alexa 技能集的新手,我有一个需要由 Alexa 发现的设备。我对 Alexa SMART HOME SKILL API 的设备发现功能感到困惑。我需要一些有关如何连接您构建的设备(使用树莓派)以让 Alexa 通过自定义技能发现的详细信息。

需要示例代码或良好的指南。

我知道负载应该从设备云返回(产品制造商拥有它)。您如何确保客户的设备和设备是正确的客户?

示例负载如下..

"discoveredAppliances": [{
    "applianceId": "sample-1",
    "manufacturerName": "Sample Manufacturer",
    "modelName": "Sample Thermostat",
    "version": "1",
    "friendlyName": "Sample Thermostat",
    "friendlyDescription": "Thermostat by Sample Manufacturer",
    "isReachable": true,
     "actions": [
        "setTargetTemperature",
        "incrementTargetTemperature",
        "decrementTargetTemperature"
     ],
     "additionalApplianceDetails": {
     "extraDetail1": "This is a thermostat that is reachable"
    }
 }]

你能详细解释一下discoveredAppliances json 对象吗?在设备云中为客户生成这些详细信息背后的逻辑?

【问题讨论】:

    标签: node.js aws-lambda alexa-skills-kit


    【解决方案1】:

    有效载荷中的所有信息都是为​​了让您告诉 Alexa 关于您的设备,并且可以是您想要的任何信息。真正重要的领域是:

    • applianceId:不得包含空格,并将与每个控制消息一起传递给您的技能。因此,让它为您识别特定设备。

    • friendlyName:包含用户识别该设备时需要说出的确切字词;例如,“车库灯”。

      • friendlyDescription:将在 Alexa 应用程序中显示的有关此设备的文本。

      • actions:列出您可以处理的控制事件。您列出的示例包含恒温器类型控件。灯可能支持 turnOn、turnOff 和 setPercentage 进行调光。

    您如何检测和识别您的设备完全取决于您。

    我希望这个解释会有所帮助。请注意,您还可以创建自定义技能来控制您的设备。还有更多创建自定义技能的示例。我在Github上发布了更多自定义技能信息和代码

    【讨论】:

    • 您能否解释或分享代码,您如何使用 alexa 进行设备发现。 Alexa 不使用 wifi 或发送直接信号来检测设备。相反,它调用互联网(制造商服务器),然后获取有关 alexa 周围可用设备的响应。你有示例代码或对此有确切的逻辑吗?我可以看到提到的框图,但需要深入的细节......
    • 看看一些已发布的 Alexa 智能家居技能示例,例如 kvarma 的这个:github.com/krvarma/particle-alexa-smart-home-skill。查看 lambda.js 代码中的 handleDiscovery 方法。在那里,他正在定义厨房卧室灯。
    • 关于Custom Skill的任何例子,运行Discovery流?
    • 我也有兴趣了解具有发现流程的自定义技能
    猜你喜欢
    • 2018-09-14
    • 1970-01-01
    • 2019-12-13
    • 2017-07-23
    • 1970-01-01
    • 2018-12-31
    • 2020-07-21
    • 2020-02-23
    • 2020-10-25
    相关资源
    最近更新 更多