Google Home miniが事務所に来たので、色々な参考サイトを見ながら、Dialogflowで早速アプリを作ってみた。
が、実際の画面と参考サイトの説明にズレが出てたので、苦労した点をメモ。
- ●intents作成画面に、「User Says」って項目が無い!
- 「Training phrases」って項目に変更になった模様。
- ●Integrations画面に「Google Assistant」のon/offボタンがない
- デフォルトでon状態になってて、切り替え不要になった模様。
- ●intents作成画面の「FulfilIntent」項目に、「Use webhook」ってチェックボックスが無い!
- “Enable webhook call for this intent”って表記に変更になった模様。
- ●FulfilIntentのinline Editorにサンプルスクリプト入れても、エラーで動かない!
- インスタンスの作成方法やパラメータの取得方法が、かなり変わってる模様。
とりあえず、シンプルなテンプレソースはこんな感じ。(オレンジの部分は、良くわからんのでそのまま使う。)
'use strict';
const functions = require('firebase-functions');
const {WebhookClient} = require('dialogflow-fulfillment');
const {Card, Suggestion} = 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 });
function yourFunctionHandler(agent) {
//Actionで取得したパラメータを取得
let paramVal = agent.parameters['PARAMETER NAME'];
//ログにトレースする
console.log("PARAMETER NAME = " + paramVal);
//結果を喋らせる
agent.add(paramVal + 'です');
}
let intentMap = new Map();
//ファンクションをintentに登録する
intentMap.set('INTENT_NAME', yourFunctionHandler);
agent.handleRequest(intentMap);
});