在启用了插槽的节点中,我需要针对客户端数据库(类型=客户端,而非云功能或Web操作)验证第一个插槽。
我正在建立一个对话框来处理座席和客户之间的电话。在一个起始节点中,Watson询问客户名称,呼叫日期和呼叫目的。
我需要在一个节点中捕获所有这些信息,因为用户有机会在一句话中给出所有信息。
让用户输入“我今天和John进行了跟进通话”
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 的值将成为“无记录”
我还为第一个广告位创建了条件响应,以检查 $ default_contact_name
的值问题在于它永远无法到达响应。不能将这个节点分成两个节点非常重要,因为用户必须一次性输入所有信息
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"
}
]
}