繁体   English   中英

Watson 助手根据@sys-date 的用户输入将星期几放入变量中

[英]Watson assistant putting the day of the week in a variable based on user input of @sys-date

我正在制作一个可以预订晚餐的机器人。 当它询问用户预订时间时,我希望机器人根据用户输入的日期用星期几填充我的变量 $dayoftheweek。 我怎么能做到这一点?

投币口

这是我的插槽“如果找到”。

价值 基本上我想知道我可以投入什么“价值”来获得一周中的某一天。

最简单的方法是使用新的系统实体(目前处于测试阶段) 在您的技能选项中启用测试版。 然后,在您的对话节点中,分配以下内容:

Check for: @sys-data.day_of_week
save as: mydayofweek

请注意,日期名称是小写的。

您可以使用表达式语言的方法reformatDateTime从@sys-date 获取日期。

例如将$dayofweek设置为

<? @sys-date.reformatDateTime('u') ?> 

$dayofweek设置为“1”(星期一)和“7”(星期日)之间的值

或将$dayofweek设置为

<? @sys-date.reformatDateTime('E') ?> 

$dayofweek设置为“Mo”和“Su”之间的值

@sys-date 的值存储为字符串格式“yyyy-MM-dd”,例如“2016-11-21”。

如果您想知道该日期是星期几,可以使用方法reformatDateTime

"<? @sys-date.reformatDateTime('EEEE') ?>"

这里是该方法的所有可能值

所以你的节点看起来像这样

或 JSON 格式:

{
  "context": {
    "dayoftheweek": "<? @sys-date.reformatDateTime('EEEE') ?>"
  }
}

这里对 $dayoftheweek 中存储的内容进行了一个小测试

华生:你好。 我怎么帮你?

用户:星期几测试

华生:告诉我一个约会

用户:2019 年 9 月 13 日

沃森:周五

是用于测试的 JSON 技能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM