我在玩谷歌操作。我定义了一个自定义实体。我想在我的包中匹配该实体.json:
xports.answerColleague = functions.https.onRequest((request, response) => {
const app = new App({request, response});
console.log('Request headers: ' + JSON.stringify(request.headers));
console.log('Request body: ' + JSON.stringify(request.body));
let profession = app.getArgument(PROFESSION_ARGUMENT);
// c. The function that generates the silly name
function answerColleague (app) {
如何在此处使用我的自定义实体?假设我定义了一个称为职业的实体。例如,我想检查职业 == 专业开发人员。其中,开发人员是我在实体中添加的行之一。如何访问这些值以验证用户选择了哪一个值?
谢谢。
虽然变量profession
将包含用户所说的内容,但客户端库当前不提供任何功能来访问可能值的枚举(例如 Profession.DEVELOPER
)。
对于包含相对较短或静态项目列表的实体,我建议在 webhook 代码中对定义可能值的对象进行硬编码。只要项目不经常更改,维护起来就不会太困难。若要避免手动创建它,可以通过导出 Dialogflow 代理,然后从生成的 JSON 中读取列表来构建它。
如果实体中的项列表很长或动态,则可能需要通过 API 访问它们并动态生成列表。这种额外的工程和维护可能只有在项目频繁更换时才值得。有关如何通过 API 获取实体行的信息,您可以查看/entities
API 文档。