Commande Thermostat

Bonjour @sigalou

Est il possible de rajouter les commandes Mode et Vitesse ?

{
  "directive": {
    "header": {
      "namespace": "Alexa.ThermostatController",
      "name": "SetThermostatMode",
      "messageId": "<message id>",
      "correlationToken": "<an opaque correlation token>",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "<an OAuth2 bearer token>"
      },
      "endpointId": "<endpoint id>",
      "cookie": {}
    },
    "payload": {
      "thermostatMode" : {
        "value": "COOL"
      }
    }
  }
}
{
 "namespace": "Alexa.RangeController",
 "instance": "Fan.Speed",
 "name": "rangeValue",
 "value": 10
}

Salut @Didier3L

Mode @skillix est prêt, on va l’implémenté, vitesse on regarde après.

@Didier3L as-tu un vrai équipement détecté nativement par Alexa ?

Si oui, quel modèle ? des screens Alexa seraient les bienvenues, car moi je fais tout avec des virtuels, et selon ce que je vois, pas de vitesse dans un thermostat. Fan.speed est pour moi sur un équipement ventilateur, et ca c’est facile.

Donc pour moi, une « vraie clim » détecter par Alexa sera dans ces conditions, découper en plusieurs équipement. Confirmes-tu ou tout est dans le thermostat ?

bonjour @skillix

Je possède une climatisation multi-split Toshiba.
Unité extérieure - RAS-4M27U2AVG-E
4 Split Seiya - RAS-B13-J2KVG-E

les climatisations sont pilotables grace à une app IOS

Je peux également les piloter à la voix grâce à la Skill officiel de Toshiba

Voici les commandes vocales possibles :

allume [Nom Climatisation]
éteins [Nom Climatisation]

règle [Nom Climatisation] sur automatique
règle [Nom Climatisation] sur chauffage
règle [Nom Climatisation] sur refroidissement

règle la température [Nom Climatisation] sur 23
(ne fonctionne pas en mode ventilation et déshumidification)

augmente la température de [Nom Climatisation] de 1 degré
diminue la température de [Nom Climatisation] de 1 degré

règle la vitesse de [Nom Climatisation] sur 1
règle la vitesse de [Nom Climatisation] sur 2
règle la vitesse de [Nom Climatisation] sur 3
règle la vitesse de [Nom Climatisation] sur 4
règle la vitesse de [Nom Climatisation] sur 5
règle la vitesse de [Nom Climatisation] sur 6 (auto)
règle la vitesse de [Nom Climatisation] sur 7 (silence / fonction Quiet )

quelle est la température de [Nom Climatisation] ?
(renvoie la température de la pièce)

quelle est le mode de [Nom Climatisation] ?

sur combien est réglé [Nom Climatisation] ?
(renvoi le mode et la température de consigne)


Alexa remonte les clims comme un Thermostat

Si tu veux plus d’infos, n’hésite pas :wink:

merci, laisse ton doigt sur image

un menu caché apparaitra en bas

voici le menu magique :smile:
image


image

ok parfait, donc le ventilateur est bien pousser dans le thermostat par Toshiba.

Moi j’ai une Daikin avec l’ancien module wifi, incompatible avec Alexa, je passe donc par Jeedom (ash plugin-alexa) qui permet d’envoyer iniquement les paramètre suivants :

image

Il me semble que @Loic avait prévu de reprendre, mais comme il n’a pas Alexa, cela limite un peu.

Quand le mode sera au point j’essayerais de simuler en ventilateur, mais j’ai un petit doute quand je regarde les paramétrages :

image

un dernier point dans Alexa smart home, dans le détails de l’équipement (menu a droite) tu retrouve toutes les fonction du menu caché ? (pour les détecter et ajouter les commandes automatiquement)

Oui
image

parfait, mais le plus intéressant, est que il est déclaré chez Alexa comme ventilateur, pas comme thermostat :wink:

donc il est plus probable qu’on puisse ajouter un thermostat a un ventilateur et non l’inverse comme on le pensais

Merci beaucoup à vous deux :wink:

je suppose donc que tu n’a pas ce logo image dans smarthome ?

non
image

Il y a une api chez Daikin pour pouvoir la piloter ?

oui Daikin Online Controller, mais ils n’ont pas mis a jour pour se connecter a alexa et google, ils ont préféré faire une nouvelle appli avec les nouveau modules wifi …

Mais bon je me débrouille avec le plugin Jeedom Daikin, et le plugin Alexa, pour les envoyer sur Amazon

Ne sachant pas si le plugin Smarthome allait pouvoir traiter toutes les commandes de ma clin, j’avais travaillé sur un virtuel qui envoyait la commande voulue avec la fonction « Parler à alexa »

voici le virtuel
image

Le bouton « Envoyer la commande » lance un scénario qui transforme la commande en phrase

Mais cela devenait une usine à gaz :smile:

Bon j’y suis presque, mais, je n’ai pas réussi a avoir les vrais paramètres.

J’ai fais un ventilateur virtuel dans Jeedom en corrigeant un bug de ahs (@Loic au passage)

Ligne 67 - mauvais skill

'FAN' => array('name' => __('Ventilateur',__FILE__) ,'skills' =>array('RangeController')),

Ligne 76 - mauvais nom

'VACUUM_CLEANER' => array('name' => __('Aspirateur',__FILE__) ,'skills' =>array('PowerController','ModeController','InventoryLevelSensor')),

Mais cette « simulation » me limite a utiliser un slider pour le ventilateur (au lieu des noms de vitesse)

Donc pour finaliser j’ai besoin que tu active les paramètres avancés :
image

puis requêteur infos:
image

Recherche ton équipement dans :
image

Tu devrais avoir un truc du genre:

{
                      "capabilityType": "AVSInterfaceCapability",
                      "type": "AlexaInterface",
                      "version": "3",
                      "properties": {
                        "supported": [
                          {
                            "name": "rangeValue"
                          }
                        ],
                        "proactivelyReported": false,
                        "retrievable": true,
                        "readOnly": false
                      },
                      "configuration": {
                        "supportedRange": {
                          "minimumValue": 0,
                          "maximumValue": 100,
                          "precision": 1
                        },
                        "unitOfMeasure": "Alexa.Unit.Percent",
                        "presets": [],
                        "unitOfMeasureLabel": {
                          "value": {
                            "assetId": "Alexa.Unit.Percent"
                          },
                          "@type": "asset"
                        }
                      },
                      "resources": {
                        "friendlyNames": [
                          {
                            "value": {
                              "assetId": "Alexa.Setting.Opening"
                            },
                            "@type": "asset"
                          }
                        ]
                      },
                      "instance": "Blind.Lift",
                      "semantics": {
                        "actionMappings": [
                          {
                            "@type": "ActionsToDirective",
                            "actions": [
                              "Alexa.Actions.Close"
                            ],
                            "directive": {
                              "name": "SetRangeValue",
                              "payload": {
                                "rangeValue": 0
                              }
                            }
                          },
                          {
                            "@type": "ActionsToDirective",
                            "actions": [
                              "Alexa.Actions.Open"
                            ],
                            "directive": {
                              "name": "SetRangeValue",
                              "payload": {
                                "rangeValue": 100
                              }
                            }
                          },
                          {
                            "@type": "ActionsToDirective",
                            "actions": [
                              "Alexa.Actions.Lower"
                            ],
                            "directive": {
                              "name": "AdjustRangeValue",
                              "payload": {
                                "rangeValueDelta": -10,
                                "rangeValueDeltaDefault": false
                              }
                            }
                          },
                          {
                            "@type": "ActionsToDirective",
                            "actions": [
                              "Alexa.Actions.Raise"
                            ],
                            "directive": {
                              "name": "AdjustRangeValue",
                              "payload": {
                                "rangeValueDelta": 10,
                                "rangeValueDeltaDefault": false
                              }
                            }
                          }

Mais toi a la place de Blind.Lift tu dois avoir Fan.Speed, mais je voudrais savoir si toi de ton conté si tu as la liste des valeur possible au lieu de mes valeurs min et max (de mon slider)

Bonsoir

J’ai bien coché « activer les fonctions réservées aux utilisateurs expérimentés »
Mais je ne trouve pas requêteur infos

Par contre j’ai trouvé un fichier smarthomeEntities.json dans le plugin


      "capabilityType": "AVSInterfaceCapability",
                      "type": "AlexaInterface",
                      "version": "3",
                      "properties": {
                        "supported": [
                          {
                            "name": "rangeValue"
                          }
                        ],
                        "proactivelyReported": false,
                        "retrievable": true,
                        "readOnly": false
                      },
                      "configuration": {
                        "supportedRange": {
                          "minimumValue": 1,
                          "maximumValue": 7,
                          "precision": 1
                        },
                        "unitOfMeasure": "",
                        "presets": [
                          {
                            "rangeValue": 1,
                            "presetResources": {
                              "friendlyNames": [
                                {
                                  "value": {
                                    "assetId": "Alexa.Value.Low"
                                  },
                                  "@type": "asset"
                                }
                              ]
                            }
                          },
                          {
                            "rangeValue": 2,
                            "presetResources": {
                              "friendlyNames": [
                                {
                                  "value": {
                                    "text": "Low Plus",
                                    "locale": "en-US"
                                  },
                                  "@type": "text"
                                }
                              ]
                            }
                          },
                          {
                            "rangeValue": 3,
                            "presetResources": {
                              "friendlyNames": [
                                {
                                  "value": {
                                    "assetId": "Alexa.Value.Medium"
                                  },
                                  "@type": "asset"
                                }
                              ]
                            }
                          },
                          {
                            "rangeValue": 4,
                            "presetResources": {
                              "friendlyNames": [
                                {
                                  "value": {
                                    "text": "Medium Plus",
                                    "locale": "en-US"
                                  },
                                  "@type": "text"
                                }
                              ]
                            }
                          },
                          {
                            "rangeValue": 5,
                            "presetResources": {
                              "friendlyNames": [
                                {
                                  "value": {
                                    "assetId": "Alexa.Value.High"
                                  },
                                  "@type": "asset"
                                }
                              ]
                            }
                          },
                          {
                            "rangeValue": 6,
                            "presetResources": {
                              "friendlyNames": [
                                {
                                  "value": {
                                    "assetId": "Alexa.Setting.Auto"
                                  },
                                  "@type": "asset"
                                }
                              ]
                            }
                          },
                          {
                            "rangeValue": 7,
                            "presetResources": {
                              "friendlyNames": [
                                {
                                  "value": {
                                    "assetId": "Alexa.Setting.Quiet"
                                  },
                                  "@type": "asset"
                                }
                              ]
                            }
                          }
                        ]
                      },
                      "resources": {
                        "friendlyNames": [
                          {
                            "value": {
                              "assetId": "Alexa.Setting.FanSpeed"
                            },
                            "@type": "asset"
                          }
                        ]
                      },
                      "instance": "Fan.Speed",
                      "interfaceName": "Alexa.RangeController"
                    }
                  ],
                  "applianceTypes": [
                    "FAN",
                    "THERMOSTAT",
                    "TEMPERATURE_SENSOR"
                  ],
                  "isEnabled": true,
                  "aliases": [
                    {

le requêteur info est en bas de alexai-api, mais c’est pareil.

Parfait, on a bien le min/max, mais aussi les friendlyNames a voir si on peu les utiliser…

Dans la liste des commandes info, tu dois avoir un rangeValue, il prend une valeur numérique 1-7 ou le nom ?

dalleur quelles sont toutes les commandes infos que remonte l’équipement en dehors de celles-ci?

Bonjour,
Ca sera corrigé dans la beta de demain

1 « J'aime »