基于V1到V2的Node.js客户端库Migration guide,有两种收听对话的方法
所以V1中的以下代码
const {DialogflowApp } = require('actions-on-google');
const actionMap = new Map();
actionMap.set('input.welcome', app => { app.ask('How are you?'); });
...
可以用dialogflow模块代替
const { dialogflow } = require('actions-on-google');
const app = dialogflow();
app.intent('Default Welcome Intent', conv => { conv.ask('How are you?'); });
或Actions SDK模块
const { actionssdk } = require('actions-on-google');
const app = actionssdk();
app.intent('actions.intent.MAIN', conv => { conv.ask('How are you?'); });
在第一种情况(对话框流)中,您用意图的名称来表示意图,而在第二种情况(actionSdk)中,您从动作名称中识别出它。
为什么我要一个又一个地使用?每种方法的优点和局限性是什么?
答案 0 :(得分:5)
这两个库都将传递您Action用户所说的内容。您使用哪个库取决于您打算如何理解文本-理解文本并做出相应反应。如果您打算以定制的方式对其进行解析,或者您拥有自己的自然语言处理器(又名NLP / NLU),则可以使用Actions SDK。如果不这样做,则可以将Dialog Flow用作NLP及其库。