所以我才刚刚开始一个项目。我遇到了两种不同的Webhook for Google Action Agent实现。有人可以解释一下,两者有什么区别吗?
也可以扩展哪一个。
第一个使用actions-on-google
库,
'use strict';
// Imports
// =================================================================================================
const { dialogflow } = require('actions-on-google');
const functions = require('firebase-functions');
// Constants
// =================================================================================================
// Instantiate the Dialogflow client with debug logging enabled.
const app = dialogflow({ debug: true });
// Intents
// =================================================================================================
app.intent('welcome.intent', (conv) => {
conv.ask('Hello from webhook');
});
exports.dialogflowFirebaseFulfillment = functions.https.onRequest(app);
第二个使用dialogflow-fulfillment
,
`'use strict'`;
const functions = require('firebase-functions');
const { WebhookClient } = require('dialogflow-fulfillment');
process.env.DEBUG = 'dialogflow:debug'; // enables lib debugging statements
exports.dialogflowFirebaseFulfillment = functions.https.onRequest((request, response) => {
const agent = new WebhookClient({ request, response });
console.log('Dialogflow Request headers: ' + JSON.stringify(request.headers));
console.log('Dialogflow Request body: ' + JSON.stringify(request.body));
function welcome(agent) {
agent.add(`Hello from webhook agent`);
}
let intentMap = new Map();
intentMap.set('welcome.intent', welcome);
agent.handleRequest(intentMap);
});
答案 0 :(得分:1)
这两个库均有效,并得到Google的支持。您使用哪一个取决于您的目标。
如果您的目标仅是 来开发行动,那么“ Google行动”库是最好的。它支持AoG平台支持的一些更高级的功能,但不支持Dialogflow支持的其他平台。
如果您想使用Dialogflow支持多个机器人平台(可能包括Google平台上的操作),那么dialogflow实现库是最好的。