An intent is a description of a user’s intention. Intents are generated by user actions, like asking Amazon Echo to turn on a light.

Architectural overview of intents in Home Assistant

Intents are fired by components that receive them from external sources/services. Conversation, Alexa, and Snips are currently sourcing intents.

Any component can handle intents. This makes it very easy for developers to integrate with all voice assistants at once.

Intents are implemented using the homeassistant.helpers.intent.Intent class. It contains the following properties:

Name Type Description
hass Home Assistant The Home Assistant instance that fired the intent.
platform string The platform that fired the intent
intent_type string The type (name) of the intent
slots dictionary Contains the slot values keyed by slot name.
text_input string Optional. The raw text input that initiated the intent.

Description of the slots dictionary values.

Name Type Description
Value anything Value of the slot.