Integración con IPTV middleware¶
Importante
Versión beta 2.1. Lo que se describe aquí solo existe en la versión beta 2.1: se instala desde el repositorio beta y solo con una licencia; la versión estable 2.0.2 y la versión de demostración no lo incluyen. La versión beta se suministra sin garantías y el soporte se presta en la medida de lo posible (Programa de pruebas beta).
Desde la versión 2.1.1.516, el nodo entiende el esquema de direcciones y de autorización por token con el que los IPTV middleware y los reproductores ya trabajan con los servidores de streaming: Ministra (Stalker), Microimpuls Smarty, TVIP TMS y los reproductores con archivo catchup="flussonic". Ese middleware se puede dirigir a Perfect Streamer sin cambiar en él las plantillas de direcciones de los canales: el middleware entrega al suscriptor un enlace con token y el nodo verifica el token con el middleware.
Se activan dos cosas: las formas de dirección en el servidor HTTP de streaming y el servidor de verificación de tokens (Servidor de verificación de tokens). Ambas se configuran en la consola, así como en el archivo de configuración (Cambiar un parámetro) y mediante la API HTTP (Gestión mediante la API HTTP).
Direcciones de los canales¶
El interruptor «URL compatibles con Flussonic» de la sección «Middleware» de la pantalla «Servidor HTTP de streaming» (Servidor HTTP de streaming; la clave flussonic-urls en /config/http-server), desactivado por defecto. Cuando está activado, cada flujo que tenga definido un «Nombre del flujo en la URL» (URL y autorización) también está disponible en estas direcciones, junto a las anteriores:
Dirección |
Qué entrega |
|---|---|
|
emisión en directo HLS |
|
emisión en directo DASH |
|
emisión en directo MPEG-TS; el flujo debe tener activada la difusión por HTTP |
|
archivo DVR (DVR: el archivo del flujo) desde el momento |
|
timeshift: archivo desde un momento pasado (o desde hace |
La dirección completa es http://<nodo>:<puerto>/<nombre>/index.m3u8?token=<token>. Cada solicitud debe llevar el token (de 512 caracteres como máximo). El nombre de un conjunto adaptativo (Conjuntos adaptativos) entrega su lista de reproducción adaptativa. Si el archivo o el timeshift se solicita desde un momento en que aún no se grababa, la lista de reproducción master responde 200 y la de la variante (media), 404.
En estas direcciones un flujo no puede llamarse hls, dash, llhls, http, rsv ni tener un nombre de 17 caracteres formado por h y 16 dígitos hexadecimales. En el editor del flujo, en la pestaña «OTT», bajo «Nombre del flujo en la URL», la consola muestra estas direcciones con el nombre del flujo y, para un nombre así, una advertencia (Configurar flujo).
Servidor de verificación de tokens¶
El token lo verifica el middleware. Su dirección se define como un servidor en la pestaña «Remoto (facturación)» de la pantalla «Usuarios / Inicios de sesión» (Usuarios / Inicios de sesión; una entrada en /config/cs/server). En el campo «Conector» se elige uno de los servidores de tokens:
ministra— «Ministra / Stalker (token)»Ministra (Stalker). Dirección:
http://<portal>/stalker_portal/server/api/chk_flussonic_tmp_link.php. En Ministra, para el canal se define el tipo de enlace temporalFlussonic, el tipo de archivoFlussonic DVRy la dirección del archivohttp://<nodo>:<puerto>/<nombre>/index.m3u8.smarty— «Smarty (token)»Microimpuls Smarty. Dirección:
http://<smarty>/tvmiddleware/api/streamservice/token/check/. Máscara del flujo:/$prefix/index.m3u8?token=$token; máscara del archivo:/$prefix/index-$flpbt-$flpdur.m3u8?token=$token.flussonic— «Flussonic auth backend (token)»Cualquier otro middleware (por ejemplo, TVIP TMS) que verifique los tokens con el mismo protocolo. Dirección: su dirección de verificación.
Un servidor de tokens solo verifica los tokens de estas direcciones; no atiende el acceso con login y contraseña. Por eso en la consola solo tiene «Nombre», «URL», «Tiempo de espera (s)» y la sección «Servidor de tokens», mientras que la contraseña, la contabilidad de sesiones, el prefijo y el sufijo del login, la traza y el análisis de la respuesta quedan ocultos. El nodo exige la clave password, pero no la envía a estos servidores: la consola la rellena sola. Si un servidor de tokens se cambia a «Universal (HTTP)», la consola pide una contraseña real. Al escribir mediante la API, password se define con cualquier valor no vacío.
Acceso y verificaciones repetidas¶
Sin token, denegación. Una solicitud sin token, con un token rechazado o cuando el servidor de verificación no está disponible recibe la respuesta 403. Si el servidor no respondió o respondió con un error, se consulta el siguiente; la denegación (401 o 403) es definitiva.
Middleware no disponible. Con la casilla «Permitir mientras el backend no responde» (
auth-fail-open=true), los nuevos espectadores se admiten mientras no estén disponibles todos los servidores de verificación y se vuelven a verificar en un plazo de 30 s. Esta clave no anula la denegación del middleware.Verificación repetida. Una sesión en curso se vuelve a verificar con el periodo que define el middleware (cabecera de respuesta
X-AuthDuration, 180 s por defecto) o con el periodo definido en el campo «Nueva comprobación»: «Predeterminado del perfil», «Nunca» o «Cada N segundos» (claveauth-recheck:-1,0o un número de segundos de hasta 86400). Una denegación en la verificación repetida detiene la reproducción de ese espectador. Los enlaces de Ministra no se vuelven a verificar: duran unos pocos segundos.Sesiones por usuario. Las cabeceras de respuesta
X-Max-SessionsyX-UserIdlimitan el número de sesiones de un mismo usuario por HLS, DASH y MPEG-TS en conjunto. Al alcanzar el límite se cierra la sesión inactiva desde hace más tiempo; en ese caso, una nueva conexión MPEG-TS no se acepta.El token no se ve. El token no se escribe en el registro ni se muestra en la consola: en la pantalla «Clientes» (Clientes) la sesión aparece como
tok:<16 dígitos hexadecimales>.Reserva OTT. Las sesiones con token no participan en la reserva OTT (Reserva OTT/DVR).
Ministra carga la programación desde la exportación XMLTV del servidor EPG (/xmltv, Entrega de XMLTV).
Limitaciones¶
Timeshift: solo HLS (TS) de un único flujo.
Las vistas previas, las playlists de solo vídeo y de pistas individuales (
video.m3u8,tracks-*) y el archivo en MPEG-TS no se entregan: esas direcciones responden 404.La integración se ha probado en emuladores de estos middleware; en sistemas en producción, todavía no.