如何在IBM Watson Chatbot中调用外部API并在chatbot对话框中显示响应

时间:2018-09-08 07:20:34

标签: cloud ibm-watson

我正在尝试使用IBM Watson Conversation开发聊天机器人。我开发了基本的聊天机器人,它将询问用户详细信息,例如用户名,父亲名称等。现在,我想调用在IBM云中部署的外部服务,以传递用户详细信息并在chatbot框中获取响应。

现在,我将整个外部API称为链接标签并获得响应。但是,该响应位于Web浏览器的新标签中。我想在chatbot中返回JSON响应。

点击链接以获取用户详细信息。 用户详细信息的链接标签有 单击链接以获取用户详细信息。

任何人都可以帮忙。 预先感谢。

1 个答案:

答案 0 :(得分:0)

我认为您正在寻找的内容在这里描述: https://console.bluemix.net/docs/services/conversation/dialog-actions.html#dialog-actions

在JSON编辑器中,您可以指定服务(IBM Cloud Function)和类似的参数

"context": {
    "variable_name" : "variable_value"
  },
  "actions": [
    {
      "name":"<actionName>",
      type":"client | server",
      "parameters": {
        "<parameter_name>":"<parameter_value>",
        "<parameter_name>":"<parameter_value>"
      },
      "result_variable": "<result_variable_name>",
      "credentials": "<reference_to_credentials>"
    }
  ],
  "output": {
    "text": "response text"
  }

如果指定类型:服务器。您可以为IBM Cloud Function提供端点。在这种环境中,您可以执行任何喜欢的操作(包括调用其他服务)。不过要注意超时!

另一种解决方案是使用client选项。根据客户的不同,您应该可以使用提供的参数调用服务,但是您必须自己完成所有操作。