Плейлист – это упорядоченный список мультимедийных файлов (видео и изображений), которые воспроизводятся строго последовательно, один за другим, в соответствии с заданными параметрами. Плейлист может иметь ограничения по времени, датам и дням недели, а каждый элемент содержит настройки его длительности.
Процесс выгрузки плейлиста на сервере
- Пользователь назначает плейлист на выбранные устройства в веб-интерфейсе Artix Digital Signage.
- Сервер Artix Digital Signage вносит исправления в БД таблицу
playlist_ref
.
На основании этой таблицы в веб-интерфейсе будут отображены плейлисты с назначенными устройствами. - Сервер подготавливает файловую систему для кассы:
- создает ссылки на файлы,
- формирует
playlist.ini
– файл с расписанием, - формирует TF – файл транзакции.
- Сервер проверяет наличие изменений в файловой системе с периодичностью, указанной в веб-интерфейсе Artix Digital Signage.
Если обнаружено, что у какого-то устройства файловая система каталога синхронизации не совпадает, то начинается выгрузка.
В случае обнаружения изменений в файлах транзакции синхронизация запускается с интервалом, указанным в параметре syncRepeat.
Результат выгрузки фиксируется в БД таблицеunloaded_log
.
Воспроизведение рекламы на устройстве
Для воспроизведения рекламы используются файлы:
Путь файла зависит от вида устройства.
syncdir
– каталог синхронизации, является отражением подготовленной файловой системы на сервере Artix Digital Signage.workdir
– используется для воспроизведения рекламы на кассе.
Путь к файлам на кассе:
/var/lib/artix-ads/syncdir
/var/lib/artix-ads/workdir
Раз в сутки (через 24 часа после старта сервиса) устройство сверяет файлы транзакции из каталогов syncdir
и workdir
. Если файлы расходятся, то каталог syncdir
проверяется на целостность (сверяются суммы файлов с тем что указано в файле транзакции). Если проверка на целостность успешна, то содержимое каталога syncdir
добавляется в каталог workdir
. Касса составляет новое расписание на день.
В случаях, когда требуется принудительное обновление плейлиста, можно выполнить следующие действия:
- перезагрузка кассы,
перезапуск сервиса
artix-ads
:service artix-ads restart