Javascript Dialogflow代理在Google模拟器中工作,在控制台和web链接中失败
我正在使用DialogFlowV2 API 通过谷歌模拟器上的操作,一切都能在测试中完美运行。请查看附件中的图片 但是,当尝试在Dialogflow中使用控制台(右列)和web集成链接时,它不起作用 代理能够从用户输入中检测适当的实体,但无法调用webhook中声明的意图。 我试图在Dialogflow论坛中发布,但发布时出错。使用Dialogflow提升支撑的类似情况 谷歌模拟器代理(works)图片: 公共链接代理的映像(失败): webhook js文件和控制台中声明的响应图像: 请在下面找到我的index.js webhook的一部分。我正在使用Dialogflow的内联编辑器Javascript Dialogflow代理在Google模拟器中工作,在控制台和web链接中失败,javascript,webhooks,dialogflow-es,fulfillment,Javascript,Webhooks,Dialogflow Es,Fulfillment,我正在使用DialogFlowV2 API 通过谷歌模拟器上的操作,一切都能在测试中完美运行。请查看附件中的图片 但是,当尝试在Dialogflow中使用控制台(右列)和web集成链接时,它不起作用 代理能够从用户输入中检测适当的实体,但无法调用webhook中声明的意图。 我试图在Dialogflow论坛中发布,但发布时出错。使用Dialogflow提升支撑的类似情况 谷歌模拟器代理(works)图片: 公共链接代理的映像(失败): webhook js文件和控制台中声明的响应图像:
“严格使用”;
const functions=require('firebase-functions')
const{dialogflow}=require('actions-on-google')
const app=dialogflow()
app.intent('默认欢迎意图',conv=>{
conv.ask('欢迎来到Zera!我们提供药物和药物建议。今天有什么困扰你?')
})
app.intent('QSpecific Problem',(conv,{SpecificProb})=>{
set('specificprob',10,{specificprob:specificprob})
conv.ask(`你以前有过这些问题吗?`)
})
app.intent('QRecurring',(conv,{recurtive})=>{
set('recurtive',10,{recurtive:recurtive})
如果(重复==“重复”){
conv.ask(`你有没有为此服用药物?`);
}否则{
const specProb=conv.contexts.get('specificprob')
conv.ask(`您使用这个${specProb.parameters.SpecificProb}有多长时间了?`)
}
})
exports.dialogflowFirebaseFulfillment=functions.https.onRequest(app)
我实际上写信给Dialogflow的支持团队寻求帮助。我和瑞尔谈过,她帮了我很大的忙。请参阅以下他的答覆:
您的代理在Google模拟器上的操作中按预期工作,因为
您使用的库专门用于Google上的操作。这个
您使用的库是Google Node.js客户端库上的操作
如果您还想将web演示集成用于响应,
您可以使用Dialogflow的实现库,该库具有集成
使用AoG客户端库的Google助手
您可以参考此示例代码来实现。”使用严格的“
const functions = require('firebase-functions');
const { WebhookClient } = require('dialogflow-fulfillment');
process.env.DEBUG = 'dialogflow:debug';
exports.dialogflowFirebaseFulfillment = functions.https.onRequest((request, response) => {
const agent = new WebhookClient({ request, response });
function welcome(agent) {
let conv = agent.conv();
conv.ask('Welcome to my agent!');
agent.add(conv);
}
let intentMap = new Map();
intentMap.set('Default Welcome Intent', welcome);
agent.handleRequest(intentMap);
});
Dialogflow的支持团队非常有帮助,他们的回复非常迅速。我建议你写下来,因为每个人的问题是不同的,相当具体!您可以通过联系他们您包含的链接已断开您的错误有哪些?您是如何解决的?如果需要,请自行回答。我也有同样的问题!您好,很抱歉回复太晚,请看我的自我回答!