如何创建自定义系统上下文以将值从API传递到对话框流,而不依赖于任何事件。 我试图在输出上下文中添加相同的内容,但是由于上下文名称不存在而导致错误无效参数。
这是我正在做的下面的伪代码(Java), 1.通过设置凭证提供程序来定义contextSettings对象。 2.使用contextSettings对象创建ContextsClient对象。 3.通过设置父对象和上下文对象来创建CreateContextRequest对象。 4.使用ContextsClient.createContext(contextRequest)获取最终的Context对象 5.在queryParameters中设置上述上下文对象以传入DetectIntent Request。
但是这在步骤#4中失败,并将错误称为无效参数,因为/ projects / session下不存在上下文名称
请帮我解决这个问题。
我想创建自定义上下文的原因是我需要从API设置值以传递给对话框流,它独立于事件或特定流。
我们能够使用AIContext类在Dialogflow V1中创建自定义上下文,并在AIRequest对象中设置上下文对象。
谢谢,罗恩
我能够解决这个问题。在创建上下文对象时,我没有传递完全形成的上下文路径。
Context dialogflowContext = Context.newBuilder().setName(
"projects/[project-id]/agent/sessions/" + sessionId + "/contexts/[context-name]")
.setParameters(paramPair).setLifespanCount(1).build();