使用当天选择 Alexa Intent
Posted
技术标签:
【中文标题】使用当天选择 Alexa Intent【英文标题】:Using the current day to select Alexa Intent 【发布时间】:2018-03-13 19:05:59 【问题描述】:我目前有一项技能,当你说时间表我星期一有什么课程
它返回我的课程列表。但是我不确定如何做到这一点,以便当我说 时间表我今天有什么课程时,如果今天是星期一,它会返回我星期一有什么课程如果今天是星期四,则为星期四的课程,依此类推。
目前,我有 5 个以 5 个工作日命名的意图以及与之相关的话语。是否有可能让它利用今天的时间来选择正确的意图?
【问题讨论】:
你是如何制定某一天的时间表的?你为此使用了一些集成吗? 【参考方案1】:这是解决问题的一种方法,
为“我今天有哪些课程的时间表”创建意图和示例话语 在特定意图的逻辑中,使用特定语言功能获取当前日期。如果您使用的是 javascript (node.js),那么您可以执行以下操作(或者,您可以使用任何其他 npm 包,例如 'moment.js' 进行日期操作。var dt = new Date();
var weekday = new Array(7);
weekday[0] = "Sunday";
weekday[1] = "Monday";
weekday[2] = "Tuesday";
weekday[3] = "Wednesday";
weekday[4] = "Thursday";
weekday[5] = "Friday";
weekday[6] = "Saturday";
var day = weekday[dt.getDay()];
将天的值填充到槽中(在运行时)。现在您的插槽将有今天。
【讨论】:
【参考方案2】:听起来“时间表”是您的调用词。
您可以使用带有一周中某一天 (AMAZON.DayOfWeek) 或日期 (AMAZON.Date) 的插槽的单一意图来执行此操作。您似乎每天都在使用一个单独的意图,这很有效,但可能会导致一堆重复的代码。这完全是您的偏好,但我建议使用 AMAZON.DayOfTheWeek 插槽将您的单独意图重构为单个意图。一旦这样做了,我想你会发现添加一个带有日期槽的意图对你来说很容易。
使用 Vijayanath 描述的 Date() 函数应该可以正常工作。
然后您可以扩展它以了解给定日期是否没有任何课程(例如星期六或星期日)以报告第二天的课程是什么(例如星期一的)。
【讨论】:
以上是关于使用当天选择 Alexa Intent的主要内容,如果未能解决你的问题,请参考以下文章