<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://wiki.smartplayer.org/index.php?action=history&amp;feed=atom&amp;title=%22%D0%94%D0%B5%D1%82%D0%B5%D0%BA%D1%82%D0%BE%D1%80%22_%D1%87%D0%B5%D1%80%D0%BD%D0%BE%D0%B3%D0%BE_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_%28%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B9_%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%29%2Fru</id>
	<title>&quot;Детектор&quot; черного экрана (Системный администратор)/ru - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.smartplayer.org/index.php?action=history&amp;feed=atom&amp;title=%22%D0%94%D0%B5%D1%82%D0%B5%D0%BA%D1%82%D0%BE%D1%80%22_%D1%87%D0%B5%D1%80%D0%BD%D0%BE%D0%B3%D0%BE_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_%28%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B9_%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80%29%2Fru"/>
	<link rel="alternate" type="text/html" href="https://wiki.smartplayer.org/index.php?title=%22%D0%94%D0%B5%D1%82%D0%B5%D0%BA%D1%82%D0%BE%D1%80%22_%D1%87%D0%B5%D1%80%D0%BD%D0%BE%D0%B3%D0%BE_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_(%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B9_%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80)/ru&amp;action=history"/>
	<updated>2026-05-02T06:44:01Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://wiki.smartplayer.org/index.php?title=%22%D0%94%D0%B5%D1%82%D0%B5%D0%BA%D1%82%D0%BE%D1%80%22_%D1%87%D0%B5%D1%80%D0%BD%D0%BE%D0%B3%D0%BE_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_(%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B9_%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80)/ru&amp;diff=18560&amp;oldid=prev</id>
		<title>FuzzyBot: Обновление для соответствия новой версии исходной страницы.</title>
		<link rel="alternate" type="text/html" href="https://wiki.smartplayer.org/index.php?title=%22%D0%94%D0%B5%D1%82%D0%B5%D0%BA%D1%82%D0%BE%D1%80%22_%D1%87%D0%B5%D1%80%D0%BD%D0%BE%D0%B3%D0%BE_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_(%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B9_%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80)/ru&amp;diff=18560&amp;oldid=prev"/>
		<updated>2026-01-15T12:38:13Z</updated>

		<summary type="html">&lt;p&gt;Обновление для соответствия новой версии исходной страницы.&lt;/p&gt;
&lt;a href=&quot;https://wiki.smartplayer.org/index.php?title=%22%D0%94%D0%B5%D1%82%D0%B5%D0%BA%D1%82%D0%BE%D1%80%22_%D1%87%D0%B5%D1%80%D0%BD%D0%BE%D0%B3%D0%BE_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_(%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B9_%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80)/ru&amp;amp;diff=18560&amp;amp;oldid=9621&quot;&gt;Внесённые изменения&lt;/a&gt;</summary>
		<author><name>FuzzyBot</name></author>
	</entry>
	<entry>
		<id>https://wiki.smartplayer.org/index.php?title=%22%D0%94%D0%B5%D1%82%D0%B5%D0%BA%D1%82%D0%BE%D1%80%22_%D1%87%D0%B5%D1%80%D0%BD%D0%BE%D0%B3%D0%BE_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_(%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B9_%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80)/ru&amp;diff=9621&amp;oldid=prev</id>
		<title>FuzzyBot: Обновление для соответствия новой версии исходной страницы.</title>
		<link rel="alternate" type="text/html" href="https://wiki.smartplayer.org/index.php?title=%22%D0%94%D0%B5%D1%82%D0%B5%D0%BA%D1%82%D0%BE%D1%80%22_%D1%87%D0%B5%D1%80%D0%BD%D0%BE%D0%B3%D0%BE_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0_(%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B9_%D0%B0%D0%B4%D0%BC%D0%B8%D0%BD%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%BE%D1%80)/ru&amp;diff=9621&amp;oldid=prev"/>
		<updated>2023-08-08T13:31:03Z</updated>

		<summary type="html">&lt;p&gt;Обновление для соответствия новой версии исходной страницы.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== &amp;#039;&amp;#039;&amp;#039;Описание ситуации&amp;#039;&amp;#039;&amp;#039; ==&lt;br /&gt;
У пользователей появляются проблемы с трансляциями на устройствах. При воспроизведении контента на некоторых устройствах выводится «чёрный» экран. Эту проблему можно наблюдать в личном кабинете пользователя или на месте нахождения устройства.&lt;br /&gt;
== &amp;#039;&amp;#039;&amp;#039;Причина&amp;#039;&amp;#039;&amp;#039; ==&lt;br /&gt;
В устройствах, работающих на местах во время проигрывания контента, появляется «чёрный экран». При этом трансляция в личном кабинете продолжает работать, но отображает только &amp;quot;Чёрный&amp;quot; экран.&amp;lt;br&amp;gt;&lt;br /&gt;
Эта ситуация возникает из-за различных ошибок при запуске трансляции. Причины таких проблем могут быть разными, и их очень сложно обнаружить.&amp;lt;br&amp;gt;&lt;br /&gt;
В качестве причины может выступать любое действие: &lt;br /&gt;
* Пользователь загружает видео, но это видео использует неподдерживаемый системой кодек. Тогда видео просто не может запуститься и показывает черный экран. Бывает проблемы, связанные с клиентским приложением (баг), и из-за этого начинаются проблемы с трансляцией.&lt;br /&gt;
*  Пока есть наличие постоянной, стабильной сети – все работает отлично. Как только устройство теряет доступ к сети (по любой причине) – трансляция прерывается и появляется чёрный экран.&lt;br /&gt;
[[File:Пример черного экрана в ЛК.png|thumb|Пример отображения &amp;quot;Чёрного&amp;quot; экрана в личном кабинете пользователя|500px]]&lt;br /&gt;
=== &amp;#039;&amp;#039;&amp;#039;Систематичность проблемы&amp;#039;&amp;#039;&amp;#039; ===&lt;br /&gt;
&amp;quot;Чёрный&amp;quot; экран очень несложно отследить и подтвердить визуально. В этом случае хорошо помогает личный кабинет.&amp;lt;br&amp;gt;&lt;br /&gt;
Проблема ситуации в том, что он не несет в себе систематичности по времени и может появляться как раз в месяц, так и раз в несколько дней или часов.&amp;lt;br&amp;gt;&lt;br /&gt;
Период появления черного экрана определяется опытным путём и подтверждает по факту у точки. Поиск причины проблемы перекладывается на плечи технических специалистов.&lt;br /&gt;
== &amp;#039;&amp;#039;&amp;#039;Концепт решения&amp;#039;&amp;#039;&amp;#039; ==&lt;br /&gt;
Для решения проблемы было решено создать автоматический «Детектор» черного экрана. Он уведомляет о проблемах с контентом на устройстве и оповещает о случившейся ситуации в личном кабинете.&amp;lt;br&amp;gt;&lt;br /&gt;
{{Note|Данный функционал не доступен пользователю в личном кабинете. Его необходимо включать отдельно.|warn}} &lt;br /&gt;
=== &amp;#039;&amp;#039;&amp;#039;Принцип действия&amp;#039;&amp;#039;&amp;#039; ===&lt;br /&gt;
У каждого клиента/компании есть свой ID связанный с сервером. ID указан в личном кабинете и к нему привязываются все устройства компании.&amp;lt;br&amp;gt; &lt;br /&gt;
После запуска функционала сервер с определенным промежутком по времени отправляет на устройства «ивент».&amp;lt;br&amp;gt;&lt;br /&gt;
Запуская «ивент» устройство с помощью детектора проверяет наличие &amp;quot;черного&amp;quot; экрана, делая скриншот во время запуска.&amp;lt;br&amp;gt;&lt;br /&gt;
После запуска детектора возможно получить два определенных результата:&lt;br /&gt;
* После запуска «ивента» черного экрана нет - система продолжает работу в штатном режиме.&lt;br /&gt;
* После запуска «ивента» чёрный экран обнаружен - сервер отправляет повторный, проверочный &amp;quot;ивент&amp;quot;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Промежуток для повторной отправки &amp;quot;ивента&amp;quot; составляет 10 секунд.&amp;#039;&amp;#039;&amp;#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Если же и во второй раз отправляется черный экран, то со стороны сервера отправляется письмо на почту, о наличии проблемы.&lt;br /&gt;
{{Note|Указанная почта должна быть привязана к серверу.|warn}}&lt;br /&gt;
=== &amp;#039;&amp;#039;&amp;#039;Подготовка &amp;#039;&amp;#039;&amp;#039; ===&lt;br /&gt;
Системный администратор должен настроить серверное приложение по двум параметрам:&lt;br /&gt;
* Запуск и функционирование детектора &amp;quot;чёрного&amp;quot; экрана&lt;br /&gt;
* Настройка отправки письма с ошибкой на почту&lt;br /&gt;
=== &amp;#039;&amp;#039;&amp;#039;Принцип действия &amp;#039;&amp;#039;&amp;#039; ===&lt;br /&gt;
Если серверное приложение обнаружило черный экран, оно отправляет на почту письмо.&lt;br /&gt;
Итогом этой проверки станет сообщение на почту с оповещение о проблеме. &amp;lt;br&amp;gt;&lt;br /&gt;
Для подтверждения проверки работоспособности функционала через личный кабинет системный администратор может поставить черную картинку.  Сервер продолжает отправляет оповещения пока проблема не будет исправлена или же пока не будет выключен функционал.&amp;lt;br&amp;gt;&lt;br /&gt;
Впоследствии системный администратор должен принять меры для устранения проблемы.&lt;br /&gt;
=== &amp;#039;&amp;#039;&amp;#039;Тонкости и нюансы при работе функционала&amp;#039;&amp;#039;&amp;#039; ===&lt;br /&gt;
1. Для правильного работы необходимо чтобы placeholder с белой точкой воспринимался как черный экран. Поэтому используется не абсолютная проверка.&amp;lt;br&amp;gt;&lt;br /&gt;
2. &amp;#039;&amp;#039;&amp;#039;Актуально только при проигрывании видео.&amp;#039;&amp;#039;&amp;#039; При наличии root прав на устройстве – детектор работает нормально. Но, если, на устройстве нет root прав, детектор не сможет сделать скриншот.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Исключения:&amp;#039;&amp;#039;&amp;#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Скриншот доступен:&lt;br /&gt;
* Если приложение подписано «подписью разработчика» (уровень прав – Signage).&lt;br /&gt;
* Некоторые устройства (Vestel, Hikvision, Phillips) могут сделать скриншот без root прав из-за особенностей прошивки.&lt;br /&gt;
3. Если пользователь попробует сделать скриншот без root прав, то создается «пустой скриншот» с надписью «Идёт воспроизведение видео. Отсутствуют права для снятия скриншота».&amp;lt;br&amp;gt;&lt;br /&gt;
4. Информация от сервера к разработчикам отправляется через &amp;quot;ивент&amp;quot;. Внутри отправленного «ивента» сервер ждет callback от разработчиков.&amp;lt;br&amp;gt;&lt;br /&gt;
5. Тайм – аут “Callback” по умолчанию на сервере составляет – 30 секунд.&lt;br /&gt;
== &amp;#039;&amp;#039;&amp;#039;Реализация&amp;#039;&amp;#039;&amp;#039; ==&lt;br /&gt;
=== &amp;#039;&amp;#039;&amp;#039;Активация&amp;#039;&amp;#039;&amp;#039; ===&lt;br /&gt;
По умолчанию детектор для всех компаний отключен на сервере, так как создает на него слишком большую нагрузку.&lt;br /&gt;
{{Note|Включается детектор только по запросу со стороны компании, у которой появилась проблема с чёрным экраном.|warn}}&lt;br /&gt;
=== &amp;#039;&amp;#039;&amp;#039;Алгоритм действия&amp;#039;&amp;#039;&amp;#039; ===&lt;br /&gt;
Вся работа будет вестись в два этапа.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Первый этап - это запуск самого детектора&amp;#039;&amp;#039;&amp;#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
При запуске детектора нужно использовать id компании, который указан в личном кабинете. [[File:ID компании.png|thumb|Расположение ID компании в личном кабинете |300px]]&lt;br /&gt;
Для этого нужно зайти в профиль и развернуть подробную информацию о пользователе.&lt;br /&gt;
Системному администратору нужно подключиться на сервер, через &amp;#039;&amp;#039;&amp;#039;Command Line Interface (CLI)&amp;#039;&amp;#039;&amp;#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px solid #888; padding: 10px; margin: 10px 0; background-color: #f9f9f9;&amp;quot;&amp;gt;&lt;br /&gt;
При включении CLI сервер получает определенные данные для настройки:&amp;lt;br&amp;gt;&lt;br /&gt;
Это:&lt;br /&gt;
* ID компании, для которой включаем детектор&lt;br /&gt;
* Можно передать платформу (или несколько платформ), для которой необходимо запустить мониторинг.&lt;br /&gt;
Например: передаем параметр  &amp;quot;ANDROID&amp;quot; и мониторинг включается только для устройств &amp;quot;ANDROID&amp;quot;.&lt;br /&gt;
* E-mail адрес или несколько адресов на которые должно отправляться уведомление о нештатной ситуации&lt;br /&gt;
* Указанное время хранения скриншотов (по умолчанию 3 дня)&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
Далее нужно перейти в серверное приложение и выполнить команду:&lt;br /&gt;
&amp;lt;code&amp;gt;docker exec -it smartplayer_backend_i bash&amp;lt;/code&amp;gt;&lt;br /&gt;
[[File:Команда docker.png|thumb|Команда&amp;quot;docker exec -it smartplayer_backend_i bash&amp;quot; |300px]]&lt;br /&gt;
На этом этапе попадаем в нашем контейнере с серверным приложением.&amp;lt;br&amp;gt;&lt;br /&gt;
Следующей выполняем команду:&lt;br /&gt;
&amp;lt;code&amp;gt;Enable screen - screen monitor &amp;lt;/code&amp;gt;[[File:Enable screen monitor.png|thumb|Команда&amp;quot;docker exec -it smartplayer_backend_i bash&amp;quot; |300px]]&lt;br /&gt;
После очередного этапа система выдает вот такую строку: &lt;br /&gt;
Системное сообщение: &amp;lt;code&amp;gt;Input company ID and press Enter&amp;lt;/code&amp;gt;[[File:Системное сообщение.png|thumb|Системное сообщение &amp;quot;Input company ID and press Enter:&amp;quot; |300px]]&lt;br /&gt;
Выполненная команда отобразит строку в которой просят ввести Id компании.&amp;lt;br&amp;gt;&lt;br /&gt;
После ввода ID появляется запрос на мониторинг всех платформ компании. В данном случае выбираем «ДА/Y»&lt;br /&gt;
[[File:Мониторинг всех платформ.png|thumb|Здесь нужно запустить мониторинг платформ нажав &amp;quot;ДА/Y&amp;quot; |300px]]&lt;br /&gt;
В последствии консоль потребует указать e-mail на который будут приходить оповещения о проблемах.&lt;br /&gt;
Это делается в строке:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;Input_email and press enter&amp;lt;/code&amp;gt;&lt;br /&gt;
[[File:Строка почты.png|thumb|Здесь нужно запустить мониторинг платформ нажав &amp;quot;ДА/Y&amp;quot; |300px]]&lt;br /&gt;
{{Note|Указанная почта должна быть привязана к серверу.|warn}}&lt;br /&gt;
Также можно указать интервал с которым будут приходить скриншоты (например 1 минута). Строка выглядит так:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;Input check interval in minutes (m) or seconds (s) and press &amp;quot;Enter&amp;quot;&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Интервал отправки сообщения.png|thumb|Здесь нужно указать время в минутах с префиксом (m) или в секундах с префиксом (S) |300px]]&lt;br /&gt;
Далее указываем время либо в секундах с префиксом (s) после числового значения, либо в минутах с префиксом (m) и применяем эту настройку через &amp;quot;Enter&amp;quot;. Итогом всех манипуляций будет статус:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;Company screen monitoring enabled&amp;lt;/code&amp;gt; - выделена зеленым цветом. Это значит что детектор черного экрана запущен.&lt;br /&gt;
[[File:Запуск детектора.png|thumb|Оповещение о запуске Детектора выделено зелёным цветом |300px]]&lt;br /&gt;
=== &amp;#039;&amp;#039;&amp;#039;Уведомления на почту&amp;#039;&amp;#039;&amp;#039; ===&lt;br /&gt;
Второй этап настройка уведомления, которые приходят на почту. Настройка уведомления подробно прописана в отдельной инструкции [[Настройка отправки писем через серверное приложение SmartPlayer]].&amp;lt;br&amp;gt;&lt;br /&gt;
{{Note|При получении сообщения о проблеме на почту, невозможно напрямую из этого уведомления сделать какие либо действия. К примеру «Перезагрузка экрана» или &amp;quot;Остановка трансляции&amp;quot; недоступна.|warn}}&lt;br /&gt;
=== &amp;#039;&amp;#039;&amp;#039;Предфинальные действия&amp;#039;&amp;#039;&amp;#039; ===&lt;br /&gt;
В зависимости от результата, системный администратор сможет корректно определить причину и предпринять конкретные действия для устранения ситуации. Если у него не получается решить проблему внутри своей среды или же проблема на нашей стороне, он должен обратиться к команде SmartPlayer.&amp;lt;br&amp;gt;&lt;br /&gt;
Это вариант удобен для всех. Так как поможет решить проблемы если они и  с нашей стороны (например баг приложения), так и со стороны пользователя (например пользователь неправильно создал трансляцию).&lt;br /&gt;
=== &amp;#039;&amp;#039;&amp;#039;Важная информация о которой не стоит забывать &amp;#039;&amp;#039;&amp;#039; ===&lt;br /&gt;
{{Note|&amp;#039;&amp;#039;&amp;#039;Для перезапуска трансляции надо зайти в личный кабинет и перезапустить все вручную&amp;#039;&amp;#039;&amp;#039;|warn}}&lt;br /&gt;
{{Note|&amp;#039;&amp;#039;&amp;#039;Детектор черного экрана на данный момент работает только на Android версии 1.63.1&amp;#039;&amp;#039;&amp;#039;|warn}}&lt;br /&gt;
== &amp;#039;&amp;#039;&amp;#039;Итоговый результат&amp;#039;&amp;#039;&amp;#039; ==&lt;br /&gt;
Системный администратор со стороны клиента сможет запустить и настроить функционал детектора и начать решать проблему.&lt;br /&gt;
Наличие детектора позволяет контролировать проблемную ситуацию с &amp;quot;Чёрным&amp;quot; экраном и оперативно работать с её исправлением. Это актуально как для нас, так и для сотрудников клиента.&lt;br /&gt;
Команда SmartPlayer и команда сотрудников со стороны клиента смогут оперативно взаимодействовать для решения проблемы. &amp;lt;br&amp;gt;&lt;br /&gt;
Рядовой пользователь минимизирует негативный опыт взаимодействия с нашим продуктом.&lt;/div&gt;</summary>
		<author><name>FuzzyBot</name></author>
	</entry>
</feed>