При разработке интентов для голосового IVR (Умный IVR) AimyLogic непросто предусмотреть все возможные варианты ответов пользователей на заданный вопрос. Нужно оперативно получать информацию о фразах, которые не распознались имеющимися интентами, чтобы оперативно добавлять в сценарий.
Предположим, в блоке «Синтез речи» мы создали несколько интентов для распознавания типов продукции по которым обращается клиент. При этом не учли, что пользователь, на вопрос «С каким оборудованием у вас возникла проблема?» назовет оборудование как-то экзотически. Например, вместо «MyHeat» — «Май Хер» (не шутка 🙂 ). Нужно отлавливать такие нестандартные варианты.
В блоке «Синтез речи» при добавлении «Сделать свой интент» в качестве варианта ветвления есть вариант «Любая другая фраза». В эту ветку попадают фразы, которые не были распознаны другими интентами. Соответственно, чтобы оперативно получать информацию о нестандартных фразах проще всего повесить на эту ветку отправку сообщения в почту.
Добавим блок «Отправка e-mail». Он немного ушербный, т.к. позволяет добавить только одного получателя сообщения. Соотвественно, придется на почтовом сервере заводить группу рассылки, чтобы отправлять почту всем инженерам, сопровождающим AimyLogic.
Другой вариант — использовать для отправки сообщений вебхук внешнего сервиса IFTTT: https://help.aimylogic.com/docs/ru/publication_channels/ifttt/ifttt_email. Но это дополгнительная точка отказа, поэтому лучше сделать штатными средствами AimyLogic:
В тексте сообщения, чтобы отправить нераспознанный интентами текст используется переменная $queryText. Также для быстрого нахождения записи разговоров в «Диалоги» стоит вставить в текст переменную $rawRequest.caller в которой содержится номер телефона позвонившего.
После того, как я в тесте написал «Передавай», успешно отправился e-mail и пришло вот такое сообщение: