Ajout de nouvelles actions

Bonjour aux utilisateurs du plugin Alexa-smartHome,

alexasmarthome_icon

La précédente version est devenue intelligente et elle est capable d’ajouter toute seule les informations qui remontent des devices, c’est vraiment très pratique. De nouveaux types d’équipements peuvent arriver, leurs infos seront automatiquement détectées.

Pour ce qui concerne les actions, c’est plus complexe. Je n’ai pas tous les types d’équipements et je ne peux donc pas programmer toutes les commandes qui existent.
Je viens d’ajouter une option « Activer les fonctions réservées aux utilisateurs expérimentés » à la configuration du plugin, cette option ajoutera un nouveau bouton :
image

Cela va permettre aux utilisateurs qui ont des équipements qui ne sont pas encore reconnus d’ajouter leurs commandes. Il manque par exemple les consignes de températures ou les commandes de certains volets.

Pour trouver ces commandes, il faut « bidouiller », essayer de trouver la bonne orthographe et les bons paramètres à envoyer au module, regardez comment sont construitent les commandes classiques (TurnOn, setBrightness, setColor, …)
Pour vous aider, il y a les pages consacrées aux skills Alexa, les orthographes sont « en principe » identiques :

SVP, discutons ensemble et partageons les résultats de vos investigations, veuillez me remonter les commandes qui fonctionnent pour que je les ajoute au plugin, JE COMPTE SUR VOUS !!! Ne jouez pas perso sur ce coup, c’est pour arriver à trouver les commandes qu’il manque.

A votre dispo pour tout appui.

7 « J'aime »

Je suis en train de regarder pour ajouter les commandes de consignes pour les thermostats.
je suis sur une piste, par contre pourrais tu me donner un exemple de montage d’une commande du genre « setColor »(je n’ais pas de matériel HUE ou dimmable pour voir les commandes) afin de voir comment tu cumul les arguments à la suite.
Car la je dois rentrer une commande du style « SetTargetTemperature » avec une valeur dans un setpoint, mais forcément une commande du genre « SmarthomeCommand?command=SetTargetTemperature&value=21.0 » aurait été trop simple.
Comment faire pour plusieurs arguments à la suite?

Oui, j’y ai pensé, j’ai doc expliqué 3 autres commandes qui fonctionne à la fin de la page de la doc, regarde sur :
http://jeedom.sigalou-domotique.fr/alexa-amazon-smarthome-documentation

Je pense que setTargetTemperature n’aura pas de majuscules au début. avec @skillix nous avons cherché justement sur ça et nous nous sommes couchés tard bredouilles … on continue …

Je viens de regarder la doc.
Bon ben j’avais fait plusieurs essais qui vont dans le sens des commandes décrites Je n’ai pas encore testé l’orthographe.
Donc pour le moment bredouille aussi après une petite nuit de recherche . A suivre

Bonjour, je viens vers vous pour vous partager ma trouvaille :

SmarthomeCommand?command=sceneActivate

Cela permet de lancer une scène, mais pas de l’arreter.

1 « J'aime »

sinon concernant la consigne, j’ai trouvé, mais pas je n’ai pas encore l’exploitation.

"id": "setTargetTemperature",
    "type": "setTargetTemperature",
    "displayName": "Set Temperature",
    "description": "Set the temperature",
    "parameters": [
      {
        "name": "target",
        "description": "The object to set the temperature of",
        "constraint": {
          "constraintType": "DynamicSet",
          "supportedProperty": "setTargetTemperature"
        }
      },
      {
        "name": "customerId",
        "description": "The customer id",
        "constraint": {
          "constraintType": "SystemPredefinedValue",
          "predefinedValue": "CUSTOMER_ID"
        }
      },
      {
        "name": "operationId",
        "description": "The operation id",
        "constraint": {
          "constraintType": "ProviderPredefinedValue",
          "predefinedValue": "setTargetTemperature"
        }
      },
      {
        "name": "targetTemperature",
        "description": "The temperature to set",
        "constraint": {
          "constraintType": "NestedParameterSetOptions",
          "options": [
            [
              {
                "name": "value",
                "description": "The value of temperature in Celsius",
                "constraint": {
                  "constraintType": "Numeric",
                  "minValue": 0,
                  "maxValue": 32,
                  "stepSize": 0.5,
                  "suggestedDefault": 24
                }
              },
              {
                "name": "scale",
                "description": "the Celsius scale",
                "constraint": {
                  "constraintType": "StaticSet",
                  "options": [
                    {
                      "data": "CELSIUS",
                      "displayName": "Celsius"
                    }
                  ]
                }
              }
            ]
          ],
          "defaultOption": [
            {
              "name": "scale",
              "description": "the Fahrenheit scale",
              "constraint": {
                "constraintType": "StaticSet",
                "options": [
                  {
                    "data": "FAHRENHEIT",
                    "displayName": "Fahrenheit"
                  }
                ]
              }
            },
            {
              "name": "value",
              "description": "The value of temperature in Fahrenheit",
              "constraint": {
                "constraintType": "Numeric",
                "minValue": 30,
                "maxValue": 90,
                "stepSize": 1,
                "suggestedDefault": 70
              }
            }
          ]
        }
      }

Mais mes compétences sont trop légères pour l’appel avec les options, mais le début sera je pense :

SmarthomeCommand?command=setTargetTemperature&targetTemperature[…]

Pour les investigation si cela en tente certains, je préconise d’essayer de simplifier et d’éviter les option et donc de tester en Fahrenheit, dans le doute prenez une valeur de 30, 31 ou 32 qui sont des valeur commune aux 2 plages Fahrenheit/Celsius.

Utilisez également des intervalle « entier » car la stepSize en Fahrenheit est de 1

Vérifiez bien également que la valeur que vous testez, est bien une valeur admise par le thermostat car par exemple 32 Fahrenheit correspond a 0°C

bonjour,
J’avais fait des tests le weekend dernier justement en essayant les options sans résultat.
je pense que on ne pourra pas échapper a activer l’option Celcius ou Fahrenheit , mais je n’arrive pas à enchainer le couple value et scale

{
  "directive": {
    "header": {
      "namespace": "Alexa.ThermostatController",
      "name": "SetTargetTemperature",
      "messageId": "<message id>",
      "correlationToken": "<an opaque correlation token>",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "<an OAuth2 bearer token>"
      },
      "endpointId": "<endpoint id>",
      "cookie": {}
    },
    "payload": {
      "targetSetpoint": {
        "value": 20.0,
        "scale": "CELSIUS"
      }
    }
  }
}

Je me replonge dessus ce weekend, pas trop le temps la semaine :slight_smile:

@sigalou a poussé une bêta

Bonjour messieurs, je prends connaissance de ceux deuxième plugin qui vient en complément du plugin Alexa-Api pour moi. Mon premier mot est un grand MERCI pour le travail déjà effectué!

C’est vraiment incroyable de pouvoir récupérer des équipements de type Nest et Tuya dans Jeedom pour ma part.

Du coup je serais intéressé pour vous aider (à mon humble niveau) sur la partie thermostats.

la première chose que j’ai constaté est que:

  • Coté Nest thermostat: on a un pas de 1 degrés pour le setTargetTemperature alors que dans Alexa on peut faire un pas de 0,5degrés celsius.
  • coté Tuya: j’ai un homefresh(clim) que j’ai pu ajouter à Alexa et qui grace à vous s’est ajouté à jeedom. Cependant je cherche à voir si la température ambiante peut redescendre jusqu’à jeedom.
    Vu que la clim est dans le garage pour l’instant je n’ai pas encore joué avec ce dernier mais ça va venir :wink:

Bonjour,

Je n’ai pas compris, tu peux me donner une copie d’ecran ou reformuler ? Que voudrais tu ?

Pas compris non plus ?!
Tu peux me donner une copie d’ecran ou reformuler ? Que voudrais tu ?

Bonjour,

Je crois avoir un peu compris…

  • l’histoire de PAS, il faut voir si les demi PAS sont dans Alexa (appli) je pense que oui. si c’est le cas c’est la faute de Nest thermostat qui a mal défini le paramètre dans leur plugin et nous n’y pouvons rien.
    Si ce n’est pas le cas c’est un réglage de ton widget (valeur interdite, arrondi, etc…) et comme il n’y a pas de widget dédier a cela c’est ceux par défaut de Jeedom et la aussi nous n’y pouvons rien. ==> il faut un screen

  • tu souhaite récupérer la valeur de la température ambiante fournis par le homefresh, la aussi il faut regardé du coté de Alexa (appli) si l’info est visible, si non même combat (screen aussi), problème de réglage de skill.
    Si oui, l’information est censé être dans l’équipement « temperature », il existe une manière détourné de récupérer l’info via le groupe, où la température moyenne de groupe est disponible. mais pour que cela remonte bien dans alexa-smarthome il est possible qu’il ne doivent y avoir qu’un seul unique équipement dans le groupe.

1 « J'aime »

Bonjour

Effectivement, dans Alexa la température du Nest Thermostat s’affiche correctement (22,5 degrés de température ambiante pour une consigne à 21,5 degré par exemple)
par contre l’export du Nest dans jeedom via ce plugin ne prends pas en compte les demis pas. Du coup ce plugin affiche une température arrondi au degré supérieur (il me semble).

pour l’équipement homefresh qui provient de l’application tuya, exportée dans Alexa, je ne sais pas si la température ambiante est bien présente dans Alexa. L’équipement est actuellement déconnecté et rangé dans le garage. Je m’en occuperai aux beaux jours

en tout cas tout ça reste très prometteur. faudra un peu de patience et de test mais je reste très confient

Merci pour le travail fourni

au plaisir, repasse quand tu veux.

Bonjour,

est ce possible de tester le plugin sur 2/3j avant de l’acheter? Je voulais trouver une alternative à la solution officielle qui implique un abonnement au service pour piloter mon Jeedom depuis Alexa en vocal mais je ne suis pas certain si je ne trouverai pas de limitations dans ce cas sur cette commande etc…

Merci et bon we à tous

Bonjour, pour un plugin à 4€ ? sur lequel uniquement 2.4€ sont versés à son concepteur.
C’est avec plaisir que je te l’offre.
Fais moi un message privé.
Bon we

5 « J'aime »

Bonjour,

rappel, pas de rapport avec le plugin officiel, il ne fonctionne pas dans le meme sens :

Officiel = envoi tes équipement Jeedom dans Alexa
Sigalou = récupère les équipement Alexa dans Jeedom

Bonjour,

Effectivement c est plutôt le 2e cas que je cherche aka pouvoir contrôler mes équipements Jeedom depuis Alexa. Je vais du coup m abonner au service pour tester le cas officiel qui semble convenir.

Merci à tous

en revanche je te conseil quand meme le plugin de Sigalou, pouvoir faire dire ce que tu veux a tes echo, et faire des interaction vocal a tes echo pour controler jeedom, c’est classe aussi :sunglasses:

Et puis ca permet aussi d’integrer a jeedom, des équipements non compatible Jeedom, mais compatible alexa

Donc sans ce plugin, on ne peut piloter les équipements Jeedom depuis les Alexa? Qu est ce que tu entends par « Intéractions vocales » entre elles?? ou vraiment vers Jeedom?

Merci

avec le plugin de sigalou, tu as une « connexion » avec les appareils echo, tu peux les contrôler, puis avoir les dernières commande vocal que tu leur a faite, et dans les option tu peux activer les interactions Jeedom, et avoir des automatisme derriere.

Certain utilise ca pour contrôler tous leurs équipements Jeedom en vocal, mais c’est assez complexe. Moi j’en ai fait des plus simple pour interagir avec mes enfants dans leur chambre, ex :

« Alexa, repete a <personne/piece> descend on mange »

Alexa va repondre : je ne comprend pas, puis jeedom, va voir que c’est une commande pour lui, puis va récupérer « descend on mange », puis executer un faire parler sur l’echo de la piece correspondent.

Donc oui les interaction permettent le controle, mais pas l’integration comme « equipement ».

Tu pourrais également lancer des scenario alexa depuis jeedom, changer les alarme, modifier le volume, produire des sons (ma sonnette zigbee, faite sonner un carillons sur les enceintes de la maison dans la piece adequate en fonction des personnes qui dorment etc.