Функционал моделей событий для видео аналитики

Материал из SmartPlayer

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

В рамках реализации проекта видеоаналитики для велотрека была переработана логика работы раздела «События». Ранее логика работы событий привязывалась к одной конкретной трансляции. То есть, для каждой трансляции нужно создавать своё событие и переиспользовать его в других трансляциях. После переработки созданные события можно привязывать к любой трансляции. Была добавлена новая логика. Также на стороне личного кабинета было добавлено ведения журналов события в отдельном разделе - «События трансляции».


Изменения личного кабинета

В личном кабинете SmartPlayer при текущей реализации прошли следующие изменения:

  1. Появилась новая категория «События трансляций» в разделе «Трансляция».
  2. Добавились параметры в разделе «Настройки» влияющие на работу событий.

Категория «События трансляций»

Категория «События трансляций» располагается в личном кабинете в разделе «Трансляция».

Пример отображения категории «События трансляции» в разделе «Трансляции»

Перейдя категорию «События трансляции» пользователю откроется главная страница раздела, которая разделена на два блока:

  1. События трансляции — включает в себя все созданные события.
  2. Журнал событий трансляций — список с подробным описанием использования событий.
Пример отображения главной страницы категории «События трансляции»
Выделенные с помощью чекбокса события отображаются в правой части экрана.
Пример отображения главной страницы категории «События трансляции»

Для выделенных событий доступна два действия:

  1. Отменить выбор — снимает чекбокс (галочку) выделения со всех устройств.
  2. Удалить — удаляет сущность выделенных события из списка событий, а также записи о событиях с сервера.
Пример отображения функций для взаимодействия с выделенными устройствами

События трансляции

Блок «События трансляции» включает в себя следующую информацию и возможности:

  • кнопка «Создать» — позволяет создать событие и в последствии прикрепить его к трансляции;
  • чекбокс для выделения — выделяет нужное событие;
  • название — отображается текстовое название события;
  • тип события — отображается тип имеющегося события;
  • ключ — отображается ключ используемый для события
  • значение — численное значение для события
  • приоритет — отображается текстом приоритет события
  • отправить —

Журнал событий

Блок «Журнал событий» включает в себя все созданные и передает о них следующую информацию:

Приоритеты событий

Изменение настроек личного кабинета SmartPlayer

Для корректной работы событий пользователям необходимо будет зайти в раздел «Настройки» личного кабинета в двух случаяХ:

  1. Создания API-ключа для события.
  2. Количество отображаемых событий в категории «События трансляции».

Изменения серверной логики

На данный момент серверное приложение может работать по вебхукам (webhook), которая позволяет серверам обращаться к серверу SmartPlayer. В качестве ключа пользователь теперь может готовый json-файл, в котором после загрузки можно выбрать поле на которое будет смотреть сервер используя целевой путь. Поля «Целевой путь» и «Значение» после выделения кликом в json-файле определяются автоматически, но также «Значение» можно ввести вручную.

Сейчас на сервере работа ведется только с подобъектами.

Теперь на dev-сервере появилась новая вкладка в разделе трансляции - события трансляции. там можно создать событие. Ввести название события и приоритет. Созданное событие является отдельной сущностью в личном кабинете. далее заходим в трансляцию и добавляем событие через икону «+». В трансляции главная страница и она на себя зациклена. В списке событий есть кнопка «Отправить» необходимая для эмуляции событий. При отправке событий страница переключается. При переключении события учитывается его приоритет. Если сначала показалось событие со средним приоритетом , а потом появилось событие с низким приоритетом, то на экране все равно будет событие со средним приоритетом. Но если переключение с события со средним приоритетом будет на событие с высокми приоритетом на устройство выведется событие с высоким приоритетом. два события с одинаковым приоритетом буду переключаться между собой. Данная логика работает ко всем привязанным к трансляции устройствам. появился новый тип события по webhoock (вебхук) со своего сервера можно было обратится к серверу SmartPlayer. Событие - серверное приложение - ключ (внешний источник). в этот ключ можно добавить полноценный json-файл. Сейчас на сервере работа ведется только с подобъектами.

Видеоинструкция

Создание событий в личном кабинете

Дополнительная информация

Если данная статья не помогает использовать функционал по назначению или после ее прочтения остаются вопросы, их можно озвучить в разделе "Обсуждения" вверху страницы.

Пример отображения вкладки «Обсуждения» на wiki-странице

Также дополнительную информацию можно узнать на странице Как взаимодействовать пользователю с разделом "Обсуждения"