# Gladys - contrôler ou condition sur un appareil scène

**URL:** <https://community.gladysassistant.com/t/gladys-controler-ou-condition-sur-un-appareil-scene/10492>\
**Category:** Configuration\
**Tags:** scene\
**Created:** [Août 8, 2026, 10:48 UTC](https://community.gladysassistant.com/t/gladys-controler-ou-condition-sur-un-appareil-scene/10492 "2026-08-08T10:48:47Z")\
**Posts on this page:** 2\
**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:48 UTC](https://community.gladysassistant.com/t/gladys-controler-ou-condition-sur-un-appareil-scene/10492/1 "2026-08-08T10:48:47Z")

</div>

Est il possible davoir un choix comme sur le widget parce que je ne sais pas quoi est quoi dans les scènes​😅

Widget :

 ![23799](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/d/f/df6472e5945925a49eccef823a3766e0e633358e.jpeg)

Scene:

 ![23802](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/2/0/20ef09c169b4a1809fcbb8c4c88a62d590cfb0c0.jpeg)

 ![23796](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/3/2/3225bae97fda9a0391fd6cc9155fa52d8b0db32e.jpeg)

---

<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, 2:16 UTC](https://community.gladysassistant.com/t/gladys-controler-ou-condition-sur-un-appareil-scene/10492/2 "2026-08-10T14:16:05Z")

</div>

Merci du retour, c’est corrigé ici :

> <https://github.com/GladysAssistant/Gladys/pull/2835>
>
> \### Description
> 
> When a scene controls or tests a device feature that holds a kn…own list of constants, the editor used to display raw numbers. Setting a Roborock's operating mode meant typing \`2\` and dragging a slider, and a condition on it compared against \`0\` — while the device widget on the dashboard has been offering a labeled dropdown ("Idle", "Vacuum"…) all along. There was no way to tell which number was which.
> 
> The scene editor now reuses the same labels wherever a feature holds a known list of values:
> 
> \- \*\*"Control a device" action\*\* — a labeled select replaces the free text input and the range slider.
> \- \*\*Device state trigger\*\* — the same select replaces the free value input.
> \- \*\*"Only continue if" condition\*\* — already had this mechanism (\`getDeviceFeatureValueOptions\`); it now covers the vacuum cleaner too.
> 
> Each place keeps a small link to switch back to a free value, so scene variables and values saved before this list existed stay editable. A value that is not in the list keeps the free input selected by default, so no existing scene changes behavior or loses its value.
> 
> Vacuum cleaner run modes and clean modes were the missing piece: their labels only existed under \`deviceFeatureAction\`, keyed by name for the widget. They now also exist under \`deviceFeatureValue\`, keyed by value, in the three languages — the same shape the water heater already uses. As a side effect the device history displays them as text too.
> 
> Because the mechanism is driven by the translations rather than by a per-category branch, every other feature holding constants benefits at the same time: lock state, air conditioning mode / fan speed / swing, thermostat mode, siren volume, water valve status…
> 
> \## Forum
> 
> Forum: https://community.gladysassistant.com/t/gladys-controler-ou-condition-sur-un-appareil-scene/10492
> 
> \### Checklist
> 
> \- \[x\] Tests pass: no server change in this PR, so \`npm run coverage\` is not impacted. Cypress could not be run in this environment (the Cypress binary download fails behind the proxy); the front changes were verified by mounting the three edited components in jsdom against the real \`fr.json\`, checking that a vacuum feature renders the labeled list and that a numeric feature keeps its slider / free input untouched.
> \- \[x\] Linter and prettier pass on both front and server (\`npm run eslint\`, \`npm run prettier\`), plus \`npm run compare-translations\` and \`npm run build\`
> \- \[x\] No undocumented breaking change
> 
> \---
> \_Generated by \[Claude Code\](https://claude.ai/code/session\_01RWCazHXeNbxYqAXyCEqovP)\_
