Saltar al contenido principal

Integración domótica Samsung SyncThru, gratuita y de código abierto

Integración Samsung SyncThru para Gladys Assistant

Tóner, tambores, bandejas y estado de las impresoras Samsung por SyncThru. Local, sin nube.

Presentación​

Esta integración sigue sus impresoras Samsung (Xpress, ProXpress, MultiXpress, CLP, CLX, SCX, ML… y los modelos HP de la antigua gama Samsung que conservaron la misma interfaz web) a través de su servicio web integrado SyncThru: el estado de la impresora, el nivel de cada tóner, las unidades de imagen (tambores), las bandejas de papel y el contador de páginas. Todo se queda en su red local: sin nube, sin cuenta, sin contraseña.

Es de solo lectura: no imprime nada, no cambia ningún ajuste de la impresora y no ofrece nada que encender o apagar.

Completa la integración IPP Printers, para los modelos Samsung cuyo servicio IPP no informa de los consumibles.

Desarrollada sin el hardware: sus comentarios son bienvenidos. La integración se escribió y se probó con respuestas reales de SyncThru publicadas por los proyectos pysyncthru y Home Assistant, no con una impresora. Si falta algo o un valor es incorrecto en la suya, abra una issue en el repositorio de GitHub con el resultado del botón Probar una impresora.

Sin relación con Samsung ni con HP.

Requisitos​

  • Gladys Assistant 5.1 o posterior.
  • Una impresora Samsung conectada a su red (Ethernet o Wi-Fi), cuya página SyncThru se abre en un navegador en http://<dirección de la impresora>/. La integración lee http://<dirección de la impresora>/sws/app/information/home/home.json: si esta dirección muestra una página de texto en su navegador, la impresora es compatible.
  • Mejor: una dirección fija para la impresora (una reserva DHCP en su router). La integración busca una impresora que cambió de dirección, pero una dirección fija es más fiable.

Configuración​

  1. Instale la integración desde la tienda (o Integraciones → Instalar desde GitHub con la dirección del repositorio).
  2. Abra su pestaña Configuración:
    • Impresoras (lista manual): opcional. Las direcciones IP o nombres de host de sus impresoras, separados por comas (192.168.1.20, impresora.local). También sirve una dirección http:// o https:// con puerto. Rellénela cuando la impresora no se encuentra automáticamente.
    • Idioma de los nombres: el idioma de los nombres de las funciones (fijados al añadir la impresora) y de los textos enviados a Gladys (estado, variables de escena). Francés por defecto.
    • Intervalo de lectura: la frecuencia de lectura de cada impresora, 60 segundos por defecto (30 a 3600).
    • Umbral de consumible bajo: el nivel, en %, al que se activa Consumible casi agotado (10 % por defecto). También colorea los indicadores del widget.
  3. Guarde, abra la pestaña Descubrir y añada sus impresoras a Gladys.

Las impresoras que responden a la búsqueda de red (SSDP, como las encuentra Windows) aparecen en la pestaña Descubrir sin escribir nada: Gladys envía la búsqueda y pasa las respuestas a la integración, que solo conserva las que realmente ofrecen SyncThru.

Uso de la red: una pequeña solicitud por impresora en cada intervalo de lectura, los contadores de páginas cada 15 minutos, y una búsqueda de red al iniciar, al abrir la pestaña Descubrir y como mucho cada 30 minutos mientras una impresora no responde. Solo los valores que cambian se envían a Gladys, y los estables de nuevo cada 6 horas.

Dispositivos​

Un dispositivo por impresora, con el nombre de su modelo y su ubicación (Samsung C430W (Salón)). Sus funciones dependen de lo que indica la impresora:

FunciónTipoValor
EstadotextoLista, Imprimiendo, En reposo, Calentando, Ocupada, Tóner bajo, Advertencia, Atasco de papel, Sin papel, Error, Inaccesible
En líneasensor de presencia (sí/no)1 cuando la impresora responde, 0 si no
Tóner negro / cian / magenta / amarillonivel (%)el tóner restante de cada cartucho
Tambor negro / …, Tambor de colornivel (%)la vida restante de la unidad de imagen, cuando la impresora la indica
Bandeja 1 … 5, Bandeja multiuso, Alimentación manualtextoLista, Vacía, o Alerta con el código de la impresora
Papel bandejanivel (%)solo en los modelos que indican un nivel de papel
Páginas impresas, Páginas copiadascontadorlos contadores de páginas, en los modelos que los ofrecen

Cuando la impresora no responde, Estado pasa a Inaccesible y En línea a 0; los demás valores conservan su última lectura.

El Estado procede del estado que indica la impresora y del texto de su panel de control, en inglés, francés, alemán o español: un atasco o una bandeja vacía se reconocen en el panel («Paper Jam», «Bourrage», «Papierstau», «Atasco»…) y por los códigos de error de Samsung (M1-1110, M1-5112).

Widget​

El widget Impresora muestra una impresora (la primera añadida si no se elige ninguna en sus ajustes):

  • hasta cinco indicadores, primero los tóneres y luego los tambores, coloreados según el umbral;
  • el estado, el texto del panel, las bandejas, el contador de páginas y la hora de la última lectura;
  • un botón Actualizar que lee la impresora en el acto.

Disparadores de escena​

Dos disparadores, en la categoría Integraciones del editor de escenas:

  • Consumible casi agotado: un tóner o un tambor baja al umbral de la configuración. Filtro por impresora y por tipo de consumible (tóner, tambor). Transmite el nombre de la impresora, el consumible (Tóner negro) y su nivel.
  • Atasco o sin papel: una impresora indica un atasco de papel o se ha quedado sin papel. Filtro por impresora y por problema. Transmite el nombre de la impresora, el problema en palabras y el texto del panel.

Cada uno se activa una vez, cuando empieza la situación. No se vuelve a activar tras un reinicio de la integración o de Gladys para una situación ya presente.

Los niveles también son funciones normales de Gladys: el disparador del núcleo Cambio de estado del dispositivo funciona con ellos, para un cartucho.

Acción de configuración​

Probar una impresora, en la pestaña Configuración: introduzca una dirección, la integración lee la impresora en el acto y le indica lo que encontró (modelo, estado, niveles), o por qué no obtuvo respuesta.

Ejemplos de escenas​

  • Pedir tóner a tiempo: disparador Consumible casi agotado (tipo: tóner) → acción Enviar mensaje con las variables Impresora, Consumible y Nivel (%) (escriba {{ en el mensaje para insertarlas): «Impresora de la oficina: Tóner negro al 10 %».
  • La impresora está bloqueada: disparador Atasco o sin papel → acción Enviar mensaje con el problema y el texto del panel, a la persona más cercana.
  • Impresora olvidada encendida: disparador Cambio de estado del dispositivo en En línea a 1, condición después de las 22 h → un recordatorio, o apagar el enchufe inteligente de la impresora.

Solución de problemas​

  • Ninguna impresora en la pestaña Descubrir: introduzca su dirección en la lista manual y luego use Probar una impresora. «No hay servicio JSON SyncThru» significa que la impresora no tiene página JSON de SyncThru: los modelos antiguos solo tienen páginas HTML, no compatibles.
  • «Sin respuesta»: compruebe la dirección, que la impresora está encendida y no en reposo profundo, y que está en la misma red que Gladys. Algunas impresoras apagan su red en reposo profundo.
  • Una impresora con el número de serie oculto (algunos firmwares muestran xxxxxxxx) se reconoce por su dirección MAC, o por su dirección: asígnele una dirección fija.
  • Más detalles: ponga la variable de entorno LOG_LEVEL de la integración en debug.

Limitaciones​

  • Desarrollada sin el hardware: los valores se comprobaron con respuestas publicadas de las M2070, C430W y C480FW, no con una impresora real. Los modelos HP no están comprobados.
  • El formato de papel de las bandejas no se muestra: SyncThru da un código numérico cuyo significado no está documentado.
  • El nivel de papel de una bandeja solo se lee en los modelos que lo indican, y se supone en %.
  • La detección del atasco y de la bandeja vacía se basa en el texto del panel y en los códigos de error de Samsung: un panel configurado en otro idioma distinto de los cuatro anteriores puede mostrar solo Advertencia o Error.
  • Las impresoras que solo tienen las antiguas páginas HTML de SyncThru (sin home.json) no son compatibles.
  • Solo lectura: sin impresión, sin ajustes, sin reinicio a distancia.
  • Los nombres de las funciones se fijan al añadir la impresora: cambiar el idioma después cambia los textos de estado, no los nombres.

Parámetros de configuración​

Estos son los parámetros que Samsung SyncThru te pide en su pantalla de configuración en Gladys.

ParámetroTipoObligatorioDescripción
FuncionamientosectionNoLas impresoras Samsung (y los modelos HP de la antigua gama Samsung) que responden por SSDP en su red aparecen en la pestaña Descubrir. Las que no se anuncian pueden indicarse a continuación. La integración solo lee la página web SyncThru de la impresora: no imprime nada, no cambia ningún ajuste y no necesita contraseña.
Impresoras (lista manual)stringNoOpcional. Direcciones IP o nombres de host de las impresoras, separados por comas. También sirve una URL http:// o https://, con puerto si hace falta.
Idioma de los nombresselectNoIdioma de los nombres de las funciones (fijados al añadir una impresora) y de los textos que envía la integración: estados, variables de escena.
Intervalo de lectura (s)numberNoFrecuencia de lectura de cada impresora, en segundos (30 a 3600). Una pequeña solicitud cada vez; solo los cambios se envían a Gladys.
Umbral de consumible bajo (%)numberNoEl disparador de escena «Consumible casi agotado» se activa cuando un tóner o un tambor baja a este nivel. También colorea los indicadores del widget.

Cómo instalar Samsung SyncThru en Gladys​

  1. En Gladys, abre Integraciones: Samsung SyncThru aparece en el catálogo junto a las integraciones nativas, con una insignia de comunidad.
  2. Haz clic en Instalar. Gladys descarga la imagen Docker (ghcr.io/guim31/gladys-syncthru:1.0.1), la ejecuta en un entorno aislado del núcleo y genera la interfaz de la integración (dispositivos, descubrimiento y configuración).
  3. Abre la pantalla de Configuración de la integración, rellena los parámetros y guarda.
  4. También puedes instalarla directamente desde la URL de su repositorio: https://github.com/guim31/gladys-syncthru.

Samsung SyncThru requiere Gladys >=5.1.0. El catálogo de Gladys se actualiza cada hora, así que una nueva versión está disponible como máximo una hora después de publicarse.

¿Todavía no usas Gladys? Es gratuito y de código abierto: sigue la guía de instalación para empezar.

Sobre las integraciones externas​

Samsung SyncThru es una integración externa: una integración comunitaria empaquetada como contenedor Docker y publicada en GitHub. Gladys la instala con un clic y la ejecuta en un entorno aislado del núcleo. La publica y mantiene guim31, no el equipo principal de Gladys.

Suscríbete a la newsletter de Gladys Assistant

Unos pocos correos al mes sobre nuevas versiones y novedades del proyecto. Enviados por Pierre-Gilles Leymarie, fundador del proyecto. Puedes darte de baja cuando quieras 🙂