【发布时间】:2019-05-19 12:32:17
【问题描述】:
我正在制作对话流应用程序,该应用程序将用户链接到与用户所说的数字相关的每个链接。
我得到了 google codelab 的实现代码并对其进行了编辑。
但是当我尝试使用 Card 和其他东西来创建可点击的 url 链接时,会发生“MalformedResponse: Failed to parse Dialogflow response into AppResponse because of empty speech response”。
我正在为此使用 Dialogflow InlineEditor。
尝试 app.buildRichResponse 但同样失败
这是我的 node.js 代码。
'use strict';
// Import the Dialogflow module from the Actions on Google client library.
const {dialogflow} = require('actions-on-google');
// Import the firebase-functions package for deployment.
const functions = require('firebase-functions');
// Instantiate the Dialogflow client.
const app = dialogflow({debug: true});
const {WebhookClient} = require('dialogflow-fulfillment');
const {Card, Suggestion} = require('dialogflow-fulfillment');
// Handle the Dialogflow intent named 'favorite color'.
// The intent collects a parameter named 'color'.
app.intent('getJobs', (conv, {number}) => {
const jobNum = number;
// Respond with the user's lucky number and end the conversation.
if (number == 1) {
conv.ask(new Card({
title: `Title: this is a card title`,
imageUrl: 'https://dialogflow.com/images/api_home_laptop.svg',
text: `This is the body text of a card. You can even use line\n
breaks and emoji! ????`,
buttonText: 'This is a button',
buttonUrl: 'https://docs.dialogflow.com/'
}));
} else if (number == 2) {
conv.close('camera on');
} else {
conv.close('unknown number');
}
});
//Set the DialogflowApp object to handle the HTTPS POST request.
exports.dialogflowFirebaseFulfillment = functions.https.onRequest(app);
【问题讨论】:
标签: node.js dialogflow-es