Детектор черного экрана

Материал из SmartPlayer
Другие языки:

Описание ситуации

У пользователя начались проблемы с трансляциями. Во время воспроизведения трансляций на устройствах контент прерывается и появляется «чёрный экран.

Пример отображения "Чёрного" экрана в личном кабинете пользователя

Причина

В устройствах, работающих на местах во время проигрывания контента, появляется «чёрный экран». При этом трансляция в личном кабинете продолжает работать.
Причины этой проблемы могут быть разными. От неподдерживаемых кодеков используемых в видео, до проблем с потерей соединения с сетью.
Поэтому было решено сделать автоматизированное решение, которое поможет более оперативно оповещать и работать с этой проблемой.

Концепт решения

Для решения проблемы и ее автоматизации было решено создать «Детектор черных экранов». Его функция – заранее предупреждать нас о случившейся на конкретном устройстве проблеме. Этот функционал позволяет работать нам проактивно и не ждать оповещения о проблеме от клиента.

Данный функционал не доступен пользователю в личном кабинете. Обратитесь для его включения к системному администратору.

Принцип действия

Детектор работает со всеми компаниями, которые используют наше ПО. По умолчанию он выключен и включается только на конкретную компанию.

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

  1. После запуска «ивента» черного экрана нет - система продолжает работу в штатном режиме.
  2. После запуска «ивента» чёрный экран обнаружен - сервер отправляет повторный, проверочный "ивент". Промежуток для повторной отправки составляет 10 секунд.

В случае, если подтверждается второй вариант, то со стороны сервера отправляется уведомление на почту.

Указанная почта должна обязательно должна быть привязана к серверу, иначе уведомления о проблеме приходить не будут.

Итоговый результат

После получения информации о проблеме начинается оперативное ее решение. Таким образом мы всегда знаем о проблеме первые и не заставляем лишний раз беспокоиться наших клиентов.

Подробности

Более подробно можно будет ознакомиться с проблемой в версии документа: