Streams API
En la interfaz de Astra, puedes gestionar las configuraciones de Stream y controlar su estado utilizando métodos HTTP API.
Configuración de Stream
Sección titulada «Configuración de Stream»{ "id": "...", "name": "...", "type": "...", "enable": true, "input": [ "" ]}name- nombre del streamtype- tipo de streamsptsomptsenable-truesi el stream está habilitadoinput- lista de entradas del stream- otras opciones dependen de la configuración del stream.
Obtener configuración de Stream
Sección titulada «Obtener configuración de Stream»Solicitud: GET /api/stream-info/{id}
id- identificador único del stream
La respuesta será un JSON con la configuración del stream
Modificar configuración de Stream
Sección titulada «Modificar configuración de Stream»Solicitud: POST /control/
{ "id": "...", "cmd": "set-stream", "stream": { ... }}id- identificador único del streamstream- configuración del stream
Activar o desactivar Stream
Sección titulada «Activar o desactivar Stream»Encender o apagar el stream. Solicitud: POST /control/
{ "cmd": "toggle-stream", "id": "..."}id- identificador único del stream
Reiniciar Stream
Sección titulada «Reiniciar Stream»Solicitud: POST /control/
{ "cmd": "restart-stream", "id": "..."}id- identificador único del stream
Cambiar entrada activa
Sección titulada «Cambiar entrada activa»Elegir la entrada activa. Funciona solo para streams con los siguientes tipos de respaldo: passive o disable. Solicitud: POST /control/
{ "cmd": "set-stream-input", "id": "...", "input": "..."}id- identificador único del streaminput– número de entrada. La numeración comienza desde 1. Si la opción no está definida, se iniciará la siguiente entrada después de la entrada activa
Eliminar Stream
Sección titulada «Eliminar Stream»Solicitud: POST /control/
{ "cmd": "set-stream", "id": "...", "stream": { "remove": true }}id- identificador único del stream
Obtener estado del Stream
Sección titulada «Obtener estado del Stream»Solicitud: GET /api/stream-status/{id}
id- identificador único del stream
Parámetros de consulta opcionales: GET /api/stream-status/{id}?t={time}
time- por defecto es1- estadísticas del último minuto.0- estadísticas del último segundo (estado actual del stream).
Respuesta:
{ "timestamp": 0, "instance": "...", "name": "...", "input_id": 1, "active": true, "onair": true, "sessions": 0, "bitrate": 0, "packets": 0, "pes_error": 0, "sc_error": 0, "cc_error": 0, "video_count": 1, "audio_count": 1}timestamp- hora del reporte, parat=0es la hora actualinstance- nombre de la instancia si está definido en Configuración → General → Nombre de la instancianame- nombre del streaminput_id- identificador de la entrada activa. Por ejemplo, si la principal funciona bien será 1. Si el stream cambia a la entrada de respaldo, será el número de esa entradaactive-truesi el stream está activo, ofalsesi el stream funciona bajo demanda y está inactivoonair-truesi la entrada activa funciona sin erroressessions- número de sesiones activas en el streambitrate- bitrate del stream en Kbit/spes_error- número de paquetes PES inválidossc_error- número de paquetes TS encriptados. Si el stream está protegido con Conditional Access System (CAS), entoncessc_errorypes_errorserán mayores que 0. Si el stream se desencripta con una clave inválida, entoncessc_errorserá igual a 0 ypes_errorserá mayor que 0cc_error- contador de errores CC. Un error CC puede ser causado por pérdida o exceso de paquetesvideo_count- número de streams de videoaudio_count- número de streams de audio