如何使 Watson Conversation Api 在用户输入时调用 Web 应用程序 Url?
How to make Watson Conversation Api Invoke a web Application Url when User Enters an Input?
我有一个 spring mvc 应用程序,我想让我的用户调用一个机器人,并且基于用户输入的机器人应该访问 url 并根据响应提供一个 answer.How 我可以在 Java 中实现吗?
没有直接的方法。但是,Watson Conversation 确实提供了一种机制来处理此类请求。
您需要告诉调用 Java 应用需要调用 url。
这是通过使用两个功能完成的:
Context.request
skip_user_input
A request
是一个特殊的上下文变量,具有参数、名称和结果。
它用于告诉调用应用程序它应该根据这个变量执行一些操作。
设置skip_user_input
是可选的。在许多情况下,您可能希望在您的应用程序中执行一些业务逻辑,然后通过 result
提供其结果。将 skip_user_input
设置为 true,将告知 Watson Conversation 不等待用户输入。因此,您在下一个节点上的条件应该基于result
中的内容。
{
"output": {},
"context": {
"request": {
"args": {
"url_to_invoke": "your_url"
},
"name": "Call_A_URL",
"result": "context.response"
},
"skip_user_input": true
}
}
在 IBM 云功能的帮助下,此功能现已可用。 link 有实现的细节。
我有一个 spring mvc 应用程序,我想让我的用户调用一个机器人,并且基于用户输入的机器人应该访问 url 并根据响应提供一个 answer.How 我可以在 Java 中实现吗?
没有直接的方法。但是,Watson Conversation 确实提供了一种机制来处理此类请求。 您需要告诉调用 Java 应用需要调用 url。
这是通过使用两个功能完成的: Context.request skip_user_input
A request
是一个特殊的上下文变量,具有参数、名称和结果。
它用于告诉调用应用程序它应该根据这个变量执行一些操作。
设置skip_user_input
是可选的。在许多情况下,您可能希望在您的应用程序中执行一些业务逻辑,然后通过 result
提供其结果。将 skip_user_input
设置为 true,将告知 Watson Conversation 不等待用户输入。因此,您在下一个节点上的条件应该基于result
中的内容。
{
"output": {},
"context": {
"request": {
"args": {
"url_to_invoke": "your_url"
},
"name": "Call_A_URL",
"result": "context.response"
},
"skip_user_input": true
}
}
在 IBM 云功能的帮助下,此功能现已可用。 link 有实现的细节。