如何在IBM Watson Assistant客户端中实现“客户端”类型的操作?

时间:2019-04-04 10:12:42

标签: ibm-watson

我正在使用IBM Watson Assistant服务来构建AI聊天机器人,目前我正在为此构建客户端UI。因此,根据IBM的文档,它们支持各种使用功能触发外部业务逻辑的操作。我认为“客户端”类型的操作可以帮助我触发一些javascript函数,但在Google上看不到任何有效的示例。因此,请帮助我在html / javascript客户端中实施“客户端”类型的操作。

1 个答案:

答案 0 :(得分:1)

检查此帖子中的问题-https://developer.ibm.com/answers/questions/477020/help-with-custom-actions-for-ibm-watson-assistant/

客户端操作分为两部分。第一个是在对话框中,该信号表明需要执行一项操作,以及该操作的结果应放在何处。客户端操作要求您具有业务流程层。这意味着您可以控制对话流和正在响应的业务流程层。如何让他们进行协调取决于您。您没有义务遵循任何模式。最简单的方法是使用上下文。该对话框设置了上下文变量,例如。 “ PleaseDoSomething”,应用程序会看到它并执行某些操作。

已记录的“客户端操作”构造是一个规范,为该过程提供了结构;允许其他业务流程层理解该动作;使您可以相对轻松地切换到云功能。

如果使用“客户操作”构造。

然后对话框json将类似于:

{
  "output": {
    "text": {
      "values": [
        "Hang on I need to look that up."
      ],
      "selection_policy": "sequential"
    },
    "actions": [
     {
       "name": "fetchBalance",
       "type": "client",
       "result_variable": "balance"
     }
   ]
  }
}

您的业务流程层查找“动作”,运行“ fetchBalance”,然后将结果放入上下文字段“ balance”。