我一直在POC上工作,我能够从外部API调用Dialogflow实现webhook并获得响应,但在Beta功能选项被禁用时无法获得知识库响应。当我启用Beta功能时,我得到了知识库响应,但没有得到webhook响应。不能使知识库和webhook与测试版功能选项一起工作。
是否可以使用Dialogflow CX?Knowledge有效,但Webhook不起作用,如下所示:
const knflow = require('@google-cloud/dialogflow').v2beta1;
const ksclient = new knflow.SessionsClient({
keyFilename: "C:/Temp/XXXXXX.json"
});
const sessionPath = ksclient.projectAgentSessionPath(
projectId,
sessionId
);
var responses = await ksclient.detectIntent(request);
Webhook works but not knowledgebase with the following:
const sessionPath = sessionClient.sessionPath(projectid,sessionid);
var chatMessage = chatRequest.messageDetails.message;
var responses = await sessionClient.detectIntent(request);发布于 2020-11-10 11:13:56
在Dialogflow ES中,Knowledge Connector是测试版。只有在代理设置中启用了“Beta features and API”选项后,您才能在代理上使用Knowledge Connector。
如果您使用nodeJS客户端库,请考虑检查DetectIntent Response,可以在queryResult下的fulfillmentText或fulfillmentMessages字段中找到来自Webhook的响应。而来自Knowledge Connector的响应可以在alternativeQueryResults.下找到
你也可以考虑在你的package.json中将‘@google-cloud/dialogflow’库版本升级到"^3.3.0“。
对于代理到人工的切换,您可以查看这个示例github实现:https://github.com/dialogflow/agent-human-handoff-nodejs。
https://stackoverflow.com/questions/64582530
复制相似问题