如何在Watson Conversation中保存数据?

时间:2018-03-02 00:01:35

标签: javascript node.js watson-conversation watson

我需要在Watson Conversation中保存数据,例如:

-Watson说:你好,告诉我你的名字

- 我说:我的名字是艾萨克

-Watson说:好的Isaac,晚安!**

如何保存此值?没有告诉沃森,当他认出艾萨克的名字时。只需保留" name"并显示它。并且能够使用我在其他节点中保留Isaac名称的变量

非常感谢!

1 个答案:

答案 0 :(得分:1)

在这种情况下,您可以在Watson Conversation中使用context variables或@sys-person(检查Supported languages)来执行此操作。

带正则表达式的上下文变量:

要获取name值,您需要使用Regex从用户输入中提取。并在所有要显示用户名称的节点中设置它,例如。

{
  "context": {
    "name": "<? input.text.extract('yourRegextoExtractName')?>"
  },
  "output": {
    "text": {
      "values": [
        "Hi $name, how do you do?"
      ],
      "selection_policy": "sequential"
    }
  }
}

请注意,我使用syntax设置上下文变量:$name。因此,只需将所有要显示名称的节点放入相同的语法来设置名称上下文变量。

@sys-person - 系统实体。

您还可以激活@sys-person系统实体,并使用我的示例在下面保存日期。请注意,目前是BETA。

使用@sys-person,激活:实体 - &gt;系统实体 - &gt; @sys-person,看看我的图片anothers actives system-entity: enter image description here

您的对话条件将类似于:

enter image description here

结果:

enter image description here

  • @sys-person Supported languages;
  • 尝试验证上下文变量在this link中的工作方式,以及如何在WCS here中使用正则表达式。
  • 尝试使用Watson Conversation查看有关Expression language methods的更多信息。
  • 验证正则表达式的工作方式(正则表达式)here