Будуємо повноцінний iptv-ott сервіс stalker middleware

У цій статті я розповім як встановити безкоштовну IPTV / OTT Middleware з відкритим вихідним кодом від компанії Инфомир, навіщо вона потрібна і які можливості надає користувачам і адміністраторам.

Будуємо повноцінний iptv-ott сервіс stalker middleware

▍Что таке Middleware?

У Вікіпедії є хороше і коротке визначення:

Middleware - проміжне програмне забезпечення для управління комплексом IPTV. Це основний компонент IPTV рішення, так як він, в кінцевому підсумку, і визначає набір послуг, доступний абоненту, призначений для користувача інтерфейс, логіку переходів і алгоритм управління. На Middleware покладається роль координатора в процесі взаємодії практично всіх компонентів комплексу.

Вибравши одне рішення, оператор прив'язується до Middleware і не може швидко і дешево поміняти рішення, тому що це зажадає зміни програмного забезпечення на ТБ-приставках (або їх заміна, якщо список підтримуваних пристроїв не збігається). Так само потрібно заново провести інтеграцію з біллінгом, системою закриття контентів. Це час і гроші, і чим більше абонентська база, тим складніше.

▍Почему Stalker?

В першу чергу Stalker цікавий тим, що він безкоштовний. Правда безкоштовний, без пробних періодів і обмеження функціонала. Вихідний код можна завантажити на GitHub.

Звичайно ж ні, але цього вже достатньо щоб зацікавитися безкоштовним рішенням і встановити Stalker на тестовий сервер щоб познайомиться ближче.

▍Установка

У Инфомир є невелика документація і образ VirtualBox

Щоб встановити Stalker доведеться встановити більш 200 пакетів в вашу ОС. Рекомендую виділити окрему віртуальну машину або встановити в docker-контейнер, інакше можуть виникнуть конфлікти з іншими веб-сервісами.

образ VirtualBox

Запуск способу VirtualBox справа не складна, але опишу коротко як це робиться:

▍Docker контейнер

Давайте встановимо Stalker в Docker контейнер. Це швидко і зручно. Якщо ви не знаєте що таке Docker і ніколи з ним не працювали, почитайте статтю habrahabr.ru/post/310460. Вона дасть повне уявлення про роботу контейнерів. Але зараз ці знання не знадобляться.

Розробники настійно рекомендують використовувати Ubuntu Server LTS, при цьому 16.04 не підтримують поки, а 12.04 вже мало ким використовується. Docker дозволить запустити Stalker на вашому улюбленому дистрибутиві.

Для продовження, нам буде потрібно сам Docker і Docker-compose. Приклад установки для більшості дистрибутивів:

Створимо робочу папку, в якій буде у нас жити Stalker і скачати docker-compose файл:

Запускаємо утиліту, яка завантажить останню версію Stalker і заповнить нам базу даних:


Заходимо по стандартному логіном / паролем: admin / 1.

Ще раз все разом, щоб показати як все просто, буквально 3 команди:

Ролик «Установка Stalker Middleware за 2 хвилини»:

▍Установка без віртуалізації і контейнерів

Можна встановити і по-старому, просто встановити необхідні пакети і відредагувати декілька файлів вручну. Цей спосіб самий довгий і трудомісткий, але відмінно підійде, якщо ви збираєтеся запустити сервер в Production.

Якщо у вас вже є сервер з nginx + apache2 + php5, то вам пощастило, можливо Stalker запуститься і без установки додаткових пакетів. Але, наскільки я знаю, nginx + apache2 вже рідко використовуються разом, nginx + php-fpm куди зручніше.

Інструкція від розробника: wiki.infomir.eu/doku.php/stalker: install_and_configure

▍Настройка

Після установки, насамперед хочеться відкрити портал на ТВ-приставці, щоб переконається, що установка пройшла успішно і оцінити інтерфейс з боку користувача. Але поки рано, там буде зовсім нудно, давайте поки додамо трохи контенту.

За замовчуванням, адмін інтерфейс англійською мовою. Переключитися на російську ви можете внизу сторінки:

▍Добавленіе телеканалу

Розгортаємо меню «IPTV Канали», відкриваємо сторінку «Канали». У списку вже буде встановлений телеканал «Test channel», видаліть його і давайте додамо свій канал (кнопка «Add a channel»).

Заповнюємо основні поля: «Номер каналу», «Назва каналу», завантажимо логотип, поставимо галочку «Базовий канал».

Будуємо повноцінний iptv-ott сервіс stalker middleware

В результаті маємо отримати:

Будуємо повноцінний iptv-ott сервіс stalker middleware

Припустимо поки настройку програми передач (EPG) і ТБ-архіву (DVR). Зберігаємо.

▍Добавленіе фільму

Процес додавання фільмів не сильно відрізняється, але є приємний бонус: автозаповнення. Достатньо написати назву фільму / серіалу на оригінальній мові і Stalker зможе отримати метадані з бази даних TMDB або Кинопоиск.

Будуємо повноцінний iptv-ott сервіс stalker middleware

Вручну заповнювати список акторів, логотип, режисера, рік випуску, жанр та іншу інформацію, без якої каталог фільмів на приставці буде виглядати неповноцінною, дуже занадто багато роботи, коли потрібно додавати багато фільмів. Спасибі, Инфомир.

Є можливість додавати серіали, з правильною сортуванням серій. Вам не знадобиться заводити кожну серію як окремий фільм і писати в назві номер сезону і серії.

▍Программа передач (EPG)

Stalker вміє імпортувати EPG з формату XMLTV.

XMLTV - популярний формат опису програми передач заснований на XML, підтримується всіма постачальниками EPG. Містить докладний опис: назва, час початку, час закінчення, жанр, опис, картинку, список акторів, віковий рейтинг та іншу інформацію.

Відкриваємо меню «IPTV канали» → «EPG». Кнопка «Додати EPG».

Будуємо повноцінний iptv-ott сервіс stalker middleware

Нам буде потрібно вставити посилання на веб-сервер, де лежить xml файл. З власного досвіду додам, що постачальники найчастіше викладають на закритий паролем ftp-сервер, і в добавок ще архівують, тому в Stalker вставляємо посилання на localhost. а в crontab додаємо скрипт, який буде завантажувати і розпаковувати XMLTV в потрібну папку.

Після додавання посилання, натисніть «оновити». Якщо все зробили правильно, вийде:

Тепер переходимо в налаштування телеканалу. Меню «IPTV канали» → «Канали», натискаємо редагувати наш телеканал. Нас цікавить розділ «EPG», вказуємо ID нашого телеканалу та, при необхідності, коригуємо час під наш часовий пояс.

Будуємо повноцінний iptv-ott сервіс stalker middleware

Як дізнатися XMLTV ID телеканалу

Для кожного телеканалу доведеться вручну вказувати ID. Способу автоматизувати це я поки не знаю.

▍Внешній вид

Инфомир вже давно розробляє новий сучасний інтерфейс, але він поки виключений за замовчуванням. Я не помітив у ньому явних багів, працює дуже навіть непогано, саме його скріншот на початку статті.

Щоб активувати його, переходимо в меню «Налаштування» → «Зовнішній вигляд». На цій сторінці можемо ознайомиться з усіма доступними темами.

Будуємо повноцінний iptv-ott сервіс stalker middleware

Натискаємо «Застосувати» під темою «Stalker 5x - graphite».

▍Запускаем портал на приставці

Сподіваюся, у вас є під рукою приставка MAG? За допомогою пульта дистанційного керування або USB-клавіатури, переходимо в налаштування приставки → «Сервери» → «Портали» і вказуємо URL сервера, куди ви встановили Stalker.

Будуємо повноцінний iptv-ott сервіс stalker middleware

▍Что далі?