我使用 IBM watson 创建了 android chatbot,在与 watson 聊天时,我将停止对话并调用我的 web 服务以从我的数据库中获取对话结果。我想调用我的本地网络服务以从我的 android 应用程序中的数据库中获取结果。为此,我在调用我的 web 服务的 bluemix 云中创建了一个 Nodejs 应用程序。如何连接我的云对话框节点以调用 Nodejs 应用程序,以便 nodejs 将 web 服务响应返回给对话框,对话框将其发送到 android 应用程序。
问问题
212 次
1 回答
0
看一下整体架构图,您会注意到 Watson Conversation 是一项可用于补充应用程序的服务。它本身不是一个应用服务器。
对于您想要做的事情,有几个选项:
- 使用对话中的对话操作来调用该 Web 服务器。对于服务器操作,该调用需要包装到 Cloud Function 操作中(适用一些限制,请参阅文档)。对于客户端操作,您需要一个应用服务器(客户端)来处理该操作。这将我们带到了下一个选项。
- 在您的 Android 应用程序和对话服务之间有一个应用程序服务器。它检测是否引发了客户端操作。它还可以处理寻求外部服务的其他方式。请参阅此 Github 存储库中的替换标记示例。
- 以上的一些变化
拥有单独的应用服务器是最好的选择,因为它提供了灵活性。使用 IBM Cloud Functions 的服务器操作也应该有效,但 Conversation 需要特定的响应时间。不确定在呼叫本地时是否得到它们。
于 2018-02-21T10:35:52.930 回答