Valeur de retour bouton Moes Scene Switch TS0042 sous Gladys

Bonjour,
j’ai appairé un bouton 2 entrées de marque Moes, reconnu sous zigbee2mqtt en tant que TS0042 (TuYa),

Sous gladys, j’ai ajouté une scène avec un changement d’état de l’appareil mais ce qui me semble étrange c’est qu’on ne peut saisir que des valeurs entières alors que le bouton renvoie des chaines de caractères.

Etat sous zigbee2mqtt :

{
    "battery": 100,
    "linkquality": 167,
    "action": "1_single"
}

Les valeurs pour action sont : 1_single, 1_double, 1_hold, 2_single, 2_double, 2_hold

sous gladys :
image

sous zigbee2mqtt :
Je ne peux mettre d’image étant nouveau sur le forum

merci pour votre temps et votre aide

Salut @MisterBin, et bienvenue dans la communauté ! :slight_smile:

Effectivement Gladys ne gère que des valeurs numériques pour les états d’appareils.

Il faut que dans l’intégration Zigbee2mqtt on fasse une conversion entre la valeur statique et la valeur numérique.

@cicoub13 @AlexTrovato Est-ce que cet appareil est déjà géré où est-ce qu’il faut rajouter les valeurs à l’intégration Zigbee2mqtt ?

Si ce n’est pas géré, il faudra créer une issue Github @MisterBin : Issues · GladysAssistant/Gladys · GitHub

J’ai vu ça passer dans le code, aucune idée si je suis au bon endroit
mais si c’est le cas, il suffirait peut être d’ajouter des cases pour les valeurs du boutons

        case 'single':
        case '1_single':
          result = BUTTON_STATUS.CLICK;
          break;
  convertValue.js
  -------------------------------
    // Case for Button devices
    case 'click': {
      switch (value) {
        case 'single':
          result = BUTTON_STATUS.CLICK;
          break;
        case 'double':
          result = BUTTON_STATUS.DOUBLE_CLICK;
          break;
        case 'hold':
          result = BUTTON_STATUS.LONG_CLICK;
          break;
        default:
          result = value;
      }
      break;
    }

Tu es bien au bon endroit !

Il faut ajouter ces valeurs effectivement dans ces fichiers + des tests unitaires pour vérifier que ça marche bien