¡Integración de Frigate!

Hola a todos,

Acabo de crear la integración Frigate

Ahora tus cámaras Frigate se convierten en dispositivos Gladys, con sus sensores, sus interruptores y desencadenadores de escena. Se necesita Gladys 5.1.0 mínimo y Frigate 0.16, 0.17 o 0.18.

En detalle :

Las cámaras en Gladys (pestaña Descubrimiento → Escanear → Añadir a Gladys) :

  • La imagen de cada cámara, actualizada cada minuto y tomada en el momento cuando Gladys lo solicita (chat, escenas). Es Frigate quien la redimensiona para que ocupe menos de los 150 Ko aceptados por Gladys.
  • Los interruptores de Frigate : cámara activada, detección de objetos, instantáneas y grabaciones / detección de audio si están activados en tu configuración Frigate. Un interruptor solo se muestra como cambiado una vez que Frigate lo ha confirmado.
  • Sensores : movimiento, presencia y número para cada objeto seguido (persona, coche, perro…), total de objetos, estado de revisión (nada / detección / alerta). Opcionalmente, un sensor de presencia por zona y por objeto.
  • Solo se crea lo que tu configuración Frigate activa : no hay interruptor de grabación si la grabación está desactivada en el archivo, por ejemplo.

Desencadenadores y una acción de escena (busca « Frigate : » en el editor) :

  • Desencadenadores : « nueva revisión » (alerta o detección, filtrable por severidad, objeto y zona), « objeto detectado » y « objeto entra en una zona ». Una sola vez por incidente, nunca una ráfaga en cada imagen : los falsos positivos y los objetos inmóviles (el coche aparcado) se ignoran, con una confianza mínima y un retraso ajustables en la configuración.
  • Acción « unir la imagen del evento » : la instantánea que Frigate ha guardado, con o sin el marco de detección, se convierte en la imagen de la cámara. Ejemplo : « nueva revisión », severidad Alerta, objeto person, luego esta acción con {{triggerEvent.data.event_id}}, luego « Enviar una imagen de cámara ». Y tienes la foto de la persona frente a la puerta en tu teléfono.
  • En una alerta, la integración también publica una imagen fresca antes de desencadenar. Un simple « Enviar una imagen de cámara » justo después envía la alerta, y no la imagen de hace un minuto.

El tiempo real pasa por el broker MQTT en el que Frigate publica (recomendado). Sin broker, la integración utiliza el WebSocket de Frigate, pero los interruptores requieren entonces una cuenta Frigate admin : desde la 0.17, Frigate rechaza los comandos de otros roles en el WebSocket.

Por el lado menos visible :

  • Seguridad :
    • Previsto para el puerto autenticado 8971, con una cuenta Frigate dedicada en el rol viewer.
    • El certificado auto-firmado de Frigate se aprueba en la primera conexión y luego se fija : si cambia, la conexión se rechaza hasta que hagas clic en « Confiar en el nuevo certificado ». Lo mismo para el broker en TLS.
    • La contraseña y el token nunca se envían a un servidor no aprobado, y nunca aparecen en los registros.
  • El badge de cada cámara en la lista de dispositivos se pone en inalcanzable si Frigate no responde o si el flujo de la cámara se pierde durante 30 s. Se pone en degradado si la grabación se interrumpe o si el flujo en tiempo real se corta.
  • El estado de conexión en la parte superior de la configuración dice claramente lo que no va bien, y « Probar la conexión » verifica todo (Frigate, certificado, cuenta, broker).
  • La reconexión es automática (Frigate, broker, WebSocket). Cuando Frigate se reinicia, su configuración se relee : una cámara añadida aparece en el Descubrimiento.
  • El respeto de los límites de Gladys (estados, imágenes, eventos por minuto), para no inundar la base ni las escenas.
  • Una imagen Docker más ligera de unos 57 Mo, y una prueba de extremo a extremo que lanza la integración completa contra un falso Gladys antes de cada lanzamiento.

Para el video en directo, no pasa por la integración : usa el servicio Cámara RTSP de Gladys apuntando al restream de Frigate, rtsp://<ip-frigate>:8554/<nombre_cámara>.

La documentación completa (inicio rápido, ACL del broker, solución de problemas) está accesible a través del enlace Documentación de la página de la integración.

Es todo fresco : la conexión a Frigate se ha probado en una instalación real, pero no los sensores, los interruptores y las escenas. Tus comentarios son por lo tanto bienvenidos, especialmente en Frigate 0.16 y 0.18, sin broker MQTT y con varias zonas. No dudes en publicar el estado de conexión y los registros de la integración si algo falla.

¡Buena vigilancia !

¡Voy a probar esto en cuanto tenga un poco de tiempo porque me interesa mucho! :slight_smile:

Mi configuración actual es un raspberry pi3 que hace de cámara y transmite a Gladys y Frigate.

Dime qué opinas :blush:

Te lo digo bastante rápido.

Por mi parte, son 3 cámaras REOLINK (una de ellas fuera de servicio actualmente ^^) en un Beelink S12 PRO con un Google Coral USB.

Hola @lmilcent

¡Vaya, esto es justo lo que necesitaba (actualmente uso MotionEyes, con invocación de URL a través de una API casera, en fin, un buen apaño…).

¿Cuál es la carga que implica esta integración en términos de CPU/RAM y red para una configuración determinada? Mi necesidad es poder gestionar al menos 4 cámaras (2 nidos y 2 lugares vigilados).

Gracias,

¡Que tengas un buen final de día,

Jean

Hola @guim31

Me interesa tu configuración basada en Coral, ya que la máquina que soporta mi tratamiento de vídeo actual es pobre en cuanto a CPU y va muy lenta en cuanto trato un poco de flujo mediante IA… ¿Podrías compartir tu experiencia al respecto?

Gracias,

¡Que tengas un buen final de día!

Jean