rek*_*ire 5 actions-on-google dialogflow-es
我想知道用户的名字,但是我不能使用nodejs sdk,因为我使用的是另一种语言.
我该如何申请许可?
我更喜欢使用普通json响应的方法.
我破解了这个最小的脚本以获得nodejs sdk将返回的JSON响应:
gaction.js:
const DialogflowApp = require('actions-on-google').DialogflowApp;
const app = new DialogflowApp({
request: {
body: {
result: {
action: 'Test',
contexts: []
}
},
get: (h) => h
},
response: {
append: (h, v) => console.log(`${h}: ${v}`),
status: (code) => {
return {send: (resp) => console.log(JSON.stringify(resp, null, 2))}
}
}
});
function testCode(app) {
app.askForPermission('To locate you', app.SupportedPermissions.DEVICE_PRECISE_LOCATION);
}
app.handleRequest(new Map().set('Test', testCode));
Run Code Online (Sandbox Code Playgroud)
我仍然没有node.js专家,所以这可能不是最佳解决方案.安装节点并运行命令后 npm install actions-on-google,将安装必要的依赖项.
完成后,您只需要运行node gaction将创建此输出:
Google-Assistant-API-Version: Google-Assistant-API-Version
Content-Type: application/json
{
"speech": "PLACEHOLDER_FOR_PERMISSION",
"contextOut": [
{
"name": "_actions_on_google_",
"lifespan": 100,
"parameters": {}
}
],
"data": {
"google": {
"expect_user_response": true,
"no_input_prompts": [],
"is_ssml": false,
"system_intent": {
"intent": "assistant.intent.action.PERMISSION",
"spec": {
"permission_value_spec": {
"opt_context": "To locate you",
"permissions": [
"DEVICE_PRECISE_LOCATION"
]
}
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
如果您现在发送上面的JSON,将会从Google Home询问.玩得开心!
| 归档时间: |
|
| 查看次数: |
1833 次 |
| 最近记录: |