#node.js #dialogflow-es #dialogflow-es-fulfillment #fulfillment
#node.js #dialogflow-ы #dialogflow-es-выполнение #выполнение
Вопрос:
Поскольку среды DF больше не являются бета-версией, нет много информации и примеров об управлении версиями агентов и средах.
У меня есть чат-бот в nodejs, я хочу использовать один и тот же агент DF, но иметь разные среды с разными намерениями для каждой из них.
Как я могу указать среду в коде? Что-то вроде использования среды в качестве аргумента: я пробовал это, но вместо получения конкретной среды я получаю активную версию в agent (version = environment).
Есть ли способ указать среду, что-то вроде:
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);
Любые другие предложения или информация приветствуются.
Комментарии:
1. Вы сказали, что пытались использовать среду в аргументе — можете ли вы показать свой код о том, как вы пытались использовать среду таким образом? Или это тот код, который вы опубликовали?