由于 DF 环境不再是 beta 功能,因此没有太多关于代理版本控制和环境的信息和示例。
我在 nodejs 中有一个聊天机器人,我想使用相同的 DF 代理,但有不同的环境,每个环境都有不同的意图。
如何在代码中指定环境?类似于将环境作为参数:我尝试了这个,但是我没有获得特定的环境,而是在代理中获得了活动版本(版本 = 环境)。
有没有一种指向环境的方法,例如:
keys: {
googleProjectID: 'xxx',
dialogFlowSessionID: 'xxx',
dialogFlowSessionLanguageCode: 'xxx',
dialogFlow_ENVIRONMENT: 'here',
googleClientEmail: 'xxx',
googlePrivateKey: 'xxx',
chatBasePlatformName: 'xxx',
chatBasePrivateKey: 'xxx'
}
然后使用特定环境定义 Session Path 和 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);
欢迎任何其他建议或信息。