【发布时间】:2018-08-04 16:44:49
【问题描述】:
我有一个 Express 应用,正在尝试与 Google 助理集成。
我已经安装了 https://www.npmjs.com/package/actions-on-google 并关注了 https://codelabs.developers.google.com/codelabs/actions-1/#0,它将功能部署到 Firebase - 但是我想从自托管的 Express 服务器运行它们。
在我的 app.js 中,我进行了如下设置:
const {
dialogflow,
Image,
} = require('actions-on-google')
// Create an app instance
const gapp = dialogflow();
});
但是我不确定如何创建在 Dialogflow 控制台中添加为 webhook 的路由 - 我是否使用以下格式?
app.post('/webhook', function(req, res){
gapp.intent('favorite color', (conv, {color}) => {
const luckyNumber = color.length;
// Respond with the user's lucky number and end the conversation.
conv.close('Your lucky number is ' + luckyNumber);
});
});
如果是这样,我的所有意图都走这条路线了吗?
编辑 更新以响应答案:
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
const {
dialogflow,
Image,
} = require('actions-on-google')
// Create a google app instance
const gapp = dialogflow()
// Register handlers for Dialogflow intents
gapp.intent('Default Welcome Intent', conv => {
conv.ask('Hi, how is it going?')
conv.ask(`Here's a picture of a cat`)
conv.ask(new Image({
url: 'https://developers.google.com/web/fundamentals/accessibility/semantics-builtin/imgs/160204193356-01-cat-500.jpg',
alt: 'A cat',
}))
})
// Intent in Dialogflow called `Goodbye`
gapp.intent('Goodbye', conv => {
conv.close('See you later!')
})
gapp.intent('Default Fallback Intent', conv => {
conv.ask(`I didn't understand. Can you tell me something else?`)
})
app.post('/ga/webhook', gapp)
【问题讨论】:
标签: node.js express actions-on-google dialogflow-es