---
title: Actualizar BrightSignOS desde HTML / JS
slug: technical/es/actualizar-brightsignos-desde-html-js
docTags: 
createdAt: 2025-03-11T07:00:15.333Z
---

Los partners de BrightSign que usan aplicaciones HTML / JavaScript (y no usan la interfaz BrightSign Author) pueden seguir los pasos que se describen a continuación para actualizar a la versión más reciente de BrightSignOS (BOS). 

# Acceder a BrightSignOS

1. Vaya a la sección [Descargas](http://www.brightsign.biz/downloads/overview/) de nuestro sitio web o a [BrightSignOS Releases](docId\:jrJMrqSPcjyLopa9UY7xF) para descargar la versión de BOS que desee. 
2. Haga clic en el botón **Descargar** en la página de descarga que corresponde con el número de modelo de su reproductor BrightSign. Tenga en cuenta que las versiones de BOS para diferentes familias de modelos suelen estar designadas con el mismo número, pero son archivos distintos. Asegúrese de usar únicamente el archivo de actualización que corresponde con el número de modelo de su reproductor BrightSign.
3. Descomprima el archivo descargado.
4. Coloque el archivo *.bsfw* en la ubicación URL conocida.

Póngase en contacto con [support@brightsign.biz](mailto\:support@brightsign.biz) si necesita ayuda para crear una URL para la versión correcta de BOS.

# Instalar la actualización

Para instalar la actualización, su código debe descargar la actualización de BOS en el directorio raíz de un dispositivo de almacenamiento conectado (donde el OS la buscará durante un reinicio) y reiniciar el reproductor después de la descarga. También puede añadir una comprobación para ver si el BOS se descargó correctamente.

## Requisitos del código

1. Especifique la versión correcta del OS y el archivo *.bsfw*  desde la URL descargada.
2. Si sabe dónde descargar la actualización, especifique esa ubicación en su código. Si no, el código debe "decidir" dónde escribir el archivo de actualización de BOS. Consulte "Seleccionar una ubicación de descarga" para obtener más orientación.
3. Descargue el BOS. Puede usar la función `downloadFile()` y el módulo `node-fetch` o su propio método preferido.
4. Para llamar a la función de reinicio después de la descarga, use la API *@brightsign/system*.
5. Puede usar la API *@brightsign/deviceinfo* para asegurarse de que el BOS se descargó correctamente en el dispositivo.

## Ubicación de descarga

Puede usar cualquier dispositivo de almacenamiento grabable con suficiente espacio, pero recomendamos que implemente un orden de búsqueda que priorice un dispositivo más rápido o más duradero (priorice una memoria USB conectada sobre otros almacenamientos, mientras que la SD principal debe tener prioridad sobre la SD secundaria, y una tarjeta SD que el usuario conecte debe tener prioridad sobre un SSD). Por ejemplo:

1. */storage/usb1* (la unidad para dispositivos de almacenamiento USB conectados al reproductor)
2. */storage/sd* (la unidad SD o microSD principal en el reproductor)
3. */storage/sd2* (la unidad microSD interna en el reproductor para modelos 4Kx42 y XDx32)
4. */storage/ssd* (el SSD interno en el reproductor para modelos XTx44, XTx43, XDx34 y XDx33)

Haga que su script itere sobre todos los puntos de montaje en */storage* (omitiendo cualquier elemento que no sea un punto de montaje, o que sea un tmpfs, o sea de solo lectura) buscando una unidad con suficiente espacio.

# Ejemplo

Este código es solo para fines ilustrativos. Una implementación de producción también debe contener pasos para manejar errores, desbordamiento de datos, dispositivos de almacenamiento protegidos contra escritura, etc.

Si desea ejecutarlo, necesitará tener Node.js habilitado en el entorno de ejecución de su navegador. También debe editarlo para que apunte a lo correcto:

- `osYouWant:` La versión correcta del OS
- `fwName:` El nombre de archivo *.bsfw* del OS
- `URL:` La URL del OS (*https\://bsncloud.s3.amazonaws.com/public* es la URL pública que almacena archivos BrightSign .bsfw).
- `ruta del dispositivo:` Escriba la actualización del OS en este dispositivo de almacenamiento

```text
// Fetch the BOS url.
let fs = require("fs")
let path = require("path")
let fetch = require("node-fetch");

const systemClass = require("@brightsign/system");
let system = new systemClass();
const diClass = require("@brightsign/deviceinfo");
let di = new diClass();

// Use the information in the hardcoded URL to specify the osYouWant and fwName variables.
let osYouWant = '8.2.82'
let fwName = 'malibu-8.2.82-update.bsfw'
let url = 'https://bsncloud.s3.amazonaws.com/public/malibu-8.2.82-update.bsfw';
let devicePath = '/storage/sd/'+fwName;


const downloadFile = (async (url, path) => {
  const res = await fetch(url);
  const fileStream = fs.createWriteStream(path);
  await new Promise((resolve, reject) => {
      res.body.pipe(fileStream);
      res.body.on("error", (err) => {
        reject(err);
      });
      fileStream.on("finish", function() {
        resolve('success');
      });
    });
});

 
function main(){
  if (di.osVersionCompare(osYouWant) != 0) {
    downloadFile(url, devicePath).then(() => {
        console.log(`${osYouWant} has been downloaded successfully!`)
        system.reboot();
    })
    .catch((err) => {
        console.log(err)
    })
  }
  else{
    console.log(`You have gotten the right OS ${osYouWant} you want!`)
  }
}

main();
```

## Comprobar la versión de BrightSignOS

Después de que el reproductor se reinicie, compruebe la versión de BrightSignOS en BrightSign Author DWS para asegurarse de que se haya actualizado a la versión correcta.
