Главная
XtreamUIPro

Руководство по настройке

Руководство по настройке: спортивные клубы и академии

Настройте платформу как видеосервис клуба или академии: потоки матчей и тренировок, библиотека разборов по составам и доступ участников и семей, следующий за сезоном.

Эти руководства сопоставляют понятия отрасли с объектами, которые в платформе есть сегодня (букеты, линии, пакеты, аккаунты реселлеров, ноды, API). Это концептуальные соответствия, а не отраслевые функции, и аккаунт реселлера — делегированный аккаунт, а не изолированный тенант.

Концептуальное соответствие

В панели ничто не называется составом или участником. Таблица показывает, какой объект какую роль играет; главы ниже настраивают их в этом порядке.

В вашей отраслиНа платформеГде в панели
Трансляция матча или тренировкиПрямой канал: стрим со своими источниками, EPG и форматами выводаStreams → добавить прямой стрим (URL источника или RTMP-поток)
Библиотека разборов и повторовVOD-каталог: фильмы и сериалы с сезонами и эпизодами, категориями и метаданнымиMovies и Series либо задача загрузки VOD
Пакет состава или соревнованияБукет: именованный набор каналов, фильмов или сериалов, который открывает пакетBouquets, из Streams и Movies / Series
Доступ участника или семьиЛиния: один доступ со своим пакетом, букетами, сроком действия, лимитом подключений и выводамиLines → добавить, либо коды активации, либо Reseller API
Сезон или срок членстваСрок действия линии, который продлевается пакетом, кредитом или через APIСрок действия линии и длительность пакета
Аккаунт сотрудника команды или академииАккаунт реселлера: делегированная панель с кредитами, правами и собственными линиямиUsers → добавить реселлера; Groups для его прав
Интеграция с магазином или системой управления клубомReseller API и webhook: операции панели из вашей собственной системыКлючи Reseller API и webhook в панели реселлера

Требования

Что подготовить перед установкой.

  1. Сервер (Ubuntu 22.04 или 24.04) с публичным адресом или доменом и достаточной исходящей полосой для матчей, которые вы планируете транслировать.
  2. Камера и кодировщик на стадионе, способные отправлять RTMP, и записанные тренировки и файлы разбора, которые тренеры уже хранят.
  3. Решение о том, кто что видит: какие составы делятся материалами, какие матчи только для участников и кто из персонала получает аккаунт панели.

Развёртывание инфраструктуры

Сначала академия, нода — когда её потребуют матчевые дни.

  1. Запустите установщик на сервере академии и поставьте панель за reverse proxy с TLS; задайте доверенные прокси, чтобы логи и IP-правила видели реальный адрес зрителя.
  2. Задайте базовый URL воспроизведения на публичный адрес, по которому заходят зрители, чтобы ссылки, выдаваемые панелью, работали из дома.
  3. Если один и тот же матч смотрит много семей, зарегистрируйте ноду в разделе Servers; панель устанавливает её по SSH и раздаёт с неё прямой канал.
  4. Создайте партнёрский аккаунт (реселлер) для тренерского штаба с правами на каталог и без прав на линии участников.

Организация контента

Составы и сезоны как категории, доступ как букеты.

  1. Создайте категории по возрастным группам и сезонам и сериалы для соревнований с серией на каждый матч.
  2. Создайте по одному букету на материалы разбора каждого состава, один для прямых каналов матчей и один для всей академии.
  3. Создайте по одному пакету на вид членства: выдаваемые им букеты, сезон в качестве срока действия и цена в кредитах, если его продаёт персонал.
  4. Называйте букеты по составу или соревнованию, которым они принадлежат, чтобы персонал знал, какой пакет дать семье.

Настройка партнёров (реселлеров)

Сотрудники, управляющие своими участниками, если клуб этого хочет.

  1. Создайте группу с правами на каталог для тренеров и группу с правами на линии для секретаря по членству.
  2. Добавьте каждого из них как реселлера с подходящей группой; выдавайте секретарю кредиты, только если членства продаются через панель.
  3. Филиал академии или клуб болельщиков со своими участниками получает собственный партнёрский аккаунт и собственные пакеты.

Настройка доступа участников и семей

Одна линия на участника или на семью.

  1. Создайте ключ Reseller API для магазина или системы управления клубом и храните его среди секретов этой системы.
  2. При регистрации система вызывает action=create_line с пакетом членства и идентификатором запроса; сезон — это срок действия пакета.
  3. Задайте максимальное число подключений по устройствам, которые нужны семье (обычно три-четыре), чтобы одно членство не делилось за пределами домохозяйства.
  4. Для пробного матчевого дня добавьте линию через Lines → add с пробным пакетом или напечатайте коды активации для болельщиков на трибуне.

Библиотека разборов и повторов

Матчи и тренировки по запросу.

  1. Загрузите каждый матч или тренировку как источник серии либо загрузите их заданием VOD ingest; указывайте в названии дату, соперника и состав.
  2. Подключите запись к букету состава через её сериал, чтобы её видели только линии этого состава.
  3. Проверьте воспроизведение с тестовой линией каждого членства, чтобы убедиться, кто что видит.

Потоки матчей и тренировок

Камера поля как прямой канал.

  1. Добавьте прямой поток для каждого кодировщика на стадионе (RTMP push) и поместите его в букет матчевого дня.
  2. Включите catch-up, чтобы семья, подключившаяся позже, могла перемотать назад, и добавьте запись в библиотеку после финального свистка.
  3. В напряжённый матчевый день проверьте, что нода забирает канал у origin один раз и обслуживает направленных на неё зрителей.

Срок действия членства

Доступ следует за сезоном.

  1. Линия истекает в конце периода своего пакета; магазин продлевает её командой action=renew_line, когда оплачен взнос следующего сезона.
  2. Подпишите магазин на webhooks, чтобы отправлять напоминание при line.expiring и закрывать членство при line.expired.
  3. Игрока, ушедшего посреди сезона, магазин отключает командой action=disable_line; линия сохраняется для учёта.

Интеграция с магазином или ПО клуба

Системы управляют доступом, плеер воспроизводит.

  1. Установите коннектор вашей торговой платформы (WooCommerce, Shopify и другие) на стороне магазина, чтобы покупка создавала линию, а платёж продлевал её.
  2. Система управления клубом или продажи билетов подключается через Reseller API и webhooks; нативного коннектора для неё нет.
  3. Единого входа (SSO) для зрителей нет: участники входят в плеер с учётными данными своей линии, которые отправляет им магазин.

Вопросы безопасности

Материалы состава остаются у состава.

  1. Отдавайте панель и базовый URL воспроизведения по TLS и укажите в TRUSTED_PROXIES ваш reverse proxy.
  2. Двухфакторный вход для каждого аккаунта панели и группы прав, чтобы секретарь не мог менять каталог, а тренеры не видели линии.
  3. Подписанные и истекающие ссылки воспроизведения, лимит подключений на линию и привязка к IP или стране для линий персонала.
  4. Зашифрованные резервные копии базы данных с копией вне площадки и журнал аудита для каждого изменения линий и каталога.

Устранение неполадок

Обычные первые проверки.

  1. Родитель видит разбор основного состава: проверьте пакет линии и выдаваемые им букеты.
  2. У нового участника нет доступа после оплаты: проверьте журнал вызовов Reseller API на запрос магазина и дату окончания линии.
  3. Поток матча заикается в начале игры: проверьте исходящую скорость кодировщика на стадионе и heartbeat ноды, если зрителей обслуживает она.
  4. Журнал аудита показывает адрес прокси: укажите прокси в TRUSTED_PROXIES и перезапустите панель.