Детектор черного экрана
Описание функции
Функция детектора предназначена для определения внештатных ситуаций таких как возникновение черных экранов на устройствах, при этом система не обязательно находится в состояние ошибки, возможны ситуации с неправильным планированием трансляции, ошибкой менеджера или проблемами с каналом связи которые приводят к невозможности закачки контента до момента старта трансляции. Детектор черных экранов может определить подобную ситуацию и послать уведомления на почту пользователя/администратора системы для скорейшего устранения проблемы.
Причина
В устройствах, работающих на местах во время проигрывания контента, появляется «чёрный экран». При этом трансляция в личном кабинете продолжает работать.
Причины этой проблемы могут быть разными. От неподдерживаемых кодеков используемых в видео, до проблем с потерей соединения с сетью.
Поэтому было решено сделать автоматизированное решение, которое поможет более оперативно оповещать и работать с этой проблемой.
Концепт решения
Для решения проблемы и ее автоматизации было решено создать «Детектор черных экранов». Его функция – заранее предупреждать нас о случившейся на конкретном устройстве проблеме. Этот функционал позволяет работать нам проактивно и не ждать оповещения о проблеме от клиента.
Принцип действия
Детектор работает со всеми компаниями, которые используют наше ПО. По умолчанию он выключен и включается только на конкретную компанию.
У каждого компании работающей в нашем приложении есть свой персональный ID. Его можно найти в личном кабинете. К этому ID привязываются все устройства компании. Для запуска "детектора" - знание этого параметра необходимо.
При возникновении ошибки с «чёрным» экраном, на одном или нескольких устройствах наш сервер отправляет «ивент» на эти устройства. Устройство этот «ивент» запускает. В момент запуска «ивента» «детектор» делает скриншот. И по этому скриншоту проверяется наличие «черного» экрана.
После запуска детектора возможно получить два вида ответа:
- После запуска «ивента» черного экрана нет - система продолжает работу в штатном режиме.
- После запуска «ивента» чёрный экран обнаружен - сервер отправляет повторный, проверочный "ивент". Промежуток для повторной отправки составляет 10 секунд.
В случае, если подтверждается второй вариант, то со стороны сервера отправляется уведомление на почту.
Итоговый результат
После получения информации о проблеме начинается оперативное ее решение. Таким образом мы всегда знаем о проблеме первые и не заставляем лишний раз беспокоиться наших клиентов.