# Intégration externe- netatmo problème caméra

**URL:** <https://community.gladysassistant.com/t/integration-externe-netatmo-probleme-camera/10491>\
**Category:** Configuration\
**Created:** [Août 8, 2026, 10:13 UTC](https://community.gladysassistant.com/t/integration-externe-netatmo-probleme-camera/10491 "2026-08-08T10:13:09Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![spenceur](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/spenceur/32/1961_2.png) [@spenceur](https://community.gladysassistant.com/u/spenceur)\
**Post date:** [Août 8, 2026, 10:13 UTC](https://community.gladysassistant.com/t/integration-externe-netatmo-probleme-camera/10491/1 "2026-08-08T10:13:09Z")

</div>

Bonjour a tous !

@Terdious

Jai un soucis avec ma caméra netatmo qui ne s’affiche pas. Mais si je recup l’URL local via CAMERA\_URL pas de soucis (je lajoute dans lintegration Camera par exemple)

 ![23782](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/4/1/414540b33c9abe487a55ecf918bc5e50e5741463.jpeg)

Voici le log en boucle sur ça :

> [2026-08-08T10:08:54.221Z] [WARN] [netatmo-camera] Camera snapshot still exceeds the 96 KB budget after re-encoding — skipping this frame
> 
> [2026-08-08T10:10:54.964Z] [WARN] [netatmo-camera] Camera snapshot still exceeds the 96 KB budget after re-encoding — skipping this frame

---

<div class="post-metadata">

**Author:** ![Terdious](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/terdious/32/6316_2.png) [@Terdious](https://community.gladysassistant.com/u/Terdious)\
**Post date:** [Août 8, 2026, 11:47 UTC](https://community.gladysassistant.com/t/integration-externe-netatmo-probleme-camera/10491/2 "2026-08-08T11:47:36Z")

</div>

Salut @spenceur !!

Desolé une ancienne limite mise en place car avant le core ne les acceptait pas. Image trop lourde.

Le core a ete corrigé mais pas mis à jour coté integration externe chez moi.

Claude s’en occupe 😉

 ![27485](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/f/1/f1f5f48b782cf8801111331573bbcc32f100424d.jpeg)

Je te tiens au jus

---

<div class="post-metadata">

**Author:** ![Terdious](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/terdious/32/6316_2.png) [@Terdious](https://community.gladysassistant.com/u/Terdious)\
**Post date:** [Août 8, 2026, 11:51 UTC](https://community.gladysassistant.com/t/integration-externe-netatmo-probleme-camera/10491/3 "2026-08-08T11:51:56Z")

</div>

Merci pour le signalement, c’est corrigé en 1.1.2 🎉  
**Ce qui se passait** : l’intégration bridait les images caméra à 96 KB — un contournement d’une ancienne limite du core (le host API était derrière un parser JSON à 100 KB, qui renvoyait une erreur 413). Vos snapshots dépassaient ce seuil même après ré-encodage, donc chaque image était ignorée → aucune image sur le tableau de bord. Le live, lui, fonctionnait car il ne passe pas par ce chemin (d’où votre contournement avec CAMERA\_URL qui marche).  
**Ce qui change en 1.1.2** :

- le core parse désormais le host API avec une limite dédiée de 20 MB → retour au vrai budget de 150 KB ;
- si un snapshot reste trop lourd même à la qualité minimale, il est maintenant redimensionné automatiquement au lieu d’être abandonné — une image plus petite vaut mieux que pas d’image.  
Disponible d’ici 1h normalement, mettez à jour l’intégration (Supervision → Forcer la mise à jour) et l’image devrait apparaître. Si ça persiste, envoyez-moi les logs netatmo-camera après mise à jour.

---

<div class="post-metadata">

**Author:** ![Terdious](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/terdious/32/6316_2.png) [@Terdious](https://community.gladysassistant.com/u/Terdious)\
**Post date:** [Août 8, 2026, 4:28 UTC](https://community.gladysassistant.com/t/integration-externe-netatmo-probleme-camera/10491/4 "2026-08-08T16:28:48Z")

</div>

Bonne nouvelle : les **déclencheurs sont arrivés**! 🎉 C’est disponible en **1.2.0**.

## Nouvelles fonctionnalités (utilisables en déclencheur de scène)

| Appareil | Fonctionnalités |
| --- | --- |
| Caméra intérieure et extérieure | **Mouvement** , **Personne détectée** |
| Caméra extérieure (Presence) | + **Animal détecté** , **Véhicule détecté** |
| Détecteur de fumée | **Fumée** |

Ces détections sont **ponctuelles** : elles n’existent que dans le flux d’événements Netatmo, aucune interrogation de l’API ne peut les remonter — c’est justement pour ça qu’elles ont besoin des webhooks.

## Comment ça marche

Chaque détection passe à **Oui** , puis revient automatiquement à **Non** au bout d’une minute (Netatmo n’envoie jamais d’événement de « fin de détection »). Dans une scène, utilise donc le déclencheur **« la valeur passe à Oui »**.

## ⚠ Une manipulation nécessaire

Si tes caméras existaient **déjà** dans Gladys, ces nouvelles fonctionnalités n’apparaissent pas toutes seules :

1. Mets à jour l’intégration ( **Supervision → Forcer la mise à jour** )
2. Va sur l’écran **Découverte**
3. Clique sur **Mettre à jour** sur chaque caméra (et sur le détecteur de fumée)

Il faut évidemment que les webhooks soient configurés (clé Open API Gladys Plus collée dans la Configuration) pour que les détections remontent.

## Si une détection ne remonte pas

Passe les journaux de l’intégration en niveau **debug** et envoie-moi ce que tu vois au moment d’une détection. Une détection reconnue produit une ligne du type `Netatmo event: movement on ext:netatmo:...`. Si Netatmo utilise un nom d’événement que je n’ai pas prévu, ça se corrige en une minute.

---

<div class="post-metadata">

**Author:** ![spenceur](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/spenceur/32/1961_2.png) [@spenceur](https://community.gladysassistant.com/u/spenceur)\
**Post date:** [Août 8, 2026, 4:48 UTC](https://community.gladysassistant.com/t/integration-externe-netatmo-probleme-camera/10491/5 "2026-08-08T16:48:05Z")

</div>

Génial jai mis a jour mon device mais jai un rectangle chelou. Normal ^^ ?

 ![23811](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/6/e/6e37031e062afc59e7c865cb72a0847718128385.jpeg)

---

<div class="post-metadata">

**Author:** ![mutmut](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/mutmut/32/14064_2.png) [@mutmut](https://community.gladysassistant.com/u/mutmut)\
**Post date:** [Août 8, 2026, 5:57 UTC](https://community.gladysassistant.com/t/integration-externe-netatmo-probleme-camera/10491/6 "2026-08-08T17:57:49Z")

</div>

> [@spenceur](#):
>
> rectangle chelou. Normal ^^ ?

c’est sûrement des lunettes Meta-tmo 😂

---

<div class="post-metadata">

**Author:** ![Will\_71](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/will_71/32/9582_2.png) [@Will\_71](https://community.gladysassistant.com/u/Will_71)\
**Post date:** [Août 8, 2026, 6:25 UTC](https://community.gladysassistant.com/t/integration-externe-netatmo-probleme-camera/10491/7 "2026-08-08T18:25:26Z")

</div>

c’est juste que la fonctionnalités ajouté par Netatmo n’est pas reconnu par Gladys.

---

<div class="post-metadata">

**Author:** ![spenceur](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/spenceur/32/1961_2.png) [@spenceur](https://community.gladysassistant.com/u/spenceur)\
**Post date:** [Août 8, 2026, 8:18 UTC](https://community.gladysassistant.com/t/integration-externe-netatmo-probleme-camera/10491/8 "2026-08-08T20:18:19Z")

</div>

Petite question concernant l’action

«&nbsp;Envoyer une image de caméra&nbsp;»

Est ce qu’elle envoie le dernier snapshot ? Ou elle en fait un et envoie ?

Jai l’impression que cest la première reponse et donc jai pas l’image a l’instant t.

Je me dis ceux qui on gladys plus qui utilise les webhook pour faire des actions tout en envoyant une image. Si l’image est trop ancienne cest dommage ☹

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [Août 10, 2026, 5:59 UTC](https://community.gladysassistant.com/t/integration-externe-netatmo-probleme-camera/10491/9 "2026-08-10T17:59:11Z")

</div>

Je te réponds mais pour la suite @Terdious te donnera plus de précision sur l’intégration Netatmo à son retour de congé.

Pas normal, mais rassure-toi : **ça vient de Gladys lui-même, pas de ton install ni de l’intégration** , et c’est purement cosmétique 🙂

## L’étiquette vide

C’est la fonctionnalité **« Person detected »**. L’intégration la déclare dans la catégorie _détecteur de présence_, avec une valeur binaire Oui/Non — ce qui est le choix logique.

Sauf que jusqu’ici, dans Gladys, un « détecteur de présence » ne pouvait vouloir dire qu’une seule chose : ton téléphone vu sur le réseau ou en Bluetooth — un signe de vie, pas un Oui/Non. Ce couple catégorie + type n’avait donc **ni libellé traduit ni icône** côté Gladys, d’où l’étiquette grise vide. @Will_71 avait vu juste 👌

Rien de cassé pour autant : la détection remonte bien et le déclencheur fonctionne.

## Corrigé dans le core

La PR est ouverte, ça arrivera dans une prochaine version de Gladys :

- l’étiquette s’appelle maintenant **« Détection présence Oui/Non »** et récupère son icône ;
- sur le tableau de bord, elle affiche un badge **Présence détectée / Pas de présence** , au lieu d’une date « vu il y a X minutes » qui n’a aucun sens pour une caméra ;
- dans l’éditeur de scène, ce déclencheur affichait en fait **deux sélecteurs l’un à côté de l’autre** (le Oui/Non + un bouton grisé « Appareil détecté ») : il n’en reste que le Oui/Non normal, et tu pourras aussi déclencher sur le retour à **Non**.

Aucune manipulation à prévoir de ton côté : les fonctionnalités déjà créées s’afficheront correctement après la mise à jour.

La PR :

> <https://github.com/GladysAssistant/Gladys/pull/2839>
>
> \### Description
> 
> A device feature declared as \`presence-sensor\` + \`binary\` was a…n orphan pair in the front-end. The database accepts it — \`category\` and \`type\` are two independent Sequelize enums, with no table of valid combinations — but nothing in the UI knew how to display it, so it rendered as an empty grey tag: no label, no icon.
> 
> It showed up on the forum with the community Netatmo integration, whose person-detection feature uses exactly that pair (\[\`features.js\`\](https://github.com/Terdious/gladys-netatmo/blob/master/src/netatmo/features.js): \`buildFeatureHuman\` → \`PRESENCE\_SENSOR\` + \`SENSOR.BINARY\`), next to the motion features which display fine:
> 
> \[empty tag\](https://gladys-assistant-community.b-cdn.net/uploads/default/optimized/3X/6/e/6e37031e062afc59e7c865cb72a0847718128385\_2\_688x500.jpeg)
> 
> Until now \`presence-sensor\` only ever meant the heartbeat a phone sends over LAN or Bluetooth (\`push\`, rendered as a "last seen" date). A camera reporting a person is the same category with a real 0/1 value, so this makes the pair first-class, the way \`motion-sensor\` already handles both \`push\` and \`binary\`:
> 
> \- add the \`deviceFeatureCategory.presence-sensor.binary\` label and its Yes/No value labels in fr/en/de — the tag gets a name, and the pair is now offered in the MQTT feature catalog and the device feature editor, both of which build their option list from the translation keys;
> \- map the pair to the \`users\` icon in \`DeviceFeatureCategoriesIcon\` (it was resolving to \`fe fe-undefined\`);
> \- render it as a Yes/No badge on the dashboard instead of the "last seen" date. \`SensorDeviceFeature\` resolves the category map before the type map, so the category renderer was winning; a small category+type map is now checked first;
> \- scope the locked "device seen" scene trigger widget to \`push\`. \`DEVICE\_FEATURE\_TYPES.SENSOR.BINARY\` and \`DEVICE\_FEATURE\_TYPES.SWITCH.BINARY\` are both the string \`binary\`, so a binary presence sensor matched the \`binaryDevice\` branch \*and\* the \`presenceDevice\` branch, and both widgets were rendered side by side. It now gets the regular Yes/No selector, and can trigger on the value going back to No — the locked widget forced \`= 1\`.
> 
> No server change: the pair was already accepted, it was only undisplayable.
> 
> \## Forum
> 
> Forum: https://community.gladysassistant.com/t/integration-externe-netatmo-probleme-camera/10491
> 
> \### Checklist
> 
> \- \[x\] Tests pass: front-only change, no server test touched; \`npm run compare-translations\` passes (the three locales stay structurally identical)
> \- \[x\] Linter and prettier pass on both front and server (\`npm run eslint\`, \`npm run prettier\`)
> \- \[x\] No undocumented breaking change

## Et les trois « Détection mouvement Oui/Non » identiques ?

Ces étiquettes affichent le nom de la _catégorie_, pas celui de la fonctionnalité — et Gladys n’a pas de catégorie « animal » ou « véhicule », donc les trois détections sont rangées en détecteur de mouvement. D’où le triplé.

Rien de bloquant : leurs noms, eux, sont bien distincts ( **Motion** , **Animal detected** , **Vehicle detected** , suivis du nom de ta caméra), et c’est ce nom que tu retrouves partout où ça compte, à commencer par le sélecteur de déclencheur d’une scène. Et si les noms par défaut ne te conviennent pas, tu peux les renommer comme tu veux depuis la fiche de l’appareil.

## Ta question sur « Envoyer une image de caméra »

Bonne nouvelle sur les deux niveaux :

- côté Gladys, l’action n’envoie **pas** le dernier snapshot stocké : au moment où la scène s’exécute, le core réclame une image _fraîche_ à l’intégration, avec 15 s pour répondre ;
- côté intégration Netatmo, cette demande déclenche bien une vraie capture à l’instant t (en local d’abord, via le VPN Netatmo en secours). Le dernier snapshot connu n’est servi qu’en dernier recours, si la capture fraîche n’arrive pas à temps — et dans ce cas l’intégration écrit un avertissement dans ses journaux (`On-demand snapshot failed … — serving the last image`).

Donc tes scènes reçoivent bien l’image de l’instant. Ce que tu vois vieillir est probablement l’image affichée sur le **tableau de bord** , qui elle est rafraîchie par le cycle périodique (toutes les 2 minutes) : c’est normal, et sans rapport avec l’action.

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [Août 14, 2026, 3:26 UTC](https://community.gladysassistant.com/t/integration-externe-netatmo-probleme-camera/10491/10 "2026-08-14T15:26:42Z")

</div>

Les correctifs sont disponibles dans Gladys Assistant 4.86 !

> [@Gladys 4.86 : la plus grosse release de l’histoire du projet rocket](https://community.gladysassistant.com/t/gladys-4-86-la-plus-grosse-release-de-l-histoire-du-projet/10554):
>
> Salut à tous ! Super heureux de sortir Gladys Assistant 4.86. C’est simple, c’est la plus grosse version depuis le début du projet, avec 68 PR fusionnées en une semaine exploding_head C’est juste incroyable, et ça montre le nouveau rythme qu’on peut tenir avec l’IA. L’objectif est maintenant clair : rattraper et dépasser Home Assistant rocket Je vous parle de ces 68 nouveautés ici : Merci à tous les contributeurs !!
