[Article] Integration Alexa dans home assistant (avec Nabu Casa)

Bonjour à tous les passionnés de Home Assistant !

J’ai le plaisir de partager avec vous un nouvel article pour la communauté sur l’intégration d’Alexa dans Home Assistant via Nabu Casa.

:link: Lien de l’article :

Dans cet article, j’aborde plusieurs points clés :

  1. Une présentation de Nabu Casa et ses avantages
  2. Un guide étape par étape pour configurer l’intégration Alexa
  3. Comment exposer vos entités Home Assistant à Alexa
  4. Des conseils pour créer des routines Alexa efficaces avec vos appareils HA

L’objectif de cet article est de faciliter l’intégration entre ces deux écosystèmes populaires et d’ouvrir de nouvelles possibilités pour votre maison connectée.

N’hésitez pas à partager vos expériences ou à poser des questions. Vos retours sont précieux pour continuer à améliorer le contenu et aider la communauté !

D’autres articles arriveront bientôt sur des possibilités plus avancées entre Alexa et Home Assistant :shushing_face:

7 « J'aime »

Bonjour, merci pour l’article fort intéressant.

Pour ma part, cela fonctionne quand je passe via le Mode Visuel/Gui mais pas en Mode manuel.

Que ce soit directement dans configuration.yaml ou dans alexa.yaml (alexa: !include alexa.yaml) je n’ai rien qui remonte sur l’application Alexa

Mon code est le suivant :

alexa:
  filter:
    include_entities:
      - sensor.sonde_temperature_cuisine
      - sensor.sonde_bureau_temperature
  entity_config:
    sensor.sonde_temperature_cuisine:
      name: temperature cuisine
      description: Température de la cuisine
      display_categories: TEMPERATURE_SENSOR
    sensor.sonde_bureau_temperature:
      name: temperature bureau
      description: Température du bureau
      display_categories: TEMPERATURE_SENSOR

Pourrais tu fournir ton configuration.yaml (en cachant ce qui pourrais être perso concernant ton installation)

@barto_95 merci pour ton retour, voici les informations demandées

Résumé
# Loads default set of integrations. Do not remove.
default_config:

alexa:
  filter:
    include_entities:
      - sensor.sonde_temperature_cuisine
      - sensor.sonde_bureau_temperature
  entity_config:
    sensor.sonde_temperature_cuisine:
      name: temperature cuisine
      description: Température de la cuisine
      display_categories: TEMPERATURE_SENSOR
    sensor.sonde_bureau_temperature:
      name: temperature bureau
      description: Température du bureau
      display_categories: TEMPERATURE_SENSOR
binary_sensor:
  - platform: meteoalarm
    country: "france"
    province: "XXX"
    language: "fr-FR"

influxdb:
  host: a0d7b954-influxdb
  port: 8086
  database: myelectricaldata
  username : myelectricaldata
  password: myelectricaldata
  max_retries: 3
  default_measurement: state

# notification SMS
notify:
  - name: SMS_Free_Domotique
    platform: free_mobile
    username: XXXX
    access_token: XXX

battery_notes:
  enable_autodiscovery: true
  show_all_devices: false
  enable_replaced: true
  default_battery_low_threshold: 10
  battery_increase_threshold: 25
  hide_battery: false
  round_battery: false

#### Prix carburant ####
homeassistant:
  customize:
   sensor.station_auchan_XX_e10:
    entity_picture: /local/logos/Logo_Auchan_(2015).svg
   sensor.station_auchan_XXX_sp98:
    entity_picture: /local/logos/Logo_Auchan_(2015).svg
   sensor.station_casino_supermache_sp98:
    entity_picture: /local/logos/CASINO.png
   sensor.station_casino_supermache_e10:
    entity_picture: /local/logos/CASINO.png

# Load frontend themes from the themes folder
frontend:
  themes: !include_dir_merge_named themes
  extra_module_url:
    - /local/card-mod.js
    - /config/www/community/hass-bha-icons/hass-bha-icons.js
#card-mod pour menu mobile
    - /config/www/community/lovelace-card-mod/card-mod.js
# layout-card pour présentations et mobile
    - /config/www/community/lovelace-layout-card'
# mini gauge card
    - /config/www/community/lovelace-mini-gauge-card/mini-gauge-card.js
# Stack in card
    - /config/www/community/stack-in-card/stack-in-card.js
# Prix carburants
    - /local/flex-table-card.js

automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
template: !include templates.yaml
rest: !include rest.yaml
sensor: !include sensors.yaml
shell_command: !include shell_command.yaml

et si je mets :

Résumé
alexa: !include alexa.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
template: !include templates.yaml
rest: !include rest.yaml
sensor: !include sensors.yaml
shell_command: !include shell_command.yaml

Dans le fichier alexa.yaml (à la racine)

Résumé
alexa:
  filter:
    include_entities:
      - sensor.sonde_temperature_cuisine
      - sensor.sonde_bureau_temperature
  entity_config:
    sensor.sonde_temperature_cuisine:
      name: temperature cuisine
      description: Température de la cuisine
      display_categories: TEMPERATURE_SENSOR
    sensor.sonde_bureau_temperature:
      name: temperature bureau
      description: Température du bureau
      display_categories: TEMPERATURE_SENSOR

Rien ne ce passe du côté d’Alexa.

@lepalois Déjà, il ne faut pas répéter le Alexa: dans ton fichier Alexa.yaml, et réduire l’indentation d’un cran quand tu fais des includes:

Résumé
filter:
  include_entities:
    - sensor.sonde_temperature_cuisine
    - sensor.sonde_bureau_temperature

Ensuite, je ne suis pas sûr qu’Alexa comprenne bien les sensors… Pour moi l’objectif c’est plutôt de lui exposer des devices sur lesquels agir… (des switchs, des lampes, des volets, etc…) plutôt que des sensors… As tu essayé sans la partie personnalisation, avec juste le filter (comme dans mon exemple ci dessus) pour voir si ça marche?

1 « J'aime »

@barto_95 , Super article !

Les étapes pour permettre à Alexa d’interagir avec HA sont super bien décrites, bravo et merci !

En particulier, la partie sur les routines Alexa est très bien détaillée.
J’ajoute juste un point que tu n’as pas mentionné mais qui est très puissant: les scripts HA peuvent remonter dans Alexa comme des scenes. On peut ainsi, en créant des routines Alexa comme tu l’as mentionné, lancer vocalement des scripts pour lancer des scenarios complexes ou piloter des entités qu’Alexa ne saurait pas piloter nativement.

J’en profite pour faire le lien vers ce que j’ai fait sur ma presentation: un petit descriptif de ce qu’on a fait chez nous vis à vis d’Alexa: Présentation + [Mon Dashboard] BBE - #4 par BBE

Globalement on a le même type de mise en place (sans Nabu Casa, mais le principe est similaire), mais j’y ai glissé quelques info supplémentaires qui peuvent être un complément intéressant à cet article pour tous les types d’installation:

  • Comment utiliser Alexa via Home assistant (via Alexa_media player), grosso modo le mode inverse de ce que tu décris, piloter Alexa depuis HA:
    Ceci permet à HA de piloter les amazon echo / echo dot en mode media player, mais aussi de faire des notifications (avec quelques astuces pour faire chuchoter Alexa la nuit par exemple).
    Ceci permet aussi de récupérer les capteurs connectés aux amazon echo/echo dot (les capteurs de temperature en particulier) et de récupérer des infos (les alarmes programmées par exemple).

  • Penser à bien déclarer dans les bonnes pieces dans l’appli Alexa les éléments Home assistant et les enceintes amazon (echo/echo dot/etc…). Ceci permet de donner des ordres plus naturels aux echo/echo dots: ainsi lorsqu’on dit « Alexa allume la lumière », l’amazon echo qui capte la commande n’allumera que les lumières appartenant à la même pièce qu’elle. C’est hyper naturel si on a plusieurs echo reparti dans plusieurs pièces… il suffit de dire a chaque fois « Alexa allume la lumière » pour que la lumière s’allume dans la pièce où on est uniquement… Ou encore « Alexa allume la cuisine » pour que seules les lumières de la cuisine s’allument…

  • Comment récupérer dans Home assistant les capteurs de présences générés par les echo / echo dot.

Si d’autres ont trouvé d’autres astuces entre HA et Alexa, ça peut être une bonne idée de les proposer ici aussi…

Merci @BBE, je viens de faire comme tu as préconisé mais cela ne fonctionne pas.
Je vais tester avec autres chose que les capteurs de température.
Même si comme dit plus haut cela fonctionne en Mode Visuel/Gui mais pas en Mode manuel.

Difficile pour moi de t’aider plus car je ne passes pas par NabuCasa, et je ne suis pas sur que le filtrage marche exactement pareil… Typiquement moi je n’ai pas mis la partie personnalisation dans mon fichier de filtrage…

2 « J'aime »

Tout cela arrivera dans un prochain article pour l’intégration de alexa media player et même plus :slight_smile:

1 « J'aime »

Top ! j’ai hate !

Concernant Alexa en général (c’est valable pour le media player comme pour le controle vocal), je pense qu’il manque un petit disclaimer/avertissement sur les aspects 100% cloud.

Par ex celui que j’ai mis dans mon lien au dessus… Pour bien rappeler que contrairement à la philo home assistant, tout ce qui a trait à Alexa nécessite le cloud et ne tournera pas en local… Ca peut paraitre evident, mais il ne faut tout de même pas l’oublier…

Avertissement sur le cloud...

Contrairement aux solutions qui commencent à émerger depuis 2023 (année de la voix), Alexa n’est pas disponible en local, et tant que personne n’aura « jailbreaké » les amazon echo, il y a peu de chance que ceci le devienne. C’est donc une partie de la domotique qui est 100% dépendante de:

  • l’accès de Home assistant à internet (box, routeur, fibre, etc…)
  • la disponibilité des serveurs d’amazon (le cloud !)

C’est donc une chose à garder en tête:

  • Les commandes vocales via Alexa/echo sont interprétées sur les serveurs d’amazon via le web avant d’arriver à votre home assistant => elles seront perdues en cas de perte de l’accès web ou de l’indisponibilité des serveurs amazon. Il vous faut donc toujours un autre moyen de piloter votre domotique en cas de panne.

  • Les envois d’information (media player, notifications par ex) vers Alexa/echo sont interprétées sur les serveurs d’amazon via le web avant de sortir de votre enceinte => elles seront perdues en cas de perte de l’accès web ou de l’indisponibilité des serveurs amazon. Ne bâtissez pas un système d’alarme critique sur des notifications Alexa.…

  • Les sensors remontés depuis les Alexa/echo sont interprétés sur les serveurs d’amazon via le web avant d’arriver à votre home assistant => ils seront perdus en cas de perte de l’accès web ou de l’indisponibilité des serveurs amazon. Ne bâtissez pas d’automatisations critiques sur ces senseurs.

1 « J'aime »