# Intégration externe - Shelly

**URL:** <https://community.gladysassistant.com/t/integration-externe-shelly/10423>\
**Category:** Développement\
**Tags:** integration-externe\
**Created:** [Août 1, 2026, 11:28 UTC](https://community.gladysassistant.com/t/integration-externe-shelly/10423 "2026-08-01T11:28:18Z")\
**Posts on this page:** 7\
**Page:** 1

<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 1, 2026, 11:28 UTC](https://community.gladysassistant.com/t/integration-externe-shelly/10423/1 "2026-08-01T11:28:18Z")

</div>

Salut à tous 👋

Après pas mal de temps passé le nez dans les payloads Shelly, je vous présente une **intégration externe Shelly** pour Gladys, en version **1.0.0**.

> 📦 **Dépôt :** [GitHub - Terdious/gladys-shelly · GitHub](https://github.com/Terdious/gladys-shelly)  
> 📖 **Documentation :** [Français](https://github.com/Terdious/gladys-shelly/blob/master/docs/fr.md) · [English](https://github.com/Terdious/gladys-shelly/blob/master/docs/en.md)

 ![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/f/a/fadd785939cf4d36718d63ccb64ef45591792ee0.png)

* * *

## En deux mots

Relais, prises connectées et compteurs d’énergie Shelly, en **local d’abord** , sans compte et sans cloud. L’installation type demande **un formulaire de configuration entièrement vide** : vous installez, vous lancez un scan, vous ajoutez vos appareils.

 ![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/3/e/3ec72d2367c706d522b604391ff18c9e1f8ddcaa.png)

* * *

## Vous pilotez déjà vos Shelly via un pont ?

Pierre-Gilles vient de publier sa position sur le sujet — [Retour d’expérience : pourquoi je recommande désormais les intégrations externes](https://community.gladysassistant.com/t/lusine-a-plugins-matterbridge-rendez-nimporte-quel-appareil-compatible-avec-gladys/10234/63) — et je la partage entièrement.

Si vos Shelly passent aujourd’hui par une couche intermédiaire, **vous pouvez les basculer ici**. Ce que vous y gagnez concrètement : plus rien à maintenir entre Gladys et vos appareils, et surtout **100 % de ce que le matériel sait faire** , sans passer par un standard qui doit d’abord savoir l’exprimer. Un Pro 3EM ressort avec ses **24 fonctionnalités** — les trois phases séparément, puissance active et apparente, tension, intensité, courant de neutre, et les huit compteurs d’énergie consommée et réinjectée.

Une seule précaution : **retirez-les de l’ancien pont avant** de les ajouter ici, sinon vous verrez chaque Shelly en double.

* * *

## Ce qu’elle sait faire

**Local, et en temps réel.** L’intégration parle le protocole **RPC Gen2+** directement à vos appareils, sur une **WebSocket que l’appareil alimente lui-même** : un relais basculé à l’interrupteur mural remonte en une seconde environ, pas au prochain sondage.

**Toutes les générations.** Gen2 et suivantes (Plus, Pro, Mini, Gen3, Gen4) **et Gen1** (Shelly 1, 1PM, 2.5, Plug S, EM, 3EM). Les Gen1 parlent une API complètement différente — REST au lieu de JSON-RPC, Basic au lieu de Digest — mais elles sont normalisées vers le même modèle : un **3EM Gen1 expose exactement les mêmes 24 fonctionnalités qu’un Pro 3EM Gen2**.

**Trois transports, du meilleur au dernier recours : local → MQTT → cloud.** Chacun a sa raison d’être :

- le **local** est le chemin nominal ;
- **MQTT** (optionnel) est le moyen le plus fiable de trouver une grande installation. Le mDNS s’annonce par courtes rafales multicast faciles à manquer : chez moi, le même parc revenait tantôt à 19, tantôt à 27 appareils, avec certains systématiquement absents. Un Shelly qui publie sur votre broker s’annonce en permanence — il est découvert, il remonte en temps réel, et il reste pilotable même injoignable en local ;
- le **Shelly Cloud** (optionnel) prend le relais quand un appareil n’est joignable ni en local ni par MQTT.

Gladys affiche le transport réellement utilisé, appareil par appareil, avec le **badge dégradé** et sa raison quand ce n’est pas le chemin nominal.

 ![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/e/4/e4866285953dcf94ec173d706863038538eef3d1.png)

**Le modèle d’appareil est déduit, pas codé en dur.** Les fonctionnalités viennent des composants que l’appareil déclare réellement dans `Shelly.GetStatus`, jamais d’une table de modèles. Un Pro 1 obtient un On/Off, un Pro 1PM obtient en plus la métrologie — et un Shelly sorti après ce code fonctionne quand même, tant qu’il parle le vocabulaire documenté.

Composants couverts : `switch`, `em`, `emdata`, `em1`, `em1data`, `pm1`, `temperature`, `humidity`, `devicepower`.

* * *

## Le temps réel, et pourquoi il est réglable

Gladys accepte **300 états par minute** par intégration. Un seul Pro 3EM pousse environ **une mise à jour par seconde sur ~25 mesures** : tout transmettre tel quel ferait ~900 états/minute, trois fois le plafond.

Les valeurs sont donc réparties sur deux voies :

- une **voie temps réel** (5 s par défaut, réglable de 1 s à 30 s) qui porte **toutes les puissances instantanées** — totale, par phase, par relais — et **tous les états marche/arrêt** ;
- le **reste** (tensions, intensités, puissances apparentes, compteurs d’énergie, températures) suit l’intervalle de rafraîchissement, mais servi depuis la **valeur poussée la plus fraîche** , sans aller-retour HTTP.

Le point auquel je tiens : votre réglage est un **plancher, pas une promesse**. Le coût de la voie dépend du parc, pas du réglage — une valeur qui ne bouge jamais ne coûte rien. L’intégration **mesure donc ce qu’elle publie réellement** et allonge son propre intervalle si le parc devient trop gros, en l’écrivant dans les logs, puis y revient d’elle-même. Un état refusé par Gladys serait invisible ; une voie ralentie, non.

Et chaque minute, une ligne dit exactement où vous en êtes :

```auto
Real-time lane: 178 state(s) published in the last minute (every 5s, from
5 WebSocket and 15 MQTT device(s)); 243/300 states/min of the Gladys budget used

```

* * *

## Installation

Dans Gladys : **Intégrations → Installer une intégration → Shelly → Installer** , puis **Découverte → Scanner**.

Il n’y a rien à remplir pour une installation 100 % locale. Les champs (adresses supplémentaires, mot de passe des appareils, broker MQTT, clé cloud) ne servent que si votre installation en a besoin, et chacun est expliqué directement dans le formulaire.

_(image 4 : la page de configuration, formulaire vide)_

Nécessite **Gladys ≥ 4.83.0**. Si un appareil reste introuvable au scan, la doc explique quoi regarder — et configurer MQTT est presque toujours la réponse sur une grosse installation.

* * *

## Testé sur

Mon installation : **19 Shelly** , 10 x **Pro 3EM** , 1 x **Pro 4PM** , 2 x **Pro 3** , 1 x **Plus 2PM** , 2 x **Plus Plug S** , et 3 x **3EM Gen1**. Local, MQTT et les deux mélangés.

* * *

## Merci @pierre-gilles 🙏

Au passage j’ai buté sur une limite du core : `publishDiscoveredDevices()` se prenait un `PayloadTooLargeError` au-delà d’une douzaine d’appareils riches en fonctionnalités (un Pro 3EM = 24 fonctionnalités ≈ 8,4 Ko). Pierre-Gilles a corrigé ça très vite côté core ([PR #2732](https://github.com/GladysAssistant/Gladys/pull/2732)). En attendant que tout le monde soit à jour, l’intégration publie le plus gros sous-ensemble acceptable et **journalise nommément** ce qui a été écarté, plutôt que de perdre le scan en silence.

* * *

## La suite

Pas encore supportés, faute de matériel pour les valider : **volets roulants** (`cover`), **éclairages variables** (`light`) et **entrées** (`input`) . Le code est prêt à les accueillir, il me manque les appareils : si vous en avez et que vous voulez tester une image `:dev`, dites-le, je vous prépare ça avec plaisir — c’est le meilleur moyen que ça arrive vite.

Les **Shelly BLU** ne sont pas gérés non plus : ils parlent Bluetooth, et l’intégration ne fait pas de BLE.

La roadmap est ouverte : [Roadmap — Shelly external integration · Issue #1 · Terdious/gladys-shelly · GitHub](https://github.com/Terdious/gladys-shelly/issues/1)

Bugs, retours, payloads d’appareils exotiques : les issues sont grandes ouvertes. Et si vous testez, dites-moi ce que ça donne — surtout sur des modèles que je n’ai pas, et surtout sur des modèles que je n’ai pas 🙂

---

<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 1, 2026, 11:36 UTC](https://community.gladysassistant.com/t/integration-externe-shelly/10423/2 "2026-08-01T11:36:33Z")

</div>

Bravo !! Super intégration

---

<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 1, 2026, 12:52 UTC](https://community.gladysassistant.com/t/integration-externe-shelly/10423/3 "2026-08-01T12:52:10Z")

</div>

@McFlyPartages Tu es pas mal en Shelly toi non ? ça va te plaire 🙂

---

<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:** [Octobre 19, 2026, 7:22 UTC](https://community.gladysassistant.com/t/integration-externe-shelly/10423/4 "2026-10-19T07:22:14Z")

</div>

## 🆕 Mise à jour : v1.0.0 → v1.1.0

Grosse mise à jour de l’intégration Shelly : elle rattrape les nouveautés de Gladys et du SDK, et la roadmap avance d’un coup sur les **volets** , les **lumières** et les **entrées**!

> ⚠ Nécessite désormais **Gladys ≥ 5.1.0** (widgets et scènes).

### 🪟 Volets roulants (`cover`)

- **Ouvrir / Stop / Fermer** et **position** via la commande volet standard de Gladys, plus puissance, tension, courant, énergie.
- La position (100 % = ouvert, même convention chez Shelly et Gladys) n’apparaît qu’une fois le volet **calibré** dans l’app Shelly.
- Plus 2PM / Pro 2PM / Pro Dual Cover en mode volet, et **Shelly 2.5 Gen1** en mode roller.

### 💡 Lumières (`light`, `rgb`, `rgbw`, `cct`)

- Marche/arrêt, **luminosité** , **couleur** , **température de couleur** (2700 K → 6500 K).
- Changer la luminosité n’allume ni n’éteint la lumière.
- Gen1 aussi : Dimmer, Bulb, Duo, RGBW2 en mode couleur.

### 🔘 Entrées et boutons (`input`)

- Mode **interrupteur** → une entrée marche/arrêt en temps réel.
- Mode **bouton** → un bouton Gladys + un nouveau déclencheur de scène, à chaque appui **simple, double, triple ou long** , en temps réel (WebSocket ou MQTT). Un **Shelly i4** donne enfin 4 boutons utilisables !
- Mode **comptage** → un compteur.

### 🎬 Scènes (catégorie **Intégrations** )

- Déclencheur **Bouton appuyé sur un Shelly** : appareil, entrée, type d’appui.
- Déclencheur **Joignabilité d’un Shelly** : un appareil devient injoignable (local, MQTT et cloud), ou répond à nouveau.
- Action **Allumer pendant une durée** : c’est **le Shelly lui-même** qui éteint après la durée (1 s à 1 jour). Un redémarrage de Gladys entre-temps ne laisse jamais tourner la pompe ou l’arrosage.
- Action **Redémarrer un Shelly**.

### 📊 4 widgets de tableau de bord

- **Compteur d’énergie Shelly** : jauge de puissance en direct (sous zéro en réinjection), une tuile par phase, énergie, courbe sur la période choisie, tensions, intensités, facteur de puissance, fréquence.
- **Interrupteurs Shelly** : état et puissance de chaque sortie d’une pièce ou de toute la maison, boutons **Tout allumer / Tout éteindre**.
- **Volets Shelly** : un groupe de volets, position de chacun, boutons **Ouvrir / Stop / Fermer / Position**.
- **Santé du réseau Shelly** : combien d’appareils en temps réel, en secours, injoignables, les Wi-Fi faibles, les mises à jour firmware, et la part du budget Gladys (300 états/min) utilisée.

_(image : les widgets)_

### 🩺 Diagnostic dans la Configuration

- **Diagnostic des appareils** : un rapport texte complet (transport, dernières données, signal Wi-Fi, firmware, sorties…) à coller dans une issue.
- **Tester un appareil** : lit un appareil **tout de suite** , même **non créé dans Gladys** (tapez son IP) — identité, temps de réponse, mot de passe accepté ou non, temps réel. L’outil idéal pour comprendre pourquoi un scan ne trouve pas un appareil.
- Lecture seule, jamais de mot de passe, adresses MAC et IP masquées par défaut.

_(image : l’écran Configuration avec les deux boutons)_

### 🌍 4 langues

- Toute la configuration, les messages et la documentation en **français, anglais, allemand et espagnol**.
- Nouvelle option **Noms des fonctionnalités** pour les appareils que vous créez ensuite.

### 🔒 Sécurité et maintenance

- Bibliothèque MQTT mise à jour (6 failles corrigées) ; la connexion au broker continue de réessayer après un refus.
- SDK 0.15, et chaque version a maintenant ses **notes de version sur GitHub** , liées depuis la page Supervision de Gladys.

### 🔄 Pour en profiter

1. **Intégrations → Shelly → Mettre à jour**.
2. Onglet **Découverte** : **Scanner** , puis **Mettre à jour** sur chaque appareil « Déjà ajouté » pour récupérer les nouvelles fonctionnalités (volets, lumières, entrées). Historique, scènes et tableaux de bord sont conservés.
3. Ajoutez les widgets depuis l’édition du tableau de bord.

### 🧪 Retours très attendus

Volets, lumières et entrées sont écrits d’après la documentation officielle Shelly, mais **je n’ai pas le matériel** pour les valider. Si vous avez un **Plus 2PM en mode volet** , un **Plus RGBW PM** , un **Plus i4 / i4 Gen3** , un **Dimmer** , ou un **2.5 Gen1 en volet** : testez et dites-moi ce que ça donne ! Le plus simple : le bouton **Diagnostic des appareils** , et vous collez le rapport ici ou dans une issue.

Changelog complet : [https://github.com/Terdious/gladys-shelly/blob/master/CHANGELOG.md](https://github.com/Terdious/gladys-shelly/blob/master/CHANGELOG.md)  
Roadmap : [Roadmap — Shelly external integration · Issue #1 · Terdious/gladys-shelly · GitHub](https://github.com/Terdious/gladys-shelly/issues/1)

---

<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:** [Octobre 19, 2026, 8:19 UTC](https://community.gladysassistant.com/t/integration-externe-shelly/10423/5 "2026-10-19T08:19:05Z")

</div>

## 🆕 v1.2.0 — thermostats « Powered by Shelly »

Merci à @sylvainpelissier pour sa contribution : l’intégration prend maintenant en charge les **composants virtuels** des appareils « Powered by Shelly ». Premier appareil concerné : le thermostat de plancher chauffant **LinkedGo ST1820** , qui remonte enfin sa **consigne** (pilotable, bornée à la plage et au pas de l’appareil), la **température** et l’ **humidité** de la pièce, et ses **options marche/arrêt**.

🔄 **Intégrations → Shelly → Mettre à jour** , puis **Découverte → Scanner**.

Notes de version : [Release v1.2.0 · Terdious/gladys-shelly · GitHub](https://github.com/Terdious/gladys-shelly/releases/tag/v1.2.0)

---

<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:** [Octobre 19, 2026, 9:31 UTC](https://community.gladysassistant.com/t/integration-externe-shelly/10423/6 "2026-10-19T09:31:43Z")

</div>

## 🆕 v1.3.0 — mots de passe par appareil et capteurs Gen1 sur batterie

### 🔑 Un mot de passe différent par appareil

Nouveau champ **Mots de passe par appareil** dans la configuration, pour les Shelly qui n’ont pas le même mot de passe que les autres :

`shellyplus1-a8032ab12345=motdepasse1; 10.5.0.42=motdepasse2`

L’appareil se désigne par son identifiant Shelly, son adresse MAC ou son adresse IP. Un appareil qui refuse son mot de passe affiche un **point orange** sur son badge, et l’écran Configuration le **nomme** : fini les appareils qui disparaissent sans explication. « Tester un appareil » indique aussi quel mot de passe a été essayé.

### 💧 Capteurs Gen1 sur batterie

- **Flood** → détecteur de fuite d’eau ; **Smoke** → détecteur de fumée.
- **Door/Window 1 et 2** → capteur d’ouverture (ouvert / fermé) et luminosité.
- **Ils dorment, et c’est normal** : un H&T, un Flood ou un Door/Window endormi reste affiché « local » tant qu’il s’est manifesté dans les 26 dernières heures. Plus de faux « injoignable », plus de déclenchement intempestif de « Joignabilité d’un Shelly ».
- 💡 Configurez **MQTT** sur ces appareils : chaque relevé arrive au moment où ils se réveillent.

### 🔘 Boutons Gen1

Les entrées d’un **i3** (et les entrées SW d’un Shelly 1 / 2.5) remontent maintenant les appuis **simple, double, triple et long** , comme sur les Gen2 : fonctionnalité bouton et déclencheur **Bouton appuyé sur un Shelly**. Ça marche par MQTT (instantané) comme par lecture de l’appareil, et un appui vu des deux côtés n’est compté qu’une fois.

### 🔄 Pour en profiter

1. **Intégrations → Shelly → Mettre à jour**.
2. **Découverte → Scanner** , puis **Mettre à jour** sur les appareils Gen1 concernés.

### 🧪 Retours bienvenus

Surtout si vous avez des Gen1 sur batterie (H&T, Flood, Door/Window, i3) ou un parc avec plusieurs mots de passe. Le bouton **Diagnostic des appareils** produit un rapport prêt à coller ici.

Notes de version : [Release v1.3.0 · Terdious/gladys-shelly · GitHub](https://github.com/Terdious/gladys-shelly/releases/tag/v1.3.0)

---

<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:** [Octobre 19, 2026, 10:02 UTC](https://community.gladysassistant.com/t/integration-externe-shelly/10423/7 "2026-10-19T10:02:28Z")

</div>

## 🆕 v1.4.0 — Shelly Cloud plus sobre, canal blanc RGBW

### ☁ Shelly Cloud

- Les appareils servis par le cloud sont maintenant lus en **une seule requête par cycle** pour tout le compte, au lieu d’une requête par appareil. Les appels sont aussi espacés d’une seconde, la limite de l’API Shelly Cloud : même un parc entier en secours cloud ne la dépasse plus.
- 🐛 **Correction** : un appareil **Gen1** lu via le cloud (par exemple un 3EM Gen1 injoignable en local) ne remontait aucune valeur. Il est maintenant lu exactement comme en local.

### 💡 Lumières

- Une sortie **RGBW** (Plus RGBW PM, RGBW2 Gen1 en mode couleur) expose enfin ses **LED blanches** , réglables de 0 à 100 %.
- Un Shelly qui **change de profil** (un Plus 2PM qui passe de relais à volet, un variateur qui passe en interrupteur) gardait ses anciennes fonctionnalités, vides, sans rien dire. Le scan les **nomme** maintenant dans les journaux, et le bouton **Diagnostic des appareils** les liste : il ne reste qu’à les supprimer dans Gladys.

### 🔄 Pour en profiter

**Intégrations → Shelly → Mettre à jour** , puis **Découverte → Scanner** et **Mettre à jour** sur les appareils RGBW.

### 🧪 Retours bienvenus

Surtout si vous utilisez le **secours Shelly Cloud** (en particulier avec des Gen1) ou une **Plus RGBW PM** : je n’ai pas pu valider ces deux points sur du vrai matériel. Le **Diagnostic des appareils** produit un rapport prêt à coller ici.

Notes de version : [Release v1.4.0 · Terdious/gladys-shelly · GitHub](https://github.com/Terdious/gladys-shelly/releases/tag/v1.4.0)
