我已经在Dialogflow Web界面中创建了一个意图。它自动检测到一个名为给定名称的参数,该参数在Web界面中将其列为$given-name
。我试图在由Web界面提供的实现内联编辑器中解决$given-name
,但是没有成功。
我尝试将参数名称更改为驼峰大小写,也尝试使用下划线替换连字符,但似乎都不起作用。
这是dialogflow实现内联编辑器中的代码段:
'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});
// Can't address given-name, intentionally used an underscore
app.intent('run demo', (conv, {given_name}) => {
conv.close('Hi ' + given_name +'! This is the demo you asked me to run!');
});
// Set the DialogflowApp object to handle the HTTPS POST request.
exports.dialogflowFirebaseFulfillment = functions.https.onRequest(app);
我想知道在代码部分app.intent('run demo', (conv ...);
答案 0 :(得分:1)
我找到的一个解决方案是这段代码:
<ListView
android:layout_width="match_parent"
android:divider="#D3D3D3" //divider color
android:dividerHeight="1dip" // Height
android:layout_height="wrap_content"
android:id="@+id/myListId"
/>
android:isScrollContainer="true"
android:choiceMode="singleChoice"
android:scrollbarSize="100px"
中的app.intent('run demo', (conv, params) => {
conv.close('Hi ' + params['given-name'] +'! This is the demo you asked me to run!');
});
实际上是一个匿名的回调函数(又名匿名回调函数)。 (conv, params) => {...}
和app.intent('run demo',...
是传递给回调函数的参数/参数。函数的定义似乎在API的以下页面上:Callable。它统计可以传递的参数/参数可以是conv
,params
,conv
,params
。
用于Google的操作的API文档提供了帮助:actions on google api reference link