Skip to content
Задание для сертификации партнеров JAICP
Share
Explore
Голосовая реализация бота

icon picker
Модуль "Погода"

Есть существенные отличия от текстовой реализации в подготовке информации о погоде для дальнейшего ее вывода голосовым ассистентом. Рассмотрим подробнее:
01.jpg
Как видно из скриншота, к переменным применяются математические функции. Математическое округление (Math.round()) до целого делается для более комфортного восприятия на слух значений погоды, да и точность до десятых градуса обычному пользователю не нужна. Однако из-за округления значений, может сложиться ситуация, когда значения скорости ветра и его порывов могут совпасть. Для более комфортного восприятия на слух в этом случае скорость порывов увеличивается на 1 м/с.
При подготовке данных для вывода значений погоды (на экран или на колонку) используется функция $nlp.conform, которая согласует слова с числительными (три градуса (метра), пять градусов (метров)).
02.jpg
Было замечено, что с отрицательными числами согласование по падежам идет не всегда корректно, но отлично с положительными. Для этого и берется абсолютное значение температуры (Math.abs()), именно оно подставляется в функцию.
Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.