Dialogflow V2 - 自定义上下文

问题描述 投票:0回答:1

如何创建自定义系统上下文以将值从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对象中设置上下文对象。

谢谢,罗恩

dialogflow
1个回答
0
投票

我能够解决这个问题。在创建上下文对象时,我没有传递完全形成的上下文路径。

Context dialogflowContext = Context.newBuilder().setName(
                    "projects/[project-id]/agent/sessions/" + sessionId + "/contexts/[context-name]")
                    .setParameters(paramPair).setLifespanCount(1).build();
© www.soinside.com 2019 - 2024. All rights reserved.