嗨,我遇到了一个问题,如果我使用Google行动库,就不会收到针对heroku的webhook发布请求。但是当我使用dialogflow-fillfillment生病时,使用
来获取webhook发布请求webhookclient({request:req,response:resp})
我必须不使用heroku。是否仅适用于Firebase? 另一个问题是,当我使用Google Mini设备进行测试时,我无法获得设备的粗略位置,但在模拟器中可以正常工作。它们是否与上述问题有关?
这是我当前的代码
const {dialogflow,Permission,List} = require('actions-on-google');
const {WebhookClient} = require('dialogflow-fulfillment');
const express = require('express');
const server = express();
server.post('/',function(req,res){
const agent = new WebhookClient({ request: req, response: res });
let intentMap = new Map();
intentMap.set('Default Welcome Intent', welcome);
agent.handleRequest(intentMap);
});
server.listen((process.env.PORT || 3000), function () {
console.log("Server listening");
});
答案 0 :(得分:1)
要将an Express server与Google的Actions配合使用,请遵循类似于以下内容的代码段:
const express = require('express')
const bodyParser = require('body-parser')
// ... app code here
const expressApp = express().use(bodyParser.json())
expressApp.post('/fulfillment', app)
expressApp.listen(3000)