The Alexa integration allows users to control the entities via the Home Assistant Smart Home skill for Alexa. This means that you can say things like “Alexa, turn on the kitchen light” to control your local Home Assistant.
To use this integration, you need to have:
- The cloud component set up. Learn more
- Have Cloud component Alexa support enabled. This can be done on the Cloud page inside Home Assistant.
- An Alexa enabled device like the Amazon Echo
- Activated the Home Assistant Smart Home skill via the Alexa app: From the Alexa App on your phone, go to Skills, add, find “Home Assistant Smart Home” and add it. You will be prompted to link to your Nabu Casa account.
- Once activated, tell Alexa to discover new devices: “Alexa, discover new devices”
Entities can be configured through the UI by using the “manage entities” link within the Alexa settings card. From here you can see how many entities are exposed in the upper right corner, as well as toggle domains on or off in order to expose or unexpose them all at once. You can then expose an individual entity from a domain, for example. Your choices are then synced automatically.
Currently, the following domains are available to be used with Alexa:
alarm_control_panel(alarm control panels must not require an arm code)
fan(supports on/off and set speed)
lock(lock and unlock, but unlock is untested as Amazon has disabled unlock for now)
media_player(play, pause, stop, set volume, adjust volume, next track, and previous track)
You can use
configuration.yaml to configure the entities that are being shown to Alexa and how they are exposed.
# Example configuration.yaml entry configuring Alexa cloud: alexa: filter: include_entities: - alarm_control_panel.house - light.kitchen - light.kitchen_left include_domains: - switch - alarm_control_panel exclude_entities: - switch.outside entity_config: light.kitchen: name: Custom Name for Alexa description: The light in the kitchen switch.stairs: display_categories: LIGHT
alexa: (map) (Optional) Configuration options for the Amazon Alexa integration. filter: (map) (Optional) description: Filters for entities to include/exclude from Alexa. include_entities: (list) (Optional) description: Entity IDs to include. include_domains: (list) (Optional) Domains to include. exclude_entities: (list) (Optional) Entity IDs to exclude. exclude_domains: (list) (Optional) Domains to exclude. entity_config: (map) (Optional) Entity specific configuration for Alexa. ENTITY_ID: (map) (Optional) Entity to configure. name: (string) (Optional) Name of entity to show in Alexa. description: (string) (Optional) Description of entity to show in Alexa. display_categories: (string) (Optional) The display category to use in Alexa. Available categories