Есть ли способ обновить мое рабочее пространство разговора без изменения идентификатора рабочего пространства? Мне время от времени нужно обновлять рабочую область сцены и производства. Я использую параметр «Импорт», но при этом создается новое рабочее пространство с другим идентификатором рабочего пространства. Это означает, что мне нужно обновить то же самое в моем приложении. Я знаю, что потенциально могу использовать его как переменную внешней среды. Но в идеале я бы тоже хотел этого избежать. Мне просто нужен способ «обновить» существующее рабочее пространство без изменения его идентификатора.
Обновить рабочую область службы разговора без изменения идентификатора рабочей области
Ответы (2)
Проверьте новую функциональность API рабочей области. Это позволит вам программно обновлять рабочую область без необходимости импорта.
Я бы рекомендовал протестировать, чтобы увидеть, как он работает, прежде чем пытаться его использовать.
По делу я знаю две формы с примерами разработчиков IBM. .
1-й: у вас есть .env
файл, в который вы можете добавить свой WORKSPACE_ID
, и вам не нужно добавлять его в «Переменные среды» внутри Watson Conversation.
Проверьте .env
пример файла с помощью этого Простой диалог - Nodejs и этот Расширенный чат - Java
Пример:
Добавьте значения в .env
файл:
# Environment variables
WORKSPACE_ID=<workspace-id>
CONVERSATION_USERNAME=<conversation-username>
CONVERSATION_PASSWORD=<conversation-password>
2-й: добавление значений переменных username
, password
и workspace_id
внутри кода.
password
и username
в этом случае - это Учетные данные службы внутри Службы разговоров.
Пример:
Добавьте свои учетные данные и workspace_id - простой разговор (app.js
):
var conversation = new Conversation({
// If unspecified here, the CONVERSATION_USERNAME and CONVERSATION_PASSWORD env properties will be checked
// After that, the SDK will fall back to the bluemix-provided VCAP_SERVICES environment property
// username: '<username>', // add your username here
// password: '<password>', // add your password here
url: 'https://gateway.watsonplatform.net/conversation/api',
version_date: '2016-10-21',
version: 'v1'
});
// Endpoint to be call from the client side
app.post('/api/message', function(req, res) {
var workspace = process.env.WORKSPACE_ID || '<workspace-id>'; //if you dont added the value of workspace_id inside .env file, the app.js will try reconigze the value inside '<workspace-id>'