0

在启用插槽的节点中,我需要针对客户端数据库(类型 = 客户端,而不是云功能或 Web 操作)验证第一个插槽。

我正在建立一个对话来处理代理和客户之间的电话。在开始节点之一,Watson 询问客户姓名、通话日期和通话目的。

我需要在一个节点中捕获所有这些信息,因为用户有机会在一句话中提供所有信息。

假设用户将输入“我今天与约翰进行了后续电话”

3个插槽的定义

 1. If recognized @sys-contact save it as $contacted_person (John) required
 2. If recognized @sys-date save it as $call_date (today) required
 3. If recognized @purpose save it as $purpose (follow up) required

在插槽 1 的设置中,我定义了一个操作来调用一个完美运行的外部函数,它根据数据库检查上下文$contact_person并将返回一个名为$default_contact_person的上下文变量。如果找到记录,则$default_contacted_person等于$contact_person,如果数据库中没有这样的名称,则$default_contact_person的值将是“No Record”

我还为第一个插槽创建了条件响应,以检查$default_contact_name的值

问题是它永远不会到达响应。非常重要的是,我不能将此节点拆分为两个节点,因为用户一次输入所有信息

节点设置

配置槽 #1

配置槽 > 响应 1

JSON of slot 1:

{
  "context": {
    "contact_person": "@sys-person.values"
  },
  "actions": [
    {
      "name": "Contact_check",
      "type": "client",
      "parameters": {
        "account_name": "$contact_person"
      },
      "result_variable": "default_contact_name"
    }
  ]
}
4

0 回答 0