Aprovisionamiento y recuperación
Descripción general
Los reproductores BrightSign en redes grandes y distribuidas deben cumplir ciertos requisitos de aprovisionamiento y recuperación. Los socios que deseen configurar sus propios sistemas de aprovisionamiento y recuperación, en lugar de usar BSN.Cloud, deben asegurarse de que esos sistemas cumplan los siguientes requisitos.
Cada reproductor debe poder aprovisionarse a sí mismo y, una vez aprovisionado, comunicarse periódicamente con el servidor para buscar actualizaciones si está configurado para hacerlo. El reproductor y el servidor también deben poder iniciar un proceso de recuperación si el reproductor entra en un estado de error que no puede corregirse reiniciándolo (por ejemplo, corrupción del sistema de archivos causada por pérdida de energía o falla del dispositivo de almacenamiento).
Para cumplir estos requisitos, deben desarrollarse dos sistemas separados pero complementarios:
- Un conjunto de archivos autorun.brs que puedan reproducir contenido, facilitar la recuperación ante fallas o aprovisionar el reproductor para un entorno de reproducción HTML/JavaScript
- Un servidor manejador de solicitudes para procesar solicitudes HTTP de recuperación/aprovisionamiento enviadas por el reproductor. El request handler entrega un archivo autorun u otra respuesta HTTP según la información del reproductor contenida dentro del encabezado de la solicitud. La base de datos del request handler también puede contener indicadores condicionales para cada reproductor, que permiten enviar nuevos scripts autorun a reproductores específicos en campo. Si no se especifica un request handler específico del socio en el registro, BSN.Cloud proporciona un request handler predeterminado.
Aprovisionamiento del reproductor
El aprovisionamiento del reproductor BrightSign integra el reproductor en su entorno, principalmente cambiando la configuración del registro para reflejar ese entorno y, normalmente, descargando una aplicación o paquete de configuración al reproductor. Los siguientes ajustes se configuran dentro del registro durante el aprovisionamiento de BrightAuthor:connected o BSN.cloud:
- Cuenta, nombre de usuario, contraseña y grupo de BSN.cloud
- URL de recuperación/aprovisionamiento, URL de notificación de errores, URL de informe de fallos
- Zona horaria
Entradas del registro del reproductor
Las siguientes entradas del registro del reproductor están asociadas con el proceso de aprovisionamiento y recuperación. Estas claves pueden modificarse accediendo a la sección “networking” del registro usando el objeto BrightScript roRegistry.
Clave de registro | Descripción |
|---|---|
ub | El prefijo URL que se aplica a las URL de los valores de clave ru, eu y cu. Este prefijo no se aplica a un valor de clave que contenga dos puntos. |
ru | La URL de aprovisionamiento/recuperación utilizada por el reproductor para descargar un script autorun |
eu | La URL a la que se envían las notificaciones de error |
cu | La URL a la que se envían los informes de fallos |
p | La contraseña del controlador de recuperación (ru) especificado arriba |
Las siguientes claves del registro son específicas de BSN.cloud, pero los socios pueden modificarlas para afectar el registro de BSN.cloud. No debe almacenar su propia información en estas secciones porque puede afectar las operaciones de BSN.cloud:
Clave de registro | Descripción |
|---|---|
a | El nombre de la cuenta de BSN.cloud a la que pertenece el reproductor. |
u | El nombre del usuario de BSN.cloud en la cuenta a la que pertenece el reproductor |
g | El grupo de BSN.cloud dentro de la cuenta a la que pertenece el reproductor |
Las claves de registro de cuenta, nombre de usuario y grupo se utilizan para el aprovisionamiento/recuperación con BSN.cloud. Un controlador de solicitudes puede usar estas claves, pero no son necesarias.
Procesos de inicio del reproductor
Estos procesos ocurren cuando un reproductor BrightSign se inicia:
- El reproductor se conecta a una red y obtiene una dirección IP.
- El reproductor verifica el dispositivo de almacenamiento para detectar un autorun. Si se encuentra un autorun, el reproductor ejecutará el autorun y, si no se encuentra ninguno, continuará con los pasos siguientes. Consulte Almacenamiento del reproductor para obtener más información sobre dispositivos de almacenamiento y prioridad de dispositivos (si tiene varios dispositivos de almacenamiento).
- Si existe una dirección IPv4, el reproductor intentará aprovisionarse a través de la red.
- El reproductor verificará si hay una URL de recuperación (ru):
- Si se encuentra una URL de recuperación DHCP Option 43 (ru), esta anulará cualquier valor de registro para ru hasta el final de la concesión DHCP. Esta URL puede configurarse mediante DHCP Option 43. Consulte Opción 43 para configurar un servidor DHCP para comunicar esta URL a un reproductor BrightSign.
- Si no se encuentra DHCP Option 43 ru, se utilizará el ru configurado en el registro.
- Si no hay un valor de registro para ru, este paso se omitirá.
- Si la URL de recuperación está vacía, el reproductor intentará lo siguiente:
- Aprovisionamiento de host bien conocido: También conocido como mapeo de nombre personalizado en el servidor DNS de su red. Si una dirección IP está asignada a brightsign-b-deploy, el reproductor intentará usar la IP asociada para aprovisionarse automáticamente.
- Aprovisionamiento en la nube de B-Deploy: Consulte B-Deploy/APIs de aprovisionamiento.
- DNS de multidifusión (mDNS): El reproductor verificará automáticamente la ubicación estándar de mDNS (http://brightsign-b-deploy.local/) y, si hay un servidor en su red con esa dirección, el reproductor se aprovisionará automáticamente. Sin embargo, no puede haber otros métodos de aprovisionamiento activos si desea aprovisionar con mDNS. Consulte el Apéndice al final de esta página para obtener más información sobre esta opción.
- El reproductor reintentará el proceso de aprovisionamiento cada 30 segundos hasta que haya una respuesta satisfactoria o una interrupción.
Parámetros de solicitud de URL
Estos parámetros se utilizan para la comunicación entre un reproductor y el controlador de solicitudes.
Parámetros de solicitud del reproductor
Los siguientes parámetros se incluyen en el encabezado de las solicitudes HTTP GET que un reproductor envía a la URL de aprovisionamiento/recuperación:
Parámetro | Valor de ejemplo | Descripción |
|---|---|---|
DeviceModel | XT1144 | La designación del modelo del reproductor BrightSign |
DeviceFamily | Malibú | La designación de la familia del reproductor BrightSign |
Id. del dispositivo | D5E86P001287 | El número de serie único del reproductor |
Versión del firmware del dispositivo | 8.2.42 | La versión del sistema operativo (firmware) instalada actualmente en el reproductor |
Tiempo de actividad del dispositivo | 240 | La cantidad de tiempo (en segundos) desde que se inició el reproductor |
Modo de recuperación | anular | El modo de la solicitud URL actual: - override: La solicitud HTTP GET inicial de un reproductor con un script autorun válido - periodic: Solicitudes HTTP GET posteriores de un reproductor con un script autorun válido - last-resort: La solicitud HTTP GET de un reproductor sin un script autorun válido |
CrashDump | sí | Una marca que indica que el arranque actual fue iniciado por un reinicio forzado debido a un fallo (este encabezado solo está presente si es verdadero). |
Estado del almacenamiento | usb1=none;sd=autorun; sd2=storage;ssd=none; | El estado actual de autorun y del sistema de archivos de cada dispositivo de almacenamiento. |
Claves opcionales de BSN.cloud
Parámetro | Valor de ejemplo | Descripción |
|---|---|---|
Cuenta | bsaccount | El valor de registro a descrito anteriormente |
Usuario | bsuser | El valor de registro u descrito anteriormente |
Grupo | bsgroup | El valor de registro g descrito anteriormente |
Contraseña | bspassword | El valor de registro p descrito anteriormente |
Parámetros de estado de almacenamiento
El valor de Estado del almacenamiento contiene una lista de pares clave-valor que indican el estado de cada dispositivo de almacenamiento. Se devuelven las siguientes claves de dispositivos de almacenamiento:
Clave de BrightScript | Clave de estado de almacenamiento |
|---|---|
USB1: | usb1 |
SD: | sd |
SD2: | sd2 |
SSD: | ssd |
Estos valores de estado pueden devolverse para cada dispositivo de almacenamiento:
Valor de estado del almacenamiento | Descripción |
|---|---|
ninguno | No se detectó el dispositivo de almacenamiento. |
almacenamiento | El dispositivo de almacenamiento está presente, pero no se detectó un script de autorun. |
autorun | El dispositivo de almacenamiento está presente y contiene un archivo autorun.brs o autorun.zip . |
autorun-load-error | El dispositivo de almacenamiento está presente y contiene un archivo autorun.brs o autorun.zip que no se pudo cargar. |
autorun-runtime-error | El dispositivo de almacenamiento está presente y contiene un archivo autorun.brs o autorun.zip que encontró un error de ejecución. |
error | El dispositivo de almacenamiento está presente, pero falló una comprobación del sistema de archivos. Este valor también implica que los intentos de reparar el sistema de archivos también fallaron. |
Parámetros de respuesta del servidor
El encabezado de una respuesta del controlador de solicitudes puede contener un único parámetro. Este parámetro puede acompañar una respuesta HTTP 204 o 200 (incluso si el cuerpo de la respuesta está vacío).
Parámetro | Valor de ejemplo | Descripción |
|---|---|---|
Retry-After | 7200 | La cantidad de tiempo (en segundos) que el reproductor debe esperar para realizar una solicitud periódica a la URL de aprovisionamiento/recuperación. Si no se proporciona este parámetro, el intervalo de solicitud predeterminado será de dos horas. |
Recuperación del reproductor
Si no se encuentra un autorun válido, se activa una recuperación. En una recuperación, el reproductor descarga contenido desde la URL de recuperación (almacenada en el registro) e intenta ejecutarlo.
No se deben confundir el proceso de recuperación y la URL de recuperación. Aunque el proceso de recuperación utiliza la URL de recuperación, algunos escenarios de implementación también utilizan la URL de recuperación y esta también es la URL de aprovisionamiento en el registro.
Anular recuperación
Una vez que se haya completado el proceso de arranque, el reproductor escanea cada dispositivo de almacenamiento para determinar si uno o más dispositivos contienen un archivo autorun:
- Si al menos un dispositivo contiene un archivo autorun, el reproductor retrasará la ejecución del autorun mientras un proceso en segundo plano envía una solicitud HTTP GET (que contiene parámetros que describen el reproductor en el encabezado) a la URL de aprovisionamiento/recuperación:
- Si el controlador de solicitudes responde utilizando un código HTTP 200 con un cuerpo no vacío, el reproductor utilizará el cuerpo de la respuesta como el nuevo script autorun.
- Si el controlador de solicitudes responde con un código HTTP 204, o un código HTTP 200 que contiene un cuerpo de mensaje vacío, el reproductor ejecutará el script autorun preexistente con normalidad. La respuesta también puede incluir un encabezado "Retry-After" que indica (en segundos) con qué frecuencia el reproductor debe comunicarse con el controlador de solicitudes. Si este parámetro no se especifica, el intervalo de comprobación predeterminado será de dos horas.
- Si no se recibe ninguna respuesta dentro de 20 segundos, se ejecutará el autorun preexistente. El reproductor enviará otra solicitud al controlador de solicitudes después de cinco minutos y luego después de 10 minutos. Luego realizará una solicitud una vez cada dos horas. Si varios dispositivos de almacenamiento contienen un archivo autorun, el reproductor seleccionará el primer autorun en el siguiente orden: USB, SD, SD2, SSD. Si tarda demasiado en comprobar la integridad de un dispositivo de almacenamiento, ese dispositivo podría omitirse en el orden de selección de autorun, por lo que no debe crear un sistema que dependa de este orden.
- Si ninguno de los dispositivos contiene un autorun, el reproductor entrará en el modo de recuperación de último recurso.

Recuperación periódica
El reproductor enviará periódicamente una solicitud HTTP GET a la URL de aprovisionamiento y recuperación para determinar si el dispositivo debe actualizarse.
- Si no se recibe ninguna respuesta, el autorun preexistente continuará sin interrupción.
- Si el controlador de solicitudes responde con un código HTTP 204, o un código HTTP 200 que contiene un cuerpo de mensaje vacío, el autorun preexistente continuará sin interrupción. La respuesta también puede incluir un encabezado "Retry-After" que indique (en segundos) con qué frecuencia el reproductor debe comunicarse con el controlador de solicitudes. Si este parámetro no se especifica, el intervalo de comprobación se establecerá de forma predeterminada en dos horas.
- Si el controlador de solicitudes responde usando un código HTTP 200 con un cuerpo no vacío, el reproductor utilizará el cuerpo de la respuesta como el nuevo script autorun.

Recuperación de último recurso
Si ninguno de los dispositivos de almacenamiento conectados contiene un archivo autorun, o si el autorun designado encuentra un autorun-load-error o autorun-runtime-error, entonces comenzará la recuperación de último recurso.
- El reproductor envía una solicitud HTTP GET a la URL de aprovisionamiento/recuperación. El encabezado de esta solicitud contiene información sobre el reproductor, así como el estado de los dispositivos de almacenamiento y los archivos autorun en el reproductor: Esto permite que el controlador de solicitudes determine el curso de acción correcto en función de los atributos y el estado actual del reproductor.
- Si el controlador de solicitudes responde usando un código HTTP 200 con un cuerpo no vacío, el reproductor utilizará el cuerpo de la respuesta como el nuevo script autorun. El script autorun debe reiniciar el reproductor una vez que realice las tareas de recuperación necesarias (el reproductor no se reiniciará automáticamente).
- Si el controlador de solicitudes responde con un código HTTP 204, o un código HTTP 200 que contiene un cuerpo de mensaje vacío, el reproductor se reiniciará inmediatamente.
- Si el controlador de solicitudes no responde, el reproductor continuará enviando solicitudes durante 30 minutos antes de reiniciarse. Alternativamente, se producirá un reinicio después de solo 5 minutos si el script autorun ha encontrado un autorun-runtime-error. Este proceso se repetirá indefinidamente hasta que se reciba un script autorun del controlador de solicitudes.
-

Apéndice
mDNS
Multicast DNS es un protocolo DNS único desarrollado para redes pequeñas. Estos diagramas muestran las diferencias entre una configuración DNS normal y una configuración mDNS. Tenga en cuenta que Multicast DNS no está habilitado de forma predeterminada en todas las redes.


Configurar un servidor de recuperación / aprovisionamiento
El siguiente diagrama de flujo de trabajo describe una implementación simple de controlador de solicitudes. Este flujo de trabajo asume la implementación de:
- Una base de datos que puede asociar indicadores de recuperación forzada con un dispositivo individual o un grupo de dispositivos
- Un script de aprovisionamiento
- Un script de recuperación que primero reformatea el dispositivo de almacenamiento
- Un script de recuperación que no reformatea el dispositivo de almacenamiento
Este flujo de trabajo no implementa las siguientes funciones:
- Diferentes scripts de aprovisionamiento según el DeviceId o Group (u otros parámetros HTTP GET)
- Múltiples scripts autorun de aprovisionamiento o recuperación para diferentes almacenamientos

Siguiente - Archivos Autorun >Siguiente - Archivos Autorun >