Использование обработчиков состояний в Alexa с общим поведением перемещено в обработчик по умолчанию
Я создал пару обработчиков состояния Alexa и один обработчик по умолчанию.
Все они зарегистрированы с использованием alexa.registerHandlers(State1Handlers, State2Handlers,defaultHandler);
Я использую некоторые встроенные Intents, такие как "repeat", которые будут вести себя одинаково во всех моих различных состояниях. Поэтому я добавил его в обработчик по умолчанию. Однако, когда я вызываю это намерение, приложение не может сказать, что не может найти это намерение.
Я думал, что мог бы добавить намерения с поведением по умолчанию в обработчике по умолчанию, и другой обработчик состояния мог бы использовать его (что-то похожее на использование наследования), но это не похоже на это. Есть идеи?
1 ответ
Как работает alexa-skill-kit, он создает карту обработчиков на основе состояний, добавляя состояние к имени намерения, что означает, что, хотя у вас одинаковые намерения, ведущие себя одинаково в каждом состоянии, вы должны дублировать их в каждом обработчике состояний, чтобы sdk мог найти repeatstate1 когда в состоянии 1, повторите состояние 2, когда в состоянии 2, и повторите по умолчанию. Для более подробной информации вы можете следить за этим обсуждением. обращаться с намерениями с государствами