Я создал новое приложение в wit.ai. В историях после «Пользователь говорит» я добавил функцию getReply(), используя «Бот выполняется», и добавил два контекстных ключа с веткой в этом. Если оба ключа доступны, я отправляю ответ пользователю, используя «Бот говорит», и он переходит к следующему шагу, иначе он запросит у пользователя отсутствующий ключ.
Проблема в том, что в ответе я использую только один контекстный ключ. Поток работает, если этот ключ доступен. Он не думает о другом ключе. Он проверяет оба ключа, только если мы добавим оба ключа в ответ.
В коде я проверяю эти ключи в функции getReply(), а затем добавляю их в контекст.
const actions = {
send(request, response) {
...
...
...
return new Promise(function(resolve, reject) {
...
return resolve();
})
.then()) => null)
.catch((err) => {
'Error occurred',
id,
':',
err.stack || err
);
});
},
function getReply({context, entities}) {
return new Promise(function(resolve, reject) {
...
...
...
context.key1 = value1;
context.key2 = value2;
return resolve(context);
}
}
Все правильно или я что-то упускаю? Почему ключ контекста не инициируется, если его нет в ответе.
Спасибо.