【问题标题】:Alexa, get skill from LaunchRequest IntentAlexa,从 LaunchRequest Intent 获得技能
【发布时间】:2018-10-04 07:30:12
【问题描述】:

我的帐户中有 3 个技能,例如 SkillASkillBSkillC

我正在使用端点 url 来收听这些技能,并且我的服务器对于所有 3 种技能都是通用的。因此,如果我尝试通过说open SkillA 来调用一项技能,它会调用LaunchRequest。其他2个技能也是如此。

那么我怎么知道调用了哪个技能的LaunchRequest

我的服务器是带有 Ralyxa Gem 的 ruby​​。

【问题讨论】:

    标签: alexa alexa-skills-kit alexa-skill


    【解决方案1】:

    每个技能都有一个唯一的技能 ID,称为 applicationId。利用请求 JSON 中的 applicationId,您可以轻松确定请求来自哪个技能。

    您可以在 Alexa 向您的后端发出的每个请求中的 application 对象下找到此 applicationId

    {
        "version": "1.0",
        "session": {
            "new": true,
            "sessionId": "amzn1.echo-api.session.xxxx-xxxx-xxxx-xxxx-xxxxxxx",
            "application": {
                "applicationId": "amzn1.ask.skill.xxxx-xxxx-xxxx-xxxx-xxxx"
            },
            "user": {
                "userId": "amzn1.ask.account.xxxxxxxxxxxxxx"
            }
        },
    
    ...
    

    您还可以从列出您的 Alexa 技能的 Alexa 开发人员控制台查看技能 ID。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-21
      • 2018-06-09
      相关资源
      最近更新 更多