La publicación multiplataforma parece sencilla hasta que queda claro que cada plataforma funciona a su manera. YouTube puede devolver un error del servidor durante varios minutos, Telegram puede limitar temporalmente el bot y VK puede solicitar que se vuelva a autorizar el token del administrador de la comunidad justo en el momento en que el vídeo debía publicarse en tres canales a la vez. La cuestión no es si ocurrirá un fallo, sino qué hará el sistema cuando finalmente ocurra.
El enfoque más ingenuo para la publicación automática consiste en considerarla una operación atómica: el contenido se publica en todas partes de inmediato o no se publica en ninguna, y si se produce un fallo parcial, hay que rehacerlo todo manualmente. En la práctica, este es el escenario más incómodo: el vídeo ya se ha publicado en YouTube con el título y la portada correctos, mientras que la publicación en Telegram y VK ha quedado pendiente debido a la indisponibilidad temporal de la plataforma. Ahora hay que comprobar manualmente qué se publicó y qué no para evitar duplicaciones.
En Telematic, decidimos deliberadamente implementar una lógica que considera el fallo parcial de una publicación no como una excepción, sino como un escenario habitual y previsto, y lo gestiona automáticamente.
Qué es una publicación parcial
Cuando el contenido se publica simultáneamente en varias plataformas, el sistema trata cada plataforma como un intento independiente dentro de una misma publicación, no como un único paso atómico. Si, por ejemplo, YouTube y Telegram aceptan el contenido, pero VK devuelve un error en ese momento, la publicación no se considera ni completamente exitosa ni completamente fallida. Recibe el estado publicada parcialmente: una parte de los canales ya está publicada y otra queda a la espera.
Esta es una diferencia fundamental frente al enfoque de «todo o nada». Evita tener que revertir las publicaciones que ya se realizaron correctamente solo porque una plataforma falló y, al mismo tiempo, impide que el sistema considere silenciosamente que el contenido está «publicado» cuando, en realidad, solo se ha publicado en algunos canales.
Finalización automática en los canales restantes
Una vez que la publicación se marca como parcial, el sistema no deja el problema en manos del usuario. Reintenta automáticamente la publicación en las plataformas que no funcionaron a la primera, sin que nadie tenga que abrir manualmente la ficha del contenido, comprobar qué no se publicó y pulsar «publicar» de nuevo solo para los canales necesarios.
Esto es especialmente importante en el caso de fallos temporales: límites de frecuencia impuestos por la plataforma, una breve indisponibilidad de la API o un token caducado que está a punto de renovarse. En la mayoría de estos casos, el reintento después de un tiempo se completa correctamente sin ninguna intervención: el sistema termina de procesar por sí solo los canales restantes y el contenido va avanzando hasta alcanzar el estado de publicación completa.
Republicación periódica y programada para todo el proyecto
Existe un nivel adicional de protección: no se trata solo de completar una publicación concreta, sino de realizar comprobaciones periódicas a nivel de todo el proyecto. Según el calendario, el sistema revisa las publicaciones que llevan más tiempo del esperado en estado parcial e intenta completar los canales restantes. Es una medida de respaldo para fallos más prolongados; por ejemplo, si una plataforma no estuvo disponible durante varias horas, en lugar de solo cinco minutos, y el reintento automático habitual aún no tuvo ocasión de ejecutarse en el primer ciclo.
Para esta republicación es importante que el proyecto tenga un calendario de publicaciones activo. Ese calendario establece el ritmo con el que el sistema vuelve a las publicaciones incompletas y comprueba su estado. Sin un calendario, las publicaciones parciales seguirán siendo visibles en la interfaz, pero la finalización automática periódica estará limitada.
Nuestra experiencia: el día en que se desconectó uno de nuestros propios canales
Un día, uno de nuestros propios canales dejó de estar disponible durante varias horas: la plataforma estaba realizando trabajos técnicos programados por su parte, algo que solo descubrimos al ver los errores que devolvía. Durante ese tiempo, el piloto automático procesó varias publicaciones que debían salir simultáneamente en varias plataformas.
Si el sistema funcionara según el principio de «todo o nada», habría sido necesario reconstruir manualmente cada una de esas publicaciones y volver a enviarla a todos los canales, con el riesgo de duplicar el contenido allí donde ya se había publicado correctamente. En lugar de eso, simplemente vimos en la interfaz varias publicaciones con el estado «publicada parcialmente»: el contenido apareció a tiempo en las plataformas operativas, mientras que en el canal no disponible quedó honestamente a la espera.
Cuando la plataforma se recuperó varias horas después, la republicación periódica programada retomó automáticamente las publicaciones restantes sin ninguna intervención manual por nuestra parte. Al día siguiente, solo tuvimos que abrir el calendario para comprobar que todo se había completado por sí solo. Este es precisamente el tipo de situación en la que la fiabilidad operativa funciona de manera invisible: el problema existió, pero no nos generó trabajo.
Qué significa esto en la práctica
Si ves en el proyecto una publicación con el estado «publicada parcialmente», no es motivo para apresurarse a revisarla manualmente y duplicar la publicación en los canales que faltan. Es muy probable que el sistema ya haya puesto el reintento en cola y resuelva el problema por sí solo en el ciclo más cercano. La intervención manual solo tiene sentido cuando el estado parcial se mantiene durante un tiempo inusualmente largo. Esto indica que el problema en la plataforma es más grave que un fallo temporal habitual y requiere atención específica; por ejemplo, una autorización realmente caducada que deba actualizarse manualmente.
También conviene comprobar que el proyecto tenga configurado un calendario de publicaciones activo. Este no solo determina cuándo se publica el contenido nuevo, sino que también establece el ritmo con el que el sistema vuelve a las publicaciones incompletas. Un proyecto sin un calendario activo pierde parte de la protección automática frente a las interrupciones prolongadas de las plataformas.
En última instancia, la idea de la publicación parcial y de la finalización automática es sencilla: el fallo de una plataforma no debe convertirse en un problema para toda la publicación y, mucho menos, en trabajo manual para una persona que solo quería que el vídeo apareciera en todos los canales previstos.
