Integración externa - Cámaras MJPEG e imágenes fijas (ESP32-CAM, cámaras IP, webcams)

¡Hola a todos!

Gladys ya sabe mostrar las cámaras RTSP. Esta se encarga de todas las que solo hablan HTTP:

  • las ESP32-CAM a unos pocos euros;
  • las antiguas cámaras IP;
  • las webcams servidas por motion, motionEye o mjpg-streamer;
  • un viejo teléfono Android con la aplicación « IP Webcam ».

Todo sin ffmpeg y sin cloud.

Qué hace

  • Un dispositivo de cámara por dirección: una URL de imagen fija (/capture, snapshot.cgi…) o un flujo MJPEG. La integración toma la primera imagen del flujo y luego cierra la conexión.
  • Una imagen cada 10 segundos en el widget de la cámara (ajustable, o solo bajo demanda), más una imagen fresca cada vez que Gladys lo solicite. Se usa para la vista en vivo y la acción « enviar una imagen de la cámara ».
  • Las contraseñas: autenticación Basic y Digest, siendo esta última la de la mayoría de las cámaras IP. La contraseña puede ir en un campo oculto.
  • Las imágenes grandes reducidas automáticamente, para caber en el límite de 150 KB de Gladys.
  • Dos disparadores de escena: cámara fuera de línea (después de 3 capturas fallidas), cámara de nuevo en línea.
  • Un botón « Probar las cámaras »: el tipo, la resolución, el tamaño y el tiempo de cada captura, o el error.

Lo bueno

  • Un ESP32-CAM en el garaje o el gallinero, y su imagen en el tablero de control, sin instalar nada más.
  • Una vieja cámara IP sin RTSP vuelve a funcionar.
  • Cámara fuera de línea → un mensaje, antes de descubrir que no filmaba desde hace una semana.

Instalación

Gladys 5.1 mínimo. Llega a la tienda en el próximo paso del indexador. ¿Tienes prisa? Integraciones → Instalar desde GitHub, con la dirección GitHub - LM1LC3N7/gladys-mjpeg-camera: Gladys Assistant external integration for MJPEG and snapshot IP cameras (ESP32-CAM, older IP cameras, webcams): camera images in Gladys without RTSP, on the local network. · GitHub

  1. Ingresa las direcciones de tus cámaras, separadas por comas, cada una seguida de un nombre si lo deseas: http://192.168.1.50/capture Gallinero, http://192.168.1.20/cgi-bin/snapshot.cgi|Entrada La documentación da las direcciones comunes: ESP32-CAM, motionEye, Hikvision, Axis…
  2. Haz clic en Probar las cámaras, luego añádelas en Descubrimiento.

Pequeñas reservas honestas

  • Escrito sin una cámara a mano. El formato MJPEG y la autenticación Digest siguen las normas, y han sido probados contra una cámara falsa (Digest verificado en los ejemplos oficiales de la norma). Tus comentarios, modelo por modelo, son bienvenidos.
  • Un ESP32-CAM solo sirve su flujo a un cliente a la vez: prefiere su dirección /capture a :81/stream.
  • Reducir una imagen grande requiere cálculo. Una cámara que lo necesita se lee como máximo cada 30 segundos, y reducir su resolución sigue siendo la mejor opción.
  • Para una cámara RTSP, mantén la integración RTSP de Gladys.

Como las anteriores, desarrollada con Claude Code. Proyecto independiente, sin vínculo con ningún fabricante de cámaras.

Depósito: GitHub - LM1LC3N7/gladys-mjpeg-camera: Gladys Assistant external integration for MJPEG and snapshot IP cameras (ESP32-CAM, older IP cameras, webcams): camera images in Gladys without RTSP, on the local network. · GitHub