В разговорных интерфейсках часто встречаются одношаговые сценарии: пользователь задаёт вопрос, а бот выдаёт ему ответ. Рисовать полноценные схемы для подобных ситуаций нет смысла, поэтому мы проектируем их с помощью особых элементов — карточек ситуаций.
Что такое карточка ситуации
Карточка ситуации (Dialog Turn Card, DTC) — это контейнер, описывающий состояние системы. Может состоять из следующих компонентов:
Компонент | Описание | Примеры |
---|---|---|
Контекст | Состояние, из которого можно перейти в карточку |
- Весь сценарий - Конкретное состояние - Любой сценарий (глобальный контекст) |
Интент | Намерение пользователя | - Голосовой запрос - Ввод текста - Нажатие кнопки |
Условие | Дополнительные условия попадания в карточку |
- Пользователь авторизован - Указано некорректное значение |
Промпт | Ответы бота | - Текст на экране - ТТS |
Действия | Действия, следующие за промптом |
- Вывести карточку - Показать эмоцию - Перейти в другое состояние |
Выглядеть карточка может как угодно. Лишь бы было понятно и все в команде придерживались одного стиля.
Какие бывают ситуации
Одношаговые сценарии и FAQ. В том числе, если интент и контекст один, но ответ бота зависит от 1-2 дополнительных условий.
Cообщения об ошибках. No Match (CatchAll), No Input, ошибки формата данных.
Дозапрос значений параметров. Только если сценарии работают по схеме конечного автомата: интент на входе, ответ бота на выходе, дозапрос параметров при необходимости.