Модель Алекса Диалог Шаг и dialogState никогда не завершен - PullRequest
0 голосов
/ 06 ноября 2018

Я реализую модель диалога Alexa с конечной точкой PHP. Я использовал Alexa Doc (https://developer.amazon.com/fr/docs/custom-skills/dialog-interface-reference.html)

Вот мой пример: Мой навык:

RequestIntent

Высказывание: добавьте {obj} в спальне

Слоты: {obj} / Заполнение слотов

Фраза:

Я: Алекса, Добавить объект в спальню

Алекса: Какой объект вы хотите добавить в спальню?

Я: Я хотел бы добавить машины в спальне

Алекса: Вы хотите добавить машину в спальню?

Я: Да

STEP1:

НАЧАТЬ DialogState

Я использую ElicitSlot для установки слота {obj}

STEP2:

dialogState - IN_PROGRESS.

Я использую ConfirmIntent, чтобы попросить пользователя подтвердить его

STEP3:

Пользователь говорит да / нет

Для ConfirmIntent теперь установлено значение ПОДТВЕРЖДЕНО / ОТКАЗАНО

НО все еще в IN_PROGRESS

dialogState должен быть ЗАВЕРШЕН, потому что я установил все свои слоты и значение намерения правильно? Так почему бы не работать здесь?

Заранее спасибо

Ответы [ 3 ]

0 голосов
/ 13 ноября 2018

Причина, по которой вы dialogState не COMPLETE, потому что вы используете директиву Dialog.ElicitSlot. Статус COMPLETED возможен только при использовании директивы Dialog.Delegate.

Дополнительная информация по управлению диалогом с помощью директивы Dialog.Delegate здесь

0 голосов
/ 10 января 2019

Для меня я должен включить опцию Автоматическое делегирование в Интерфейсы из консоли разработчика Alexa.

Пусть Alexa автоматически определит и завершит каждый шаг диалога на основе вашей диалоговой модели. Ваш навык получает один IntentRequest, когда диалог завершен. Вы можете переопределить этот параметр на уровне намерений. Подробнее об автоматическом делегировании.

Как только все шаги завершены, умение получает финальный IntentRequest с dialogState, установленным на COMPLETED.

0 голосов
/ 06 ноября 2018

DialogState имеет только следующий статус: "STARTED", "IN_PROGRESS", "COMPLETED.

Причиной, по которой не завершено, может быть то, что не все шаги выполнены, или IntentRequest имеет не все требуемые значения слотов.

...