【问题标题】:Alexa Intent Swithing contextAlexa Intent 切换上下文
【发布时间】:2018-08-28 10:16:20
【问题描述】:

我是 Alexa 开发新手,我使用 ApiToBot 第三方应用程序来创建和构建意图和响应, 我使用 HTTPS 方法联系服务器。 然后我成功地将项目部署到了​​alexa开发者账户中。 当我测试应用程序时,我陷入了错误。

现在我必须 Intent 并且他们的响应来自 HTTPS 服务器。 打开技能后,我收到了欢迎回复,之后我调用了一个意图,我收到了回复。

但我称之为第二个意图,它没有显示响应,反之亦然。

只有一个意图在起作用。

【问题讨论】:

  • 您能详细说明您的问题吗?你得到什么错误?
  • 简单地说。我的 Alexa 技能有 4 个意图和他们的反应。当我通过说alexa open SKILL NAME来测试技能时。之后我问一个意图它工作得很好,接下来我问另一个意图它给出了来自 alexa 的默认响应。 Alexa 和用户之间的对话不起作用。
  • 分享每个请求的请求和响应JSON。
  • 我使用API​​TOBOT第三方应用程序通过https进行api调用。请检查一次apitobot.io
  • 每次您与技能互动时都会生成一个请求,请分享该请求并由您响应。

标签: alexa alexa-skills-kit


【解决方案1】:

我希望this 是您的请求,this 是您的回应。

如果是这种情况,您的回复已将shouldEndSession 参数设置为true。这意味着,一旦您的回复被阅读,Alexa 将结束会话并关闭技能。你已经不在技能里面了。每当您希望 Alexa 等待用户响应时,通过将 shouldEndSession 参数设置为 false 来保持会话处于活动状态。

例如:你的回答应该是

{
  "body": {
    "version": "1.0",
    "response": {
      "outputSpeech": {
        "type": "SSML",
        "ssml": "<speak><p>Followers of user id 641 is [Martijn Verbove Anton Cooee Found Ryze Rebekah Radice Jonah Lupton Mila Chervenkova? David Morrison Tiep Vu Nicholas Tenhue Deepak Laxmi Narasimha Feda Jaan Lolly Daskal Hämorrhoiden selbst behandeln SF Ali Nicole Hardin Pradeep Chopra WhatUsersDo Alice Jones Arpit Maheshwari Мартин Стојчевски Pete Roome Dean Pikock.com Chad Scira Phil Hendrix] </p></speak>"
      },
      "shouldEndSession": false
    }
  }
}

阅读this answer 了解更多关于使用ask-nodejs-sdk 保持会话活动的信息

更多关于响应对象here的信息。

【讨论】:

    猜你喜欢
    • 2021-04-07
    • 2011-07-23
    • 2013-04-21
    • 2017-06-13
    • 1970-01-01
    • 1970-01-01
    • 2017-09-09
    • 2011-07-27
    相关资源
    最近更新 更多