在Node.js中指向特定的Dialogflow环境

问题描述

由于DF环境不再是beta功能,因此没有太多有关代理版本控制和环境的信息和示例。

我在nodejs中有一个聊天机器人,我想使用相同的DF代理,但是要在不同的环境上使用不同的意图。

如何在代码中指定环境?就像以环境作为参数:我尝试过,但是我没有获得特定的环境,而是在代理中获得了活动版本(版本=环境)。

有没有一种指向环境的方式,例如:

keys: {
    googleProjectID: 'xxx',dialogFlowSessionID: 'xxx',dialogFlowSessionLanguageCode: 'xxx',dialogFlow_ENVIRONMENT: 'here',googleClientEmail: 'xxx',googlePrivateKey: 'xxx',chatBasePlatformName: 'xxx',chatBasePrivateKey: 'xxx'
}

,然后使用特定环境定义会话路径和SessionClient,例如:

const projectId = config[update.payload.training].keys.googleProjectID;
const sessionId = config[update.payload.training].keys.dialogFlowSessionID;
const environment = config[update.payload.training].keys.dialogFlow_ENVIRONMENT;
const languageCode = config[update.payload.training].keys.dialogFlowSessionLanguageCode;
const credentials = {
  client_email: config[update.payload.training].keys.googleClientEmail,private_key: config[update.payload.training].keys.googlePrivateKey,};
const sessionClient = new dialogflow.SessionsClient({projectId,credentials});
const sessionPath = sessionClient.sessionPath(projectId,environment,sessionId + update.sender.id);

欢迎其他任何建议或信息。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)