# Ajout du support des switch aux scènes

**URL:** <https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223>\
**Category:** Développement\
**Created:** [Février 27, 2020, 1:00 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223 "2020-02-27T13:00:00Z")\
**Posts on this page:** 18\
**Page:** 1

<div class="post-metadata">

**Author:** ![link39](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/link39/32/3756_2.png) [@link39](https://community.gladysassistant.com/u/link39)\
**Post date:** [Février 27, 2020, 1:00 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/1 "2020-02-27T13:00:00Z")

</div>

Salut Pierre-Gilles,

je viens d’ajouter la possibilité d’allumer et éteindre les interrupteurs dans les scènes.

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

C’est fonctionnel, je peux maintenant allumer une prise connectée quand via le bouton Xiaomi ! par contre alourdi la liste déroulante. .Je pensais donc mutualiser avec les actions de turn on et turn off des lumières, car finalement c’est exactement la même action derrière.  
C’est la que je bloque, je ne sais pas comment récupérer les deux type de device (light et switch) en même temps via la requête get :

```
class TurnOnOffLight extends Component {

  getOptions = async () => {

    try {

      const devices = await this.props.httpClient.get('/api/v1/device', {

        device_feature_category: 'light',

        device_feature_type: 'binary'

      });

```

Est-ce possible ou faut-il que je fasse différemment ?  
Et surtout qu’en penses-tu, laisser deux actions séparées ou les mutualiser ?

---

<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:** [Février 27, 2020, 2:37 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/2 "2020-02-27T14:37:45Z")

</div>



---

<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:** [Février 27, 2020, 2:47 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/3 "2020-02-27T14:47:09Z")

</div>

Salut @link39 ! J’ai mis le topic public pour que tout le monde puisse suivre l’avancement 🙂 (on évite les MP svp!)

> [@link39](#):
>
> le bouton Xiaomi

Tu as réussi à faire fonctionner les interrupteurs Xiaomi? Génial ça! J’ai justement un utilisateur en ce moment qui voulait cette compatibilité 🙂

Ca fonctionne hors des scènes aussi?

> [@link39](#):
>
> Et surtout qu’en penses-tu, laisser deux actions séparées ou les mutualiser ?

C’est quoi exactement ces périphériques ? Des prises connectés couplés à un interrupteur mural ?

Car dans ton cas, oui c’est des ampoules, mais chez quelqu’un d’autre ça sera un grille pain, une machine à café, ou une piscine…

Si effectivement c’est le cas, je pense qu’on peut factoriser le code mais on garde une carte séparé.

Oui ça fait exactement la même chose, mais pour l’utilisateur il faut que ce soit clair et logique.

Tu peux mettre la category de device en props du components «&nbsp;TurnOnOffLight&nbsp;», et ainsi créer une carte «&nbsp;Turn On the Switch&nbsp;» et «&nbsp;Turn Off the Switch&nbsp;» qui sont juste basé sur le même component Preact.

Qu’en penses-tu? 🙂

Merci pour ton travail !

---

<div class="post-metadata">

**Author:** ![link39](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/link39/32/3756_2.png) [@link39](https://community.gladysassistant.com/u/link39)\
**Post date:** [Février 27, 2020, 4:40 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/5 "2020-02-27T16:40:11Z")

</div>

> [@pierre-gilles](#):
>
> Tu as réussi à faire fonctionner les interrupteurs Xiaomi? Génial ça! J’ai justement un utilisateur en ce moment qui voulait cette compatibilité 🙂
> 
> Ca fonctionne hors des scènes aussi?

Je n’ai rien changé, il est déjà compatible → [Amazon.fr](https://www.amazon.fr/Original-XiaoMi-Interrupteur-Wireless-Switch/dp/B07CXH6MGY?tag=gladproj-21)  
Dans mon exemple, il sert de trigger. Lors d’un «&nbsp;single press&nbsp;», la valeur vaut 1.

> [@pierre-gilles](#):
>
> C’est quoi exactement ces périphériques ? Des prises connectés couplés à un interrupteur mural ?
> 
> Car dans ton cas, oui c’est des ampoules, mais chez quelqu’un d’autre ça sera un grille pain, une machine à café, ou une piscine…
> 
> Si effectivement c’est le cas, je pense qu’on peut factoriser le code mais on garde une carte séparé.
> 
> Oui ça fait exactement la même chose, mais pour l’utilisateur il faut que ce soit clair et logique.

Oui je suis d’accord, je me suis peux être mal exprimé. Bien entendu une prise connectée ou un interrupteur mural (type fibaro switch / interrupteur xiaomi and co) ne sert pas uniquement à allumer des lampes 😃 Ce que je suggérais c’était d’avoir une action (carte) nommée : «&nbsp;Turn on light or switch&nbsp;». Dans celle-ci apparaîtrait à la fois les types «&nbsp;light&nbsp;» et «&nbsp;device&nbsp;».

Si on ne souhaite pas mutualiser ces deux types de périphérique dans la même carte, je pense que mon code est assez propre et je peux faire un PR en l’état.

Voici le rendu actuel :

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

---

<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:** [Février 27, 2020, 5:15 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/6 "2020-02-27T17:15:03Z")

</div>

Ah ok je n’avais pas compris!

Le Xiaomi te sert de trigger, ça j’ai compris.

Par contre: tu contrôle quoi ? Une prise de quelle marque? De quelle technologie ? Ton “Turn On the Switchs” il contrôle quoi ?

---

<div class="post-metadata">

**Author:** ![link39](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/link39/32/3756_2.png) [@link39](https://community.gladysassistant.com/u/link39)\
**Post date:** [Février 27, 2020, 8:04 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/7 "2020-02-27T20:04:50Z")

</div>

Je contrôle du zwave :

- Fibaro FGS213
- Fibaro Wall plug
- Prise connectée Neo

---

<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:** [Février 28, 2020, 9:06 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/8 "2020-02-28T09:06:28Z")

</div>

Ok, du coup je suis chaud pour une PR avec les deux nouvelles actions “Turn on/off the Switch” ! 🙂

---

<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:** [Février 28, 2020, 1:02 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/9 "2020-02-28T13:02:23Z")

</div>

@link39 J’ai vu sur le forum que @jean_bruder a eu le même souci que toi, mais lui avec des Sonoff !

> [@Parlons de Gladys V4](https://community.gladysassistant.com/t/parlons-de-gladys-v4/3578/742):
>
> Bonjour @pierre-gilles, et merci pour ta réponse. Il ne s’agit pas en fait de “lumières” en soit, mais d’interrupteurs sonoff qui pilotent des lampes. Je base ma domotique là dessus, c’est bien pratique et pas cher, et je conserve l’ensemble de mes luminaires !

Du coup je me demande dans son cas ce qu’on peut faire… Est-ce qu’on créé un 3ème type de carte, ou alors est-ce qu’on créé quelque chose de plus générique ?

---

<div class="post-metadata">

**Author:** ![link39](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/link39/32/3756_2.png) [@link39](https://community.gladysassistant.com/u/link39)\
**Post date:** [Février 28, 2020, 1:11 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/10 "2020-02-28T13:11:47Z")

</div>

Les sonoff vu aussi comme des interrupteurs je pense. La carte “Turn on the switchs” devrait donc les piloter et ainsi les lumières (ou autres objets) qui sont connectées dessus.

Voici la branche sur laquelle j’ai fais les modifications si vous voulez tester et confirmer que ca répond au besoin pour les sonoff :

> **[GitHub - link39/Gladys at scene](https://github.com/link39/Gladys/tree/scene)**
>
> scene

Après pour plus de facilité côté utilisateur et pour moins surcharger l’interface, je pense qu’avoir une seul carte “Turn on light or switch” serait mieux. Car plus tard il y aura surement d’autres actions :

- Modifier la luminosité (switch dimmer / light )
- Modifier la couleur d’une (light)
- Modifier la température (thermostat)
- …

---

<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:** [Février 28, 2020, 1:22 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/11 "2020-02-28T13:22:34Z")

</div>

> [@link39](#):
>
> Voici la branche sur laquelle j’ai fais les modifications si vous voulez tester et confirmer que ca répond au besoin pour les sonoff

Top ! Quand tu veux pour la PR 😉

> [@link39](#):
>
> Après pour plus de facilité côté utilisateur et pour moins surcharger l’interface, je pense qu’avoir une seul carte “Turn on light or switch” serait mieux. Car plus tard il y aura surement d’autres actions :

Du coup je ne suis pas d’accord! 😛

La carte «&nbsp;Turn On the lights&nbsp;» va pouvoir se spécialiser et proposer en plus d’allumer les lumières, de les allumer avec une couleur spécifique.

La ou la carte «&nbsp;Turn On the Switches&nbsp;» va rester assez simple

---

<div class="post-metadata">

**Author:** ![link39](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/link39/32/3756_2.png) [@link39](https://community.gladysassistant.com/u/link39)\
**Post date:** [Février 28, 2020, 6:39 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/12 "2020-02-28T18:39:55Z")

</div>

> [@pierre-gilles](#):
>
> Du coup je ne suis pas d’accord! 😛
> 
> La carte “Turn On the lights” va pouvoir se spécialiser et proposer en plus d’allumer les lumières, de les allumer avec une couleur spécifique.

Ah oui mais si tu ne dis pas tout aussi 😂

---

<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:** [Mars 10, 2020, 6:29 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/14 "2020-03-10T18:29:47Z")

</div>

> [@bobdivx](#):
>
> Salut juste un petit message pour avoir quelques nouvelles de l’avancement sur le module 😉

En fait j’avais mal compris, ici ce développement ne touche que les scènes, aucun rapport avec Xiaomi !

Personne ne travaille sur le support des interrupteurs switch Xiaomi en ce moment.

---

<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:** [Mars 11, 2020, 8:24 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/16 "2020-03-11T20:24:18Z")

</div>

> [@bobdivx](#):
>
> Bon est bien il ne reste que toi @pierre-gilles mdr

J’ai créé une tâches sur GitHub pour pas perdre de vue ce développement =\>

> <https://github.com/GladysAssistant/Gladys/issues/689>
>
> Be able to control xiaomi devices (switches, ...)

Je veux bien que tu poste sur l’issue les références exactes du matériel que tu essaie de contrôler.

Après, comme tu peux le voir c’est la 57ème tâche en attente ^^ Il y a du boulot !

---

<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 31, 2020, 7:32 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/18 "2020-08-31T07:32:32Z")

</div>

Il y a une PR en attente =\>

[https://github.com/GladysAssistant/Gladys/pull/670](https://github.com/GladysAssistant/Gladys/pull/670)

---

<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 31, 2020, 12:15 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/20 "2020-08-31T12:15:13Z")

</div>

J’ai fini le travail sur la PR ce matin, c’est mergé sur master. La feature partira sûrement dans la beta dès cet après-midi 🙂

---

<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 31, 2020, 3:09 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/21 "2020-08-31T15:09:37Z")

</div>

@atrixe144 La dernière version de Gladys 4 permet désormais de gérer les switch dans les scénarios, ton instance va se mettre à jour tout seul. Pour vérifier que tu es bien à la dernière version, tu peux vérifier dans ton dashboard Gladys sous “/dashboard/settings/system” que tu es bien en version:

 ![Screenshot 2020-08-31 at 17.08.53](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/f/fce29b3e1d01ea1fcc9cf7c7fb3bf8a254ad8616.png)

---

<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:** [Septembre 1, 2020, 7:29 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/23 "2020-09-01T19:29:51Z")

</div>

Tu peux déjà le faire normalement.

Tu dois faire un bloc “Récupérer le dernier état”

 ![Screenshot 2020-09-01 at 21.28.25](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/b/b317ebf5411996e3a97a5055d86ada1a1980ff32.png)

Puis un bloc “continuer seulement si”

 ![Screenshot 2020-09-01 at 21.28.56](https://gladys-assistant-community.b-cdn.net/uploads/default/original/2X/6/65173de00b0d9f7431b38fb0c5141b76d24e5fab.png)

---

<div class="post-metadata">

**Author:** ![link39](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/link39/32/3756_2.png) [@link39](https://community.gladysassistant.com/u/link39)\
**Post date:** [Septembre 10, 2020, 5:57 UTC](https://community.gladysassistant.com/t/ajout-du-support-des-switch-aux-scenes/5223/24 "2020-09-10T05:57:38Z")

</div>

Merci Pierre Gilles d’avoir terminé cette features. Désolé très peu de temps en ce moment.
