---
title: Modo de publicación
slug: es/modo-de-publicacion
createdAt: 2025-03-11T06:55:06.569Z
---

Una de las configuraciones más importantes en un Setup File es el **Modo de publicación** que establece el método mediante el cual el contenido se entregará al reproductor. El Publishing Mode está estrechamente relacionado con el CMS (Content Management System) del reproductor.

# Selector

Utilice la herramienta a continuación para determinar rápidamente el mejor Publishing Mode para su(s) reproductor(es).

:::Iframe{iframeHeight="0" code="<!DOCTYPE html>&#xA;<html lang=&#x22;en&#x22;>&#xA;<head>&#xA;<meta charset=&#x22;UTF-8&#x22;>&#xA;<meta name=&#x22;viewport&#x22; content=&#x22;width=device-width, initial-scale=1.0&#x22;>&#xA;<title>Asistente del modo de publicación (Internet)</title>&#xA;<style>&#xA;  :root {&#xA;    --accent: #4B2E83;&#xA;    --accent-hover: #3A2266;&#xA;    --accent-tint: #f1ecf8;&#xA;    --text-main: #1a1d29;&#xA;    --text-muted: #5b6274;&#xA;    --border: #e3e5ea;&#xA;    --bg-card: #ffffff;&#xA;    --bg-page: transparent;&#xA;    --radius: 14px;&#xA;  }&#xA;&#xA;  * { box-sizing: border-box; }&#xA;&#xA;  html, body {&#xA;    margin: 0;&#xA;    padding: 0;&#xA;    background: var(--bg-page);&#xA;    font-family: -apple-system, BlinkMacSystemFont, &#x22;Segoe UI&#x22;, Roboto, Helvetica, Arial, sans-serif;&#xA;    color: var(--text-main);&#xA;  }&#xA;&#xA;  .wizard-wrap {&#xA;    display: flex;&#xA;    justify-content: center;&#xA;    align-items: flex-start;&#xA;    padding: 24px 16px;&#xA;  }&#xA;&#xA;  .wizard-card {&#xA;    position: relative;&#xA;    width: 100%;&#xA;    max-width: 560px;&#xA;    background: var(--bg-card);&#xA;    border: 1px solid var(--border);&#xA;    border-radius: var(--radius);&#xA;    box-shadow: 0 4px 20px rgba(20, 24, 40, 0.06);&#xA;    padding: 28px 32px 32px;&#xA;  }&#xA;&#xA;  /* Puntos de progreso */&#xA;  .progress {&#xA;    display: flex;&#xA;    gap: 6px;&#xA;    margin-bottom: 20px;&#xA;  }&#xA;  .progress span {&#xA;    flex: 1;&#xA;    height: 4px;&#xA;    border-radius: 2px;&#xA;    background: var(--border);&#xA;    transition: background 0.25s ease;&#xA;  }&#xA;  .progress span.active {&#xA;    background: var(--accent);&#xA;  }&#xA;&#xA;  /* Botón de reinicio */&#xA;  .reset-btn {&#xA;    display: none;&#xA;    align-items: center;&#xA;    gap: 6px;&#xA;    background: none;&#xA;    border: none;&#xA;    color: var(--text-muted);&#xA;    font-size: 13px;&#xA;    font-weight: 500;&#xA;    cursor: pointer;&#xA;    padding: 6px 8px;&#xA;    margin: -6px -8px 14px;&#xA;    border-radius: 8px;&#xA;    transition: background 0.15s ease, color 0.15s ease;&#xA;  }&#xA;  .reset-btn:hover {&#xA;    background: #f2f3f6;&#xA;    color: var(--text-main);&#xA;  }&#xA;  .reset-btn svg {&#xA;    width: 14px;&#xA;    height: 14px;&#xA;    flex-shrink: 0;&#xA;  }&#xA;  .reset-btn.visible { display: inline-flex; }&#xA;&#xA;  #screen {&#xA;    animation: fadeIn 0.2s ease;&#xA;  }&#xA;  @keyframes fadeIn {&#xA;    from { opacity: 0; transform: translateY(4px); }&#xA;    to { opacity: 1; transform: translateY(0); }&#xA;  }&#xA;&#xA;  h2.question {&#xA;    font-size: 18px;&#xA;    line-height: 1.5;&#xA;    margin: 0 0 22px;&#xA;    font-weight: 600;&#xA;  }&#xA;&#xA;  p.result-heading {&#xA;    font-size: 16px;&#xA;    line-height: 1.6;&#xA;    margin: 0 0 18px;&#xA;    color: var(--text-main);&#xA;  }&#xA;&#xA;  p.suggestion {&#xA;    font-size: 16px;&#xA;    line-height: 1.6;&#xA;    margin: 0;&#xA;  }&#xA;  p.suggestion a {&#xA;    font-weight: 600;&#xA;  }&#xA;&#xA;  .options {&#xA;    display: flex;&#xA;    flex-direction: column;&#xA;    gap: 10px;&#xA;  }&#xA;&#xA;  .option-btn {&#xA;    display: block;&#xA;    width: 100%;&#xA;    text-align: left;&#xA;    background: #f8f9fb;&#xA;    border: 1px solid var(--border);&#xA;    border-radius: 10px;&#xA;    padding: 14px 16px;&#xA;    font-size: 15px;&#xA;    font-weight: 500;&#xA;    color: var(--text-main);&#xA;    cursor: pointer;&#xA;    transition: border-color 0.15s ease, background 0.15s ease, transform 0.1s ease;&#xA;  }&#xA;  .option-btn:hover {&#xA;    border-color: var(--accent);&#xA;    background: var(--accent-tint);&#xA;  }&#xA;  .option-btn:active {&#xA;    transform: scale(0.99);&#xA;  }&#xA;&#xA;  .link-list {&#xA;    display: flex;&#xA;    flex-direction: column;&#xA;    gap: 10px;&#xA;  }&#xA;&#xA;  .link-item {&#xA;    display: block;&#xA;    border: 1px solid var(--border);&#xA;    border-radius: 10px;&#xA;    padding: 14px 16px;&#xA;    text-decoration: none;&#xA;    color: inherit;&#xA;    transition: border-color 0.15s ease, background 0.15s ease;&#xA;  }&#xA;  .link-item:hover {&#xA;    border-color: var(--accent);&#xA;    background: var(--accent-tint);&#xA;  }&#xA;  .link-item .link-title {&#xA;    font-size: 15px;&#xA;    font-weight: 600;&#xA;    color: var(--accent);&#xA;    margin-bottom: 3px;&#xA;  }&#xA;  .link-item .link-desc {&#xA;    font-size: 13.5px;&#xA;    color: var(--text-muted);&#xA;    line-height: 1.4;&#xA;  }&#xA;&#xA;  a.inline-link {&#xA;    color: var(--accent);&#xA;    font-weight: 600;&#xA;    text-decoration: none;&#xA;  }&#xA;  a.inline-link:hover {&#xA;    text-decoration: underline;&#xA;  }&#xA;</style>&#xA;</head>&#xA;<body>&#xA;&#xA;<div class=&#x22;wizard-wrap&#x22;>&#xA;  <div class=&#x22;wizard-card&#x22;>&#xA;    <button id=&#x22;resetBtn&#x22; class=&#x22;reset-btn&#x22; onclick=&#x22;goTo('q1')&#x22;>&#xA;      <svg viewBox=&#x22;0 0 24 24&#x22; fill=&#x22;none&#x22; stroke=&#x22;currentColor&#x22; stroke-width=&#x22;2&#x22; stroke-linecap=&#x22;round&#x22; stroke-linejoin=&#x22;round&#x22;>&#xA;        <polyline points=&#x22;1 4 1 10 7 10&#x22;></polyline>&#xA;        <path d=&#x22;M3.51 15a9 9 0 1 0 2.13-9.36L1 10&#x22;></path>&#xA;      </svg>&#xA;      Reiniciar&#xA;    </button>&#xA;    <div class=&#x22;progress&#x22; id=&#x22;progress&#x22;>&#xA;      <span></span><span></span><span></span>&#xA;    </div>&#xA;    <div id=&#x22;screen&#x22;></div>&#xA;  </div>&#xA;</div>&#xA;&#xA;<script>&#xA;  // ---- Modelo de datos del asistente ----&#xA;  var screens = {&#xA;    q1: {&#xA;      step: 1,&#xA;      question: &#x22;¿El reproductor tendrá acceso a Internet?&#x22;,&#xA;      options: [&#xA;        { label: &#x22;Sí&#x22;, next: &#x22;q2&#x22; },&#xA;        { label: &#x22;No&#x22;, next: &#x22;q3&#x22; }&#xA;      ]&#xA;    },&#xA;    q2: {&#xA;      step: 2,&#xA;      question: &#x22;Un CMS (Content Management System) administra el contenido que muestran los reproductores. Seleccione el CMS que prefiera.&#x22;,&#xA;      options: [&#xA;        { label: &#x22;BrightSign CMS (Author o Author Plus)&#x22;, next: &#x22;resultBrightSignCms&#x22; },&#xA;        { label: &#x22;CMS que no es de BrightSign&#x22;, next: &#x22;resultNonBrightSignCms&#x22; }&#xA;      ]&#xA;    },&#xA;    q3: {&#xA;      step: 2,&#xA;      question: &#x22;¿Se podrá acceder al reproductor a través de la red local?&#x22;,&#xA;      options: [&#xA;        { label: &#x22;Sí&#x22;, next: &#x22;resultLocalNetwork&#x22; },&#xA;        { label: &#x22;No&#x22;, next: &#x22;resultStandalone&#x22; }&#xA;      ]&#xA;    },&#xA;    resultBrightSignCms: {&#xA;      step: 3,&#xA;      type: &#x22;links&#x22;,&#xA;      heading: &#x22;El modo de publicación de este reproductor debe ser uno de los siguientes:&#x22;,&#xA;      links: [&#xA;        { text: &#x22;Author Plus&#x22;, href: &#x22;https://docs.brightsign.biz/publishing-mode#author-plus&#x22;, desc: &#x22;Se requiere suscripción; publique mediante la nube de BrightSign&#x22; },&#xA;        { text: &#x22;Red local&#x22;, href: &#x22;https://docs.brightsign.biz/publishing-mode#local-network&#x22;, desc: &#x22;Gratuito; publique a través de la red local&#x22; },&#xA;        { text: &#x22;Carpeta web&#x22;, href: &#x22;https://docs.brightsign.biz/publishing-mode#web-folder&#x22;, desc: &#x22;Gratuito; publique en una URL accesible para el reproductor&#x22; }&#xA;      ]&#xA;    },&#xA;    resultNonBrightSignCms: {&#xA;      step: 3,&#xA;      type: &#x22;links&#x22;,&#xA;      heading: &#x22;El modo de publicación de este reproductor debe ser uno de los siguientes:&#x22;,&#xA;      links: [&#xA;        { text: &#x22;CMS asociado&#x22;, href: &#x22;https://docs.brightsign.biz/publishing-mode#partner-cms&#x22;, desc: &#x22;Seleccione de una lista de socios CMS de BrightSign&#x22; },&#xA;        { text: &#x22;URL del CMS&#x22;, href: &#x22;https://docs.brightsign.biz/publishing-mode#cms-url&#x22;, desc: &#x22;Instale un paquete CMS desde una URL&#x22; }&#xA;      ]&#xA;    },&#xA;    resultLocalNetwork: {&#xA;      step: 3,&#xA;      type: &#x22;links&#x22;,&#xA;      heading: &#x22;El modo de publicación de este reproductor debe ser:&#x22;,&#xA;      links: [&#xA;        { text: &#x22;Red local&#x22;, href: &#x22;https://docs.brightsign.biz/publishing-mode#local-network&#x22;, desc: &#x22;Gratuito; publique a través de la red local&#x22; }&#xA;      ]&#xA;    },&#xA;    resultStandalone: {&#xA;      step: 3,&#xA;      type: &#x22;links&#x22;,&#xA;      heading: &#x22;El modo de publicación de este reproductor debe ser:&#x22;,&#xA;      links: [&#xA;        { text: &#x22;Independiente&#x22;, href: &#x22;https://docs.brightsign.biz/publishing-mode#standalone&#x22;, desc: &#x22;Gratuito; publique manualmente en el dispositivo de almacenamiento del reproductor&#x22; }&#xA;      ]&#xA;    }&#xA;  };&#xA;&#xA;  var screenEl = document.getElementById(&#x22;screen&#x22;);&#xA;  var resetBtn = document.getElementById(&#x22;resetBtn&#x22;);&#xA;  var progressEl = document.getElementById(&#x22;progress&#x22;);&#xA;&#xA;  function escapeHtml(str) {&#xA;    var div = document.createElement(&#x22;div&#x22;);&#xA;    div.textContent = str;&#xA;    return div.innerHTML;&#xA;  }&#xA;&#xA;  function renderProgress(step) {&#xA;    var dots = progressEl.children;&#xA;    for (var i = 0; i < dots.length; i++) {&#xA;      dots[i].classList.toggle(&#x22;active&#x22;, i < step);&#xA;    }&#xA;  }&#xA;&#xA;  function goTo(id) {&#xA;    var screen = screens[id];&#xA;    if (!screen) return;&#xA;&#xA;    resetBtn.classList.toggle(&#x22;visible&#x22;, id !== &#x22;q1&#x22;);&#xA;    renderProgress(screen.step);&#xA;&#xA;    var html = &#x22;&#x22;;&#xA;&#xA;    if (screen.question) {&#xA;      html += '<h2 class=&#x22;question&#x22;>' + escapeHtml(screen.question) + '</h2>';&#xA;      html += '<div class=&#x22;options&#x22;>';&#xA;      screen.options.forEach(function (opt) {&#xA;        html += '<button class=&#x22;option-btn&#x22; data-next=&#x22;' + opt.next + '&#x22;>' + escapeHtml(opt.label) + '</button>';&#xA;      });&#xA;      html += '</div>';&#xA;    } else if (screen.type === &#x22;links&#x22;) {&#xA;      html += '<p class=&#x22;result-heading&#x22;>' + escapeHtml(screen.heading) + '</p>';&#xA;      html += '<div class=&#x22;link-list&#x22;>';&#xA;      screen.links.forEach(function (link) {&#xA;        html += '<a class=&#x22;link-item&#x22; href=&#x22;' + link.href + '&#x22;>' +&#xA;          '<div class=&#x22;link-title&#x22;>' + escapeHtml(link.text) + '</div>' +&#xA;          '<div class=&#x22;link-desc&#x22;>' + escapeHtml(link.desc) + '</div>' +&#xA;          '</a>';&#xA;      });&#xA;      html += '</div>';&#xA;    } else if (screen.type === &#x22;suggestion&#x22;) {&#xA;      html += '<p class=&#x22;suggestion&#x22;>' + escapeHtml(screen.before) +&#xA;        '<a class=&#x22;inline-link&#x22; href=&#x22;' + screen.link.href + '&#x22;>' + escapeHtml(screen.link.text) + '</a>' +&#xA;        '</p>';&#xA;    }&#xA;&#xA;    screenEl.innerHTML = html;&#xA;&#xA;    var buttons = screenEl.querySelectorAll(&#x22;.option-btn&#x22;);&#xA;    buttons.forEach(function (btn) {&#xA;      btn.addEventListener(&#x22;click&#x22;, function () {&#xA;        goTo(btn.getAttribute(&#x22;data-next&#x22;));&#xA;      });&#xA;    });&#xA;  }&#xA;&#xA;  goTo(&#x22;q1&#x22;);&#xA;</script>&#xA;&#xA;</body>&#xA;</html>"}

:::

Al hacer clic en el modo de publicación en el selector anterior, accederá a la descripción correspondiente de ese modo de publicación a continuación.

# Independiente

<font color="#2166AE">`NO SE REQUIERE ACCESO A LA RED`</font> <font color="#6B21A8">`CMS: BRIGHTSIGN AUTHOR (GRATUITO)`</font>

::Image[]{src="https://api.archbee.com/api/optimize/0prk6SO2dy9LdU77jB8D1/fsRUShWisWSGlXSryQZCa_image.png" size="70" width="837" height="242" isUploading="false" darkWidth="837" darkHeight="242" showCaption="false"}

- El contenido se publica / copia manualmente en un dispositivo de almacenamiento (normalmente una tarjeta microSD).
- El dispositivo de almacenamiento se inserta manualmente en el reproductor.

# Red local

<font color="#2166AE">`SE REQUIERE ACCESO A LA RED LOCAL`</font> <font color="#6B21A8">`CMS: BRIGHTSIGN AUTHOR (GRATUITO)`</font>

::Image[]{src="https://api.archbee.com/api/optimize/0prk6SO2dy9LdU77jB8D1/x8OFpiqBvurL9qShusslk_image.png" size="70" width="872" height="310" isUploading="false" darkWidth="872" darkHeight="310" showCaption="false"}

- El contenido se publica en el reproductor a través de la red local.

# Author Plus

<font color="#2166AE">`SE REQUIERE ACCESO A INTERNET`</font> <font color="#6B21A8">`CMS: BRIGHTSIGN AUTHOR PLUS (DE PAGO)`</font>

::Image[]{src="https://api.archbee.com/api/optimize/0prk6SO2dy9LdU77jB8D1/DBy9YuiVnPGKrpxSqa-_u_image.png" size="70" width="930" height="676" isUploading="false" darkWidth="930" darkHeight="676" showCaption="false"}

- El contenido se almacena y publica en los reproductores desde la nube de BrightSign.
- Se requiere BrightSign Author Plus.

# Carpeta web

<font color="#2166AE">`SE REQUIERE ACCESO A INTERNET`</font> <font color="#6B21A8">`CMS: BRIGHTSIGN AUTHOR (GRATUITO)`</font>

::Image[]{src="https://api.archbee.com/api/optimize/0prk6SO2dy9LdU77jB8D1/YlJ_cb0UcBBYbMEB7Hwe4_image.png" size="70" width="878" height="680" isUploading="false" darkWidth="878" darkHeight="680" showCaption="false"}

- El contenido se publica en una URL accesible para el reproductor. El contenido se puede cargar en la URL mediante WebDAV o FTP.
- El reproductor descarga el contenido de la carpeta web.
- Los reproductores comprueban periódicamente la carpeta web en busca de actualizaciones de contenido y, cuando están disponibles, el contenido nuevo se descarga automáticamente en el reproductor.

# CMS de socios

<font color="#2166AE">`SE REQUIERE ACCESO A INTERNET`</font>
`CMS: PARTNER CMS (DE PAGO) A TRAVÉS DEL NAVEGADOR WEB`

::Image[]{src="https://api.archbee.com/api/optimize/0prk6SO2dy9LdU77jB8D1/E2Elu3Sz11uN9VlT-1SzB_image.png" size="70" width="918" height="673" isUploading="false" darkWidth="918" darkHeight="673" showCaption="false"}

BrightSign tiene muchos socios que proporcionan un CMS alternativo para los reproductores BrightSign. Puede seleccionar de una lista de CMS de socios para usarlo en la gestión de contenido.

# URL del CMS

<font color="#2166AE">`SE REQUIERE ACCESO A INTERNET`</font> <font color="#0C121D">`CMS: NON-PARTNER CMS (DE PAGO) A TRAVÉS DEL NAVEGADOR WEB`</font>

También puede usar un CMS no afiliado al programa Partner CMS de BrightSign.

::Image[]{src="https://api.archbee.com/api/optimize/0prk6SO2dy9LdU77jB8D1/fht5f3ODh7EcuKREJBITg_image.png" size="70" width="880" height="660" isUploading="false" darkWidth="880" darkHeight="660" showCaption="false"}

- Se coloca un archivo .zip que contiene el paquete de configuración para el CMS en una URL accesible para el reproductor.
- El reproductor descarga el paquete desde la URL y se configura para su uso con el CMS.



:::CtaButton{label="Siguiente: Configuración de red" docId="M_K1adTgGEI43PQx60ed4" openInNewTab="false"}

:::

