Подсказка | ||
---|---|---|
| ||
Данный кейс поддерживается телеграм ботом LiveDemo - уникальный айди этого кейса: 128712713. |
Примечание |
---|
Важно - Для тестирования сценариев, содержащих BPL-операции, необходимо использовать веб-виджет или интеграцию с каким-либо мессенджером, так как данные операции не работают в тестовом чате внутри редактора. Как создать тестовый виджет можно узнать в статье: Создание тестового виджета |
...
В процессе работы голосового робота возможно столкнуться с неправильным определением даты рождения, в случае если клиент называет ее не полностью и его дата рождения ранее 1950 года. Например, "21 мая 47 года" бот определяет как 2047-05-21.
...
2) Далее нужно вставить блок условия с двумя выходящими стрелками. Первая ветка выбирается в случае если дата, названная клиентом, позднее 1950 года. В таком случае можно использовать ее в исходном виде. В параметрах первой стрелки необходимо выбрать тип Условие "И", и добавить условие, в котором мы будем определим меньше ли названная дата рождения чем случайная условная дата в будущем, в данном например 2030-01-01 - такая дата позволяет обработать даты рождения от 1930 до 2029 года. В данном случае получается условие {bday} < 2030-01-01.
...
4) После второй стрелки необходимо установить блок арифметики. В параметрах необходимо выбрать тип Произвольный тип, и в поле BPL-выражение скопировать следующий фрагмент кода:
Message Box | ||||||
---|---|---|---|---|---|---|
| ||||||
BPL выражения работают только для чатов и входящих звонков |
Блок кода | ||
---|---|---|
| ||
$bdaysplit = str.split($bday, "-"); $year = $bdaysplit.get(0); $month = $bdaysplit.get(1); $day = $bdaysplit.get(2); $year = str.replace($year, "20", "19"); $bday = str.join([$year, $month, $day], "-"); |
...
Таким образом вы можете корректно сохранить дату рождения клиента, если она ранее 1950 года.
Пример работы фрагмента
Получение даты без корректировки:
Получение даты с корректировкой: