2016-09-29 59 views
1

我想写一个Alexa技能,它能够读取我列出的项目,并让我在需要时打断并让后端知道我在列表中被中断的位置。亚马逊Alexa技能套件(ASK)可以检测到它被中断的位置(如果是)?

例如:

我:找到一个关于猪的新闻报道。 Alexa:我找到了4条关于猪的新闻。第一个标题是“詹姆斯猪去墨西哥”,第二个标题是“猪逃生当地农场”[我打断] 我:告诉我这件事。 Alexa:这篇文章是由James Watson编写,注明日期,“Johnny the Potbelly Pig在围栏中发现了一个洞,并且......”

我找不到任何东西来表明我的代码可以知道发生中断的地方。我错过了吗?

回答

2

我相信你是正确的:ASK没有提供任何方式来知道你什么时候被打断,但是,这一切都是实时发生的,所以你可以通过观察两者之间的时间间隔第一个ASK'告诉'(即你在哪里调用context.success(响应)),以及何时收到“告诉我”这个意图。

请注意,US-en中读取的时间可能与US-gb不同,因此您必须进行单独的校准。此外,您可能必须在语音文本中添加一些暂停以提高准确性,因为处理时间会导致结果中的某些变化。

如果您使用AWS Lambda或Google App Engine之类的服务,当没有可用的实例时会增加额外的延迟,那么您可能需要考虑这一点。

+0

伟大的建议,谢谢。聪明的工作。如果没有人建议在接下来的一两天内不正确,我会将其标记为已接受的答案。 –

+0

我同意这个答案。我有一个应用程序,我想要制定中断点。我的计划是计算Alexa以多快的速度阅读标准文本段落。除以文本中的字符数量,并将其用作粗略估计,以便计算在中断之前读取的距离。 (正如汤姆指出的那样,最小延迟)。 –