mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-19 07:17:14 +00:00
Merge branch 'current' into rc
This commit is contained in:
commit
adba5ecd62
2
Gemfile
2
Gemfile
@ -3,7 +3,7 @@ source 'https://rubygems.org'
|
|||||||
ruby '> 2.5.0'
|
ruby '> 2.5.0'
|
||||||
|
|
||||||
group :development do
|
group :development do
|
||||||
gem 'rake', '13.0.6'
|
gem 'rake', '13.1.0'
|
||||||
gem 'jekyll', '4.3.2'
|
gem 'jekyll', '4.3.2'
|
||||||
gem 'compass', '1.0.3'
|
gem 'compass', '1.0.3'
|
||||||
gem 'sass-globbing', '1.1.5'
|
gem 'sass-globbing', '1.1.5'
|
||||||
|
@ -81,7 +81,7 @@ GEM
|
|||||||
rack (2.2.8)
|
rack (2.2.8)
|
||||||
rack-protection (3.1.0)
|
rack-protection (3.1.0)
|
||||||
rack (~> 2.2, >= 2.2.4)
|
rack (~> 2.2, >= 2.2.4)
|
||||||
rake (13.0.6)
|
rake (13.1.0)
|
||||||
rb-fsevent (0.11.2)
|
rb-fsevent (0.11.2)
|
||||||
rb-inotify (0.10.1)
|
rb-inotify (0.10.1)
|
||||||
ffi (~> 1.0)
|
ffi (~> 1.0)
|
||||||
@ -129,7 +129,7 @@ DEPENDENCIES
|
|||||||
jekyll-sitemap (= 1.4.0)
|
jekyll-sitemap (= 1.4.0)
|
||||||
jekyll-toc (= 0.18.0)
|
jekyll-toc (= 0.18.0)
|
||||||
nokogiri (= 1.15.4)
|
nokogiri (= 1.15.4)
|
||||||
rake (= 13.0.6)
|
rake (= 13.1.0)
|
||||||
sass-globbing (= 1.1.5)
|
sass-globbing (= 1.1.5)
|
||||||
sassc (= 2.1.0)
|
sassc (= 2.1.0)
|
||||||
sinatra (= 3.1.0)
|
sinatra (= 3.1.0)
|
||||||
|
@ -221,13 +221,6 @@ installation:
|
|||||||
- name: "Raspberry Pi 3"
|
- name: "Raspberry Pi 3"
|
||||||
key: "rpi3-64"
|
key: "rpi3-64"
|
||||||
|
|
||||||
tinkerboard:
|
|
||||||
board: ASUS Tinkerboard
|
|
||||||
installation_media: "eMMC module or SD card"
|
|
||||||
variants:
|
|
||||||
- name: "ASUS Tinkerboard"
|
|
||||||
key: "tinker"
|
|
||||||
|
|
||||||
generic-x86-64:
|
generic-x86-64:
|
||||||
board: Generic x86-64
|
board: Generic x86-64
|
||||||
installation_media: "storage device"
|
installation_media: "storage device"
|
||||||
|
@ -6,20 +6,22 @@
|
|||||||
<ul class="divided sidebar-menu">
|
<ul class="divided sidebar-menu">
|
||||||
<li>{% active_link /voice_control/android/ Assist for Android %}</li>
|
<li>{% active_link /voice_control/android/ Assist for Android %}</li>
|
||||||
<li>{% active_link /voice_control/apple/ Assist for Apple %}</li>
|
<li>{% active_link /voice_control/apple/ Assist for Apple %}</li>
|
||||||
|
<li>{% active_link /voice_control/start_assist_from_dashboard/ Starting Assist from your dashboard %}</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="section">
|
<div class="section">
|
||||||
<h1 class="title delta">Voice assistants</h1>
|
<h1 class="title delta">{% active_link /voice_control/ Voice assistants %}</h1>
|
||||||
<ul class="divided sidebar-menu">
|
<ul class="divided sidebar-menu">
|
||||||
<li>{% active_link /voice_control/using_voice_assistants_overview/ Voice assistants: Overview %}</li>
|
|
||||||
<li>{% active_link /voice_control/voice_remote_local_assistant/ Configuring a local assistant %}</li>
|
<li>{% active_link /voice_control/voice_remote_local_assistant/ Configuring a local assistant %}</li>
|
||||||
|
<li>{% active_link /voice_control/voice_remote_cloud_assistant/ Configuring a cloud assistant %}</li>
|
||||||
<li>{% active_link /voice_control/voice_remote_expose_devices/ Exposing devices to voice assistant %}</li>
|
<li>{% active_link /voice_control/voice_remote_expose_devices/ Exposing devices to voice assistant %}</li>
|
||||||
|
<li>{% active_link /voice_control/install_wake_word_add_on/ Enabling a wake word %}</li>
|
||||||
|
<li>{% active_link /voice_control/about_wake_word/ About wake words %}</li>
|
||||||
<li>{% active_link /voice_control/builtin_sentences/ Built-in sentences %}</li>
|
<li>{% active_link /voice_control/builtin_sentences/ Built-in sentences %}</li>
|
||||||
<li>{% active_link /voice_control/custom_sentences/ Custom sentences %}</li>
|
<li>{% active_link /voice_control/custom_sentences/ Custom sentences %}</li>
|
||||||
<li>{% active_link /voice_control/using_tts_in_automation/ Using Piper TTS in automations %}</li>
|
<li>{% active_link /voice_control/using_tts_in_automation/ Using Piper TTS in automations %}</li>
|
||||||
<li>{% active_link /voice_control/assist_create_open_ai_personality/ Creating a personality with OpenAI %}</li>
|
<li>{% active_link /voice_control/assist_create_open_ai_personality/ Creating a personality with OpenAI %}</li>
|
||||||
<li>{% active_link /voice_control/start_assist_from_dashboard/ Starting Assist from your dashboard %}</li>
|
|
||||||
<li>{% active_link /voice_control/troubleshooting/ Troubleshooting Assist %}</li>
|
<li>{% active_link /voice_control/troubleshooting/ Troubleshooting Assist %}</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
@ -17,16 +17,15 @@ To get started, we suggest the ODROID N2+, the board that powers our [Home Assis
|
|||||||
If unavailable, we also recommend the [ODROID C4](https://ameridroid.com/products/odroid-c4?ref=eeb6nfw07e).
|
If unavailable, we also recommend the [ODROID C4](https://ameridroid.com/products/odroid-c4?ref=eeb6nfw07e).
|
||||||
|
|
||||||
|
|
||||||
Home Assistant bundles (US market):
|
Home Assistant bundles (US market):
|
||||||
|
|
||||||
The bundles come with Home Assistant pre-installed.
|
The bundles come with Home Assistant pre-installed.
|
||||||
|
|
||||||
- [ODROID N2+: 2 GB RAM / 16 GB eMMC](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44748729286935?ref=eeb6nfw07e)
|
- [ODROID N2+: 2 GB RAM / 16 GB eMMC](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44748729286935?ref=eeb6nfw07e)
|
||||||
- [ODROID N2+: 4 GB RAM / 64 GB eMMC](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44748729221399?ref=eeb6nfw07e)
|
- [ODROID N2+: 4 GB RAM / 64 GB eMMC](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44748729221399?ref=eeb6nfw07e)
|
||||||
- ODROID M1: 4 GB RAM / 256 GB NVMe / [16 GB µSD](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44929573028119?ref=eeb6nfw07e) or [16 GB eMMC](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44994940567831?ref=eeb6nfw07e)
|
- ODROID M1: 4 GB RAM / 256 GB NVMe / [16 GB µSD](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44929573028119?ref=eeb6nfw07e) or [16 GB eMMC](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44994940567831?ref=eeb6nfw07e)
|
||||||
- ODROID M1: 8 GB RAM / 256 GB NVMe / [16 GB µSD](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44929573093655?ref=eeb6nfw07e) or [16 GB eMMC](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44994940633367?ref=eeb6nfw07e)
|
- ODROID M1: 8 GB RAM / 256 GB NVMe / [16 GB µSD](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44929573093655?ref=eeb6nfw07e) or [16 GB eMMC](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44994940633367?ref=eeb6nfw07e)
|
||||||
- [ODROID M1: 8 GB RAM / 1 TB NVMe / 64 GB eMMC ](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44994940698903?ref=eeb6nfw07e)
|
- [ODROID M1: 8 GB RAM / 1 TB NVMe / 64 GB eMMC ](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44994940698903?ref=eeb6nfw07e)
|
||||||
- ODROID XU4: 2 GB RAM / [32 GB µSD](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44748729352471?ref=eeb6nfw07e) or [16 GB eMMC](https://ameridroid.com/products/odroid-n2-home-assistant-blue-bundle-limited-edition?variant=44748782305559?ref=eeb6nfw07e)
|
|
||||||
|
|
||||||
Variants without pre-installed Home Assistant:
|
Variants without pre-installed Home Assistant:
|
||||||
|
|
||||||
@ -43,16 +42,6 @@ Variants without pre-installed Home Assistant:
|
|||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if page.installation_type == 'tinkerboard' %}
|
|
||||||
|
|
||||||
### Suggested hardware
|
|
||||||
|
|
||||||
We will need a few things to get started with installing Home Assistant. The links below lead to Amazon US. If you’re not in the US, you should be able to find it in web stores in your country.
|
|
||||||
|
|
||||||
- [Asus Tinkerboard S](https://amzn.to/3fFIcbI)
|
|
||||||
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if page.installation_type == 'generic-x86-64' %}
|
{% if page.installation_type == 'generic-x86-64' %}
|
||||||
|
|
||||||
<div class='note'>
|
<div class='note'>
|
||||||
|
9
source/_includes/integrations/google_api.md
Normal file
9
source/_includes/integrations/google_api.md
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
{% capture name %}{{ include.name | default: page.title }}{% endcapture %}
|
||||||
|
{% capture domain %}{{ include.domain | default: page.ha_domain }}{% endcapture %}
|
||||||
|
{% capture google_dev_console_link %}{{ include.google_dev_console_link | default: page.google_dev_console_link }}{% endcapture %}
|
||||||
|
{% capture api %}{{ include.api | default: page.api }}{% endcapture %}
|
||||||
|
{% capture api_link %}{{ include.api_link | default: page.api_link }}{% endcapture %}
|
||||||
|
|
||||||
|
|
||||||
|
1. Go the Google Developers Console [{{ api }}]({{ api_link }}) {% if page.api2 %} and [{{ page.api2 }}]({{ page.api2_link }}) {% endif %}.
|
||||||
|
2. Confirm the project and **Enable** the API.
|
54
source/_includes/integrations/google_client_secret.md
Normal file
54
source/_includes/integrations/google_client_secret.md
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
{% capture name %}{{ include.name | default: page.title }}{% endcapture %}
|
||||||
|
{% capture domain %}{{ include.domain | default: page.ha_domain }}{% endcapture %}
|
||||||
|
{% capture google_dev_console_link %}{{ include.google_dev_console_link | default: page.google_dev_console_link }}{% endcapture %}
|
||||||
|
{% capture api %}{{ include.api | default: page.api }}{% endcapture %}
|
||||||
|
{% capture api_link %}{{ include.api_link | default: page.api_link }}{% endcapture %}
|
||||||
|
|
||||||
|
|
||||||
|
### Scenario 1: You already have credentials
|
||||||
|
|
||||||
|
In this case, all you need to do is enable the API:
|
||||||
|
|
||||||
|
1. Go the Google Developers Console [{{ api }}]({{ api_link }}) {% if page.api2 %} and [{{ page.api2 }}]({{ page.api2_link }}) {% endif %}.
|
||||||
|
2. Confirm the project and **Enable** the API.
|
||||||
|
3. Continue with the steps described in the [Configuration](#configuration) section.
|
||||||
|
### Scenario 2: You do not have credentials set up yet
|
||||||
|
|
||||||
|
In this case, you need to generate a client secret first:
|
||||||
|
|
||||||
|
{% details "To generate client ID and client secret" %}
|
||||||
|
|
||||||
|
This section explains how to generate a client ID and client secret on
|
||||||
|
[Google Developers Console]({{ google_dev_console_link }}).
|
||||||
|
|
||||||
|
1. First, go to the Google Developers Console to enable [{{ api }}]({{ api_link }}) {% if page.api2 %} and [{{ page.api2 }}]({{ page.api2_link }}) {% endif %}.
|
||||||
|
2. Select **Create project**, enter a project name and select **Create**.
|
||||||
|
3. **Enable** the {{ api }} and select **Create credentials**.
|
||||||
|
4. Navigate to **APIs & Services** (left sidebar) > [Credentials](https://console.cloud.google.com/apis/credentials).
|
||||||
|
5. In the left sidebar, select **OAuth consent screen**.
|
||||||
|
- Select **External** and **Create**.
|
||||||
|
- Set the **App name** (the name of the application asking for consent) to anything you want, e.g., *Home Assistant*.
|
||||||
|
6. You then need to select a **Support email**.
|
||||||
|
- From the dropdown menu, select your email address.
|
||||||
|
7. Under **Developer contact information**, enter your email address (the same as above is fine).
|
||||||
|
8. Scroll to the bottom and select **Save and continue**.
|
||||||
|
- You don't have to fill out anything else, or it may enable additional review.
|
||||||
|
9. You will then be automatically taken to the **Scopes** page.
|
||||||
|
- You do not need to add any scopes here. Select **Save and continue** to move to the **Test users** page.
|
||||||
|
- You do not need to add anything to the **Test users** page. Select **Save and continue**, which will take you to the **Summary** page.
|
||||||
|
- Select **Back to dashboard**.
|
||||||
|
10. Select **OAuth consent screen** again and under **Publishing status**, select **Publish app**.
|
||||||
|
- Otherwise your credentials will expire every 7 days.
|
||||||
|
11. Make sure **Publishing status** is set to **In production**.
|
||||||
|
12. In the left sidebar, select **Credentials**, then select **Create credentials** (at the top of the screen), then select **OAuth client ID**.
|
||||||
|
13. Set the **Application type** to **Web application** and give this credential set a name (like "Home Assistant Credentials").
|
||||||
|
14. Add `https://my.home-assistant.io/redirect/oauth` to **Authorized redirect URIs** then select **Create**.
|
||||||
|
- This is not a placeholder. It is the URI that must be used.
|
||||||
|
15. You will then be presented with a pop-up saying **OAuth client created**, showing **Your client ID** and **Your client secret**.
|
||||||
|
- Make a note of these (for example, copy and paste them into a text editor), as you will need them shortly.
|
||||||
|
- Once you have noted these strings, select **OK**.
|
||||||
|
- If you need to find these credentials again at any point, then navigate to **APIs & Services** > **Credentials**, and you will see **Home Assistant Credentials** (or whatever you named them in the previous step) under **OAuth 2.0 Client IDs**.
|
||||||
|
- To view both the **Client ID** and **Client secret**, select the pencil icon. This will take you to the settings page for these credentials, and the information will be on the right-hand side of the page.
|
||||||
|
16. Congratulations! You are now the keeper of a client secret. Guard it in your treasure box.
|
||||||
|
|
||||||
|
{% enddetails %}
|
22
source/_includes/integrations/google_oauth.md
Normal file
22
source/_includes/integrations/google_oauth.md
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
{% capture name %}{{ include.name | default: page.title }}{% endcapture %}
|
||||||
|
{% capture domain %}{{ include.domain | default: page.ha_domain }}{% endcapture %}
|
||||||
|
{% capture google_dev_console_link %}{{ include.google_dev_console_link | default: page.google_dev_console_link }}{% endcapture %}
|
||||||
|
{% capture api %}{{ include.api | default: page.api }}{% endcapture %}
|
||||||
|
{% capture api_link %}{{ include.api_link | default: page.api_link }}{% endcapture %}
|
||||||
|
{% capture title %}{{ include.title | default: page.title }}{% endcapture %}
|
||||||
|
|
||||||
|
The integration setup will next give you instructions to enter the [Application Credentials](/integrations/application_credentials/) (OAuth Client ID and Client Secret) and authorize Home Assistant to connect to {{ title }}.
|
||||||
|
|
||||||
|
{% details "OAuth and device authorization steps" %}
|
||||||
|
|
||||||
|
1. Continue through the steps of selecting the account you want to authorize.
|
||||||
|
|
||||||
|
2. **NOTE**: You may get a message telling you that the app has not been verified and you will need to acknowledge that in order to proceed.
|
||||||
|
|
||||||
|
3. You can now see the details of what you are authorizing Home Assistant to access with two options at the bottom. Select **Continue**.
|
||||||
|
|
||||||
|
4. The page will now display **Link account to Home Assistant?**, note **Your instance URL**. If this is not correct, refer to [My Home Assistant](/integrations/my). If everything looks good, select **Link Account**.
|
||||||
|
|
||||||
|
5. You may close the window, and return back to Home Assistant where you should see a **Success!** message from Home Assistant.
|
||||||
|
|
||||||
|
{% enddetails %}
|
@ -17,8 +17,8 @@ The Counter integration allows one to count occurrences fired by automations.
|
|||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
The preferred way to configure counter helpers is via the user interface. To add one, go to
|
The preferred way to configure counter helpers is via the user interface. To add one, go to
|
||||||
**{% my helpers title="Settings -> Devices & Services -> Helpers" %}** and click the add button;
|
**{% my helpers title="Settings > Devices & Services > Helpers" %}** and click the add button;
|
||||||
next choose the **{% my config_flow_start domain=counter title="Counter" %}** option.
|
next choose the **{% my config_flow_start domain=page.ha_domain title=page.title %}** option.
|
||||||
|
|
||||||
To be able to add **Helpers** via the user interface you should have
|
To be able to add **Helpers** via the user interface you should have
|
||||||
`default_config:` in your `configuration.yaml`, it should already be there by
|
`default_config:` in your `configuration.yaml`, it should already be there by
|
||||||
@ -77,7 +77,7 @@ counter:
|
|||||||
|
|
||||||
Pick an icon that from [Material Design Icons](https://pictogrammers.com/library/mdi/) to use for your input and prefix the name with `mdi:`. For example `mdi:car`, `mdi:ambulance` or `mdi:motorbike`.
|
Pick an icon that from [Material Design Icons](https://pictogrammers.com/library/mdi/) to use for your input and prefix the name with `mdi:`. For example `mdi:car`, `mdi:ambulance` or `mdi:motorbike`.
|
||||||
|
|
||||||
### Restore State
|
### Restore state
|
||||||
|
|
||||||
This integration will automatically restore the state it had prior to Home Assistant stopping as long as your entity has `restore` set to `true`, which is the default. To disable this feature, set `restore` to `false`.
|
This integration will automatically restore the state it had prior to Home Assistant stopping as long as your entity has `restore` set to `true`, which is the default. To disable this feature, set `restore` to `false`.
|
||||||
|
|
||||||
|
@ -26,10 +26,10 @@ You need to configure developer credentials to allow Home Assistant to access yo
|
|||||||
This section explains how to generate a Client ID and Client Secret on
|
This section explains how to generate a Client ID and Client Secret on
|
||||||
[Google Developers Console](https://console.developers.google.com/start/api?id=calendar).
|
[Google Developers Console](https://console.developers.google.com/start/api?id=calendar).
|
||||||
|
|
||||||
1. First go to the [Google Developers Console](https://console.developers.google.com/start/api?id=calendar)
|
1. First go to the [Google Developers Console](https://console.developers.google.com/start/api?id=calendar).
|
||||||
2. The wizard will ask you to choose a project to manage your application. Select a project and click continue.
|
2. The wizard will ask you to choose a project to manage your application. Select a project and click continue.
|
||||||
3. Verify that your calendar API was enabled and click 'Go to credentials'
|
3. Verify that your calendar API was enabled and click 'Go to credentials'
|
||||||
4. Navigate to APIs & Services (left sidebar) > [Credentials](https://console.cloud.google.com/apis/credentials)
|
4. Navigate to APIs & Services (left sidebar) > [Credentials](https://console.cloud.google.com/apis/credentials).
|
||||||
5. Click on the field on the left of the screen, **OAuth Consent Screen**.
|
5. Click on the field on the left of the screen, **OAuth Consent Screen**.
|
||||||
6. Select **External** and **Create**.
|
6. Select **External** and **Create**.
|
||||||
7. Set the *App Name* (the name of the application asking for consent) to anything you want e.g. *Home Assistant*.
|
7. Set the *App Name* (the name of the application asking for consent) to anything you want e.g. *Home Assistant*.
|
||||||
@ -49,7 +49,6 @@ This section explains how to generate a Client ID and Client Secret on
|
|||||||
|
|
||||||
The integration setup will next give you instructions to enter the [Application Credentials](/integrations/application_credentials/) (OAuth Client ID and Client Secret) and authorize Home Assistant to access your account and Calendars.
|
The integration setup will next give you instructions to enter the [Application Credentials](/integrations/application_credentials/) (OAuth Client ID and Client Secret) and authorize Home Assistant to access your account and Calendars.
|
||||||
|
|
||||||
|
|
||||||
{% details "OAuth and Device Authorization steps" %}
|
{% details "OAuth and Device Authorization steps" %}
|
||||||
|
|
||||||
1. The first step shows a link and a code.
|
1. The first step shows a link and a code.
|
||||||
|
@ -13,6 +13,9 @@ ha_integration_type: service
|
|||||||
ha_platforms:
|
ha_platforms:
|
||||||
- notify
|
- notify
|
||||||
ha_quality_scale: platinum
|
ha_quality_scale: platinum
|
||||||
|
google_dev_console_link: https://console.developers.google.com/apis/api/embeddedassistant.googleapis.com/overview
|
||||||
|
api: Google Assistant API
|
||||||
|
api_link: https://console.developers.google.com/apis/api/embeddedassistant.googleapis.com/overview
|
||||||
---
|
---
|
||||||
|
|
||||||
The Google Assistant SDK integration allows Home Assistant to interact with Google Assistant. If you want to use Google Assistant (for example, from your phone or Google Home device) to interact with your Home Assistant managed devices, then you want the [Google Assistant](/integrations/google_assistant) integration.
|
The Google Assistant SDK integration allows Home Assistant to interact with Google Assistant. If you want to use Google Assistant (for example, from your phone or Google Home device) to interact with your Home Assistant managed devices, then you want the [Google Assistant](/integrations/google_assistant) integration.
|
||||||
@ -42,33 +45,9 @@ This integration allows:
|
|||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
You need to configure developer credentials to allow Home Assistant to access your Google Account.
|
You need to configure developer credentials to allow Home Assistant to access your Google Account.
|
||||||
These credentials are the same as the ones for [Nest](/integrations/nest) or [Google Sheets](/integrations/google_sheets).
|
These credentials are the same as the ones for [Nest](/integrations/nest) or [Google Sheets](/integrations/google_sheets), [YouTube](/integrations/youtube), and [Google Mail](/integrations/google_mail).
|
||||||
If you have already set up credentials, you can do step 1 and then skip to step 13 on the below instructions.
|
|
||||||
|
|
||||||
{% details "Generate Client ID and Client Secret" %}
|
{% include integrations/google_client_secret.md %}
|
||||||
|
|
||||||
This section explains how to generate a Client ID and Client Secret on
|
|
||||||
[Google Developers Console](https://console.developers.google.com/apis/api/embeddedassistant.googleapis.com/overview).
|
|
||||||
|
|
||||||
1. First go to the Google Developers Console to enable [Google Assistant API](https://console.developers.google.com/apis/api/embeddedassistant.googleapis.com/overview)
|
|
||||||
2. Select an existing project or create a new one from the dropdown menu in the upper left corner.
|
|
||||||
3. Click to enable this API.
|
|
||||||
4. Click on the field on the left of the screen, **OAuth Consent Screen**.
|
|
||||||
5. Select **External** and **Create**.
|
|
||||||
6. Set the _App Name_ (the name of the application asking for consent) to anything you want e.g. _Home Assistant_.
|
|
||||||
7. You then need to select a _Support email_. To do this, simply click the drop down box and select your email address.
|
|
||||||
8. You finally need to complete the section: _Developer contact information_. To do this, simply enter your email address (same as above is fine).
|
|
||||||
9. Scroll to the bottom and click **Save and Continue**. Don't have to fill out anything else or it may enable additional review.
|
|
||||||
10. You will then be automatically taken to the Scopes page. You do not need to add any scopes here so click Save and Continue to move to the Optional info page. You do not need to add anything to the Optional info page so click Save and Continue which will take you to the Summary page. Click Back to Dashboard.
|
|
||||||
11. Click **OAuth consent screen** again and set _Publish Status_ to **Production** otherwise your credentials will expire every 7 days.
|
|
||||||
12. Make sure **Publishing status** is set to production.
|
|
||||||
13. Click **Credentials** in the menu on the left hand side of the screen, then click **Create credentials** (at the top of the screen), then select _OAuth client ID_.
|
|
||||||
14. Set the Application type to _Web application_ and give this credential set a name (like "Home Assistant Credentials").
|
|
||||||
15. Add https://my.home-assistant.io/redirect/oauth to _Authorized redirect URIs_ then click **Create**.
|
|
||||||
16. You will then be presented with a pop-up saying _OAuth client created_ showing _Your Client ID_ and _Your Client Secret_. Make a note of these (for example, copy and paste them into a text editor) as you will need these shortly. Once you have noted these strings, click **OK**. If you need to find these credentials again at any point then simply navigate to _APIs & Services > Credentials_ and you will see _Home Assistant Credentials_ (or whatever you named them in the previous step) under _OAuth 2.0 Client IDs_. To view both the _Client ID_ and _Client secret_, click on the pencil icon, this will take you to the settings page for these credentials and the information will be on the right hand side of the page.
|
|
||||||
17. Double check that the _Google Assistant API_ has been automatically enabled. To do this, select **Library** from the menu, then search for _Google Assistant API_. If it is enabled you will see _API Enabled_ with a green tick next to it. If it is not enabled, then enable it.
|
|
||||||
|
|
||||||
{% enddetails %}
|
|
||||||
|
|
||||||
{% include integrations/config_flow.md %}
|
{% include integrations/config_flow.md %}
|
||||||
|
|
||||||
@ -109,6 +88,7 @@ The easiest way to check if the integration is working is to check [My Google Ac
|
|||||||
- Routines don't work.
|
- Routines don't work.
|
||||||
- Broadcast doesn't work with IPv6.
|
- Broadcast doesn't work with IPv6.
|
||||||
- Broadcast to specific rooms often doesn't work for non-English languages.
|
- Broadcast to specific rooms often doesn't work for non-English languages.
|
||||||
|
- Commands that need to verify your identity through voice match do not work.
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
|
@ -13,6 +13,9 @@ ha_platforms:
|
|||||||
ha_codeowners:
|
ha_codeowners:
|
||||||
- '@tkdrob'
|
- '@tkdrob'
|
||||||
ha_integration_type: service
|
ha_integration_type: service
|
||||||
|
google_dev_console_link: https://console.cloud.google.com/apis/library/gmail.googleapis.com
|
||||||
|
api: Gmail API
|
||||||
|
api_link: https://console.cloud.google.com/apis/library/gmail.googleapis.com
|
||||||
---
|
---
|
||||||
|
|
||||||
The Google Mail integration allows you to connect your [Google Mail](https://mail.google.com) to Home Assistant. The integration adds a service to allow you to set an email auto-response for when you go on vacation. A `notify` service is also added, allowing you to draft or send emails in plain text.
|
The Google Mail integration allows you to connect your [Google Mail](https://mail.google.com) to Home Assistant. The integration adds a service to allow you to set an email auto-response for when you go on vacation. A `notify` service is also added, allowing you to draft or send emails in plain text.
|
||||||
@ -20,53 +23,14 @@ The Google Mail integration allows you to connect your [Google Mail](https://mai
|
|||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
You need to configure developer credentials to allow Home Assistant to access your Google Account.
|
You need to configure developer credentials to allow Home Assistant to access your Google Account.
|
||||||
These credentials are the same as the ones for [Nest](/integrations/nest) and [Google Sheets](/integrations/google_sheets).
|
These credentials are the same as the ones for [Nest](/integrations/nest) and [Google Sheets](/integrations/google_sheets) and [YouTube](/integrations/youtube).
|
||||||
These are not the same as the one for [Google Calendar](/integrations/google).
|
These are not the same as the one for [Google Calendar](/integrations/google).
|
||||||
If you have already set up the correct credentials, you can do step 1 and then skip to step 13 on the below instructions.
|
|
||||||
|
|
||||||
{% details "Generate Client ID and Client Secret" %}
|
{% include integrations/google_client_secret.md %}
|
||||||
|
|
||||||
This section explains how to generate a Client ID and Client Secret on
|
|
||||||
[Google Developers Console](https://console.cloud.google.com/apis/library/gmail.googleapis.com).
|
|
||||||
|
|
||||||
1. First, go to the Google Developers Console to enable [Gmail API](https://console.cloud.google.com/apis/library/gmail.googleapis.com)
|
|
||||||
2. The wizard will ask you to choose a project to manage your application. Select a project and select **Continue**.
|
|
||||||
3. Verify that your Gmail API was enabled and select **Go to credentials**.
|
|
||||||
4. Navigate to **APIs & Services** (left sidebar) > [Credentials](https://console.cloud.google.com/apis/credentials)
|
|
||||||
5. Click on the field on the left of the screen, **OAuth Consent Screen**.
|
|
||||||
6. Select **External** and **Create**.
|
|
||||||
7. Set the **App Name** (the name of the application asking for consent) to anything you want, e.g., *Home Assistant*.
|
|
||||||
8. You then need to select a **Support email**. To do this, from the dropdown menu, select your email address.
|
|
||||||
9. You finally need to complete the section: **Developer contact information**. To do this, enter your email address (the same as above is fine).
|
|
||||||
10. Scroll to the bottom and select **Save and Continue**. You don't have to fill out anything else, or it may enable additional review.
|
|
||||||
11. You will then be automatically taken to the **Scopes** page. You do not need to add any scopes here, so select **Save and Continue** to move to the **Optional info** page. You do not need to add anything to the **Optional info** page, so select **Save and Continue**, which will take you to the **Summary** page. Select **Back to Dashboard**.
|
|
||||||
12. Select **OAuth consent screen** again and set *Publish Status* to **Production**. Otherwise your credentials will expire every 7 days.
|
|
||||||
13. Make sure **Publishing status** is set to production.
|
|
||||||
14. Select **Credentials** in the menu on the left-hand side of the screen, then select **Create credentials** (at the top of the screen), then select **OAuth client ID**.
|
|
||||||
15. Set the Application type to *Web application* and give this credential set a name (like "Home Assistant Credentials").
|
|
||||||
16. Add `https://my.home-assistant.io/redirect/oauth` to **Authorized redirect URIs** then select **Create**. This is not a placeholder and is the URI that must be used.
|
|
||||||
17. You will then be presented with a pop-up saying **OAuth client created** showing **Your Client ID** and **Your Client Secret**. Make a note of these (for example, copy and paste them into a text editor), as you will need them shortly. Once you have noted these strings, select **OK**. If you need to find these credentials again at any point, then navigate to **APIs & Services** > **Credentials**, and you will see **Home Assistant Credentials** (or whatever you named them in the previous step) under **OAuth 2.0 Client IDs**. To view both the **Client ID** and **Client secret**, select the pencil icon. This will take you to the settings page for these credentials, and the information will be on the right-hand side of the page.
|
|
||||||
18. Double-check that the **Gmail API** has been automatically enabled. To do this, select **Library** from the menu, then search for **Gmail API**. If it is enabled, you will see **API Enabled** with a green tick next to it. If it is not enabled, then enable it.
|
|
||||||
|
|
||||||
{% enddetails %}
|
|
||||||
|
|
||||||
{% include integrations/config_flow.md %}
|
{% include integrations/config_flow.md %}
|
||||||
|
|
||||||
The integration setup will next give you instructions to enter the [Application Credentials](/integrations/application_credentials/) (OAuth Client ID and Client Secret) and authorize Home Assistant to access your Google Mail.
|
{% include integrations/google_oauth.md %}
|
||||||
|
|
||||||
{% details "OAuth and Device Authorization steps" %}
|
|
||||||
|
|
||||||
1. Continue through the steps of selecting the account you want to authorize.
|
|
||||||
|
|
||||||
2. **NOTE**: You may get a message telling you that the app has not been verified and you will need to acknowledge that in order to proceed.
|
|
||||||
|
|
||||||
3. You can now see the details of what you are authorizing Home Assistant to access with two options at the bottom. Select **Continue**.
|
|
||||||
|
|
||||||
4. The page will now display **Link account to Home Assistant?**, note **Your instance URL**. If this is not correct, refer to [My Home Assistant](/integrations/my). If everything looks good, select **Link Account**.
|
|
||||||
|
|
||||||
5. You may close the window, and return back to Home Assistant where you should see a **Success!** message from Home Assistant.
|
|
||||||
|
|
||||||
{% enddetails %}
|
|
||||||
|
|
||||||
## Troubleshooting
|
## Troubleshooting
|
||||||
|
|
||||||
|
@ -10,6 +10,11 @@ ha_domain: google_sheets
|
|||||||
ha_codeowners:
|
ha_codeowners:
|
||||||
- '@tkdrob'
|
- '@tkdrob'
|
||||||
ha_integration_type: service
|
ha_integration_type: service
|
||||||
|
google_dev_console_link: https://console.developers.google.com/start/api?id=drive
|
||||||
|
api: Google Drive API
|
||||||
|
api_link: https://console.developers.google.com/start/api?id=drive
|
||||||
|
api2: Google Sheets API
|
||||||
|
api2_link: https://console.cloud.google.com/apis/enableflow?apiid=sheets.googleapis.com
|
||||||
---
|
---
|
||||||
|
|
||||||
The Google Sheets integration allows you to connect your [Google Drive](https://drive.google.com) to Home Assistant. The integration adds a service to allow you to append rows to a Sheets document. The idea is that you can store data on there for further processing. When you set up a config entry, your drive will have a new sheet called Home Assistant. You can then rename this to whatever you like.
|
The Google Sheets integration allows you to connect your [Google Drive](https://drive.google.com) to Home Assistant. The integration adds a service to allow you to append rows to a Sheets document. The idea is that you can store data on there for further processing. When you set up a config entry, your drive will have a new sheet called Home Assistant. You can then rename this to whatever you like.
|
||||||
@ -20,59 +25,21 @@ The integration currently only has access to that one document that is created d
|
|||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
You need to configure developer credentials to allow Home Assistant to access your Google Account.
|
You need to configure developer credentials to allow Home Assistant to access your Google Account.
|
||||||
These credentials are the same as the ones for [Nest](/integrations/nest), [YouTube](/integrations/youtube) and [Google Mail](/integrations/google_mail).
|
These credentials are the same as the ones for [Nest](/integrations/nest), [YouTube](/integrations/youtube), and [Google Mail](/integrations/google_mail).
|
||||||
These are not the same as the one for [Google Calendar](/integrations/google).
|
These are not the same as the one for [Google Calendar](/integrations/google).
|
||||||
If you have already set up the correct credentials, you can do step 1 and then skip to step 13 on the below instructions.
|
|
||||||
|
|
||||||
{% details "Generate Client ID and Client Secret" %}
|
{% include integrations/google_client_secret.md %}
|
||||||
|
|
||||||
This section explains how to generate a Client ID and Client Secret on
|
|
||||||
[Google Developers Console](https://console.developers.google.com/start/api?id=drive).
|
|
||||||
|
|
||||||
1. First go to the Google Developers Console to enable [Google Drive API](https://console.developers.google.com/start/api?id=drive) and [Google Sheets API](https://console.cloud.google.com/apis/enableflow?apiid=sheets.googleapis.com)
|
|
||||||
2. The wizard will ask you to choose a project to manage your application. Select a project and click continue.
|
|
||||||
3. Verify that your drive API was enabled and click 'Go to credentials'
|
|
||||||
4. Navigate to APIs & Services (left sidebar) > [Credentials](https://console.cloud.google.com/apis/credentials)
|
|
||||||
5. Click on the field on the left of the screen, **OAuth Consent Screen**.
|
|
||||||
6. Select **External** and **Create**.
|
|
||||||
7. Set the *App Name* (the name of the application asking for consent) to anything you want e.g. *Home Assistant*.
|
|
||||||
8. You then need to select a *Support email*. To do this, simply click the drop down box and select your email address.
|
|
||||||
9. You finally need to complete the section: *Developer contact information*. To do this, simply enter your email address (same as above is fine).
|
|
||||||
10. Scroll to the bottom and click **Save and Continue**. Don't have to fill out anything else or it may enable additional review.
|
|
||||||
11. You will then be automatically taken to the Scopes page. You do not need to add any scopes here so click Save and Continue to move to the Optional info page. You do not need to add anything to the Optional info page so click Save and Continue which will take you to the Summary page. Click Back to Dashboard.
|
|
||||||
12. Click **OAuth consent screen** again and set *Publish Status* to **Production** otherwise your credentials will expire every 7 days.
|
|
||||||
13. Make sure **Publishing status** is set to production.
|
|
||||||
14. Click **Credentials** in the menu on the left hand side of the screen, then click **Create credentials** (at the top of the screen), then select *OAuth client ID*.
|
|
||||||
15. Set the Application type to *Web application* and give this credential set a name (like "Home Assistant Credentials").
|
|
||||||
16. Add https://my.home-assistant.io/redirect/oauth to *Authorized redirect URIs* then click **Create**. This is not a placeholder and is the URI that must be used.
|
|
||||||
17. You will then be presented with a pop-up saying *OAuth client created* showing *Your Client ID* and *Your Client Secret*. Make a note of these (for example, copy and paste them into a text editor) as you will need these shortly. Once you have noted these strings, click **OK**. If you need to find these credentials again at any point then simply navigate to *APIs & Services > Credentials* and you will see *Home Assistant Credentials* (or whatever you named them in the previous step) under *OAuth 2.0 Client IDs*. To view both the *Client ID* and *Client secret*, click on the pencil icon, this will take you to the settings page for these credentials and the information will be on the right hand side of the page.
|
|
||||||
18. Double check that the *Google Drive API* has been automatically enabled. To do this, select **Library** from the menu, then search for *Google Drive API*. If it is enabled you will see *API Enabled* with a green tick next to it. If it is not enabled, then enable it.
|
|
||||||
|
|
||||||
{% enddetails %}
|
|
||||||
|
|
||||||
{% include integrations/config_flow.md %}
|
{% include integrations/config_flow.md %}
|
||||||
|
|
||||||
The integration setup will next give you instructions to enter the [Application Credentials](/integrations/application_credentials/) (OAuth Client ID and Client Secret) and authorize Home Assistant to access your Google Sheets.
|
{% include integrations/google_oauth.md %}
|
||||||
|
|
||||||
{% details "OAuth and Device Authorization steps" %}
|
|
||||||
|
|
||||||
1. Continue through the steps of selecting the account you want to authorize.
|
|
||||||
|
|
||||||
2. **NOTE**: You may get a message telling you that the app has not been verified and you will need to acknowledge that in order to proceed.
|
|
||||||
|
|
||||||
3. You can now see the details of what you are authorizing Home Assistant to access with two options at the bottom. Click **Continue**.
|
|
||||||
|
|
||||||
4. The page will now display *Link account to Home Assistant?*, note *Your instance URL*. If this is not correct, please refer to [My Home Assistant](/integrations/my). If everything looks good, click **Link Account**.
|
|
||||||
|
|
||||||
5. You may close the window, and return back to Home Assistant where you should see a *Success!* message from Home Assistant.
|
|
||||||
|
|
||||||
{% enddetails %}
|
|
||||||
|
|
||||||
## Troubleshooting
|
## Troubleshooting
|
||||||
|
|
||||||
If you have an error with your credentials you can delete them in the [Application Credentials](/integrations/application_credentials/) user interface.
|
If you have an error with your credentials you can delete them in the [Application Credentials](/integrations/application_credentials/) user interface.
|
||||||
|
|
||||||
### Video Tutorial
|
### Video tutorial
|
||||||
|
|
||||||
This video tutorial explains how to set up the Google Sheets integration and how you can add data from Home Assistant to a Google Sheet.
|
This video tutorial explains how to set up the Google Sheets integration and how you can add data from Home Assistant to a Google Sheet.
|
||||||
|
|
||||||
<lite-youtube videoid="hgGMgoxLYwo" videotitle="How to use Google Sheets in Home Assistant - TUTORIAL" posterquality="maxresdefault"></lite-youtube>
|
<lite-youtube videoid="hgGMgoxLYwo" videotitle="How to use Google Sheets in Home Assistant - TUTORIAL" posterquality="maxresdefault"></lite-youtube>
|
||||||
|
@ -14,7 +14,7 @@ ha_integration_type: helper
|
|||||||
|
|
||||||
The `input_number` integration allows the user to define values that can be controlled via the frontend and can be used within conditions of automation. The frontend can display a slider, or a numeric input box. Changes to the slider or numeric input box generate state events. These state events can be utilized as `automation` triggers as well.
|
The `input_number` integration allows the user to define values that can be controlled via the frontend and can be used within conditions of automation. The frontend can display a slider, or a numeric input box. Changes to the slider or numeric input box generate state events. These state events can be utilized as `automation` triggers as well.
|
||||||
|
|
||||||
The preferred way to configure an input number is via the user interface at **{% my helpers title="Settings > Devices & Services > Helpers" %}**. Click the add button and then choose the **{% my config_flow_start domain=input_number title="Number" %}** option.
|
The preferred way to configure an input number is via the user interface at **{% my helpers title="Settings > Devices & Services > Helpers" %}**. Click the add button and then choose the **{% my config_flow_start domain="input_number" title="Number" %}** option.
|
||||||
|
|
||||||
To be able to add **Helpers** via the user interface you should have `default_config:` in your `configuration.yaml`, it should already be there by default unless you removed it.
|
To be able to add **Helpers** via the user interface you should have `default_config:` in your `configuration.yaml`, it should already be there by default unless you removed it.
|
||||||
If you removed `default_config:` from you configuration, you must add `input_number:` to your `configuration.yaml` first, then you can use the UI.
|
If you removed `default_config:` from you configuration, you must add `input_number:` to your `configuration.yaml` first, then you can use the UI.
|
||||||
|
@ -322,9 +322,40 @@ This feature is enabled by the following permissions:
|
|||||||
|
|
||||||
- *Allow Home Assistant to know when there's a camera event*
|
- *Allow Home Assistant to know when there's a camera event*
|
||||||
- *Allow Home Assistant to know when there's a doorbell event*
|
- *Allow Home Assistant to know when there's a doorbell event*
|
||||||
- *Other permissions in the Nest or Google Home apps*.
|
- *Other permissions and notification settings in the Nest or Google Home apps*.
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
### Google Home App Notification Settings
|
||||||
|
|
||||||
|
The Google Home App Notifications settings control not only which notifications are sent to your phone,
|
||||||
|
but also what gets published to the Pub/Sub feed.
|
||||||
|
|
||||||
|
For example, if you enable *Away-only notifications*, Home Assistant will only receive events when your phone is away from home.
|
||||||
|
|
||||||
|
Another thing that may not be intuitive, is that seeing the event in your device history does not mean it was published to the feed.
|
||||||
|
However, if you are getting push notifications, the settings are likely working.
|
||||||
|
|
||||||
|
Note: The exact settings and effect they have on the feed may vary by camera model or app version.
|
||||||
|
|
||||||
|
|
||||||
|
If you are still not getting notifications, you can read this [troubleshooting guide from Google]<!-- textlint-disable -->
|
||||||
|
(https://support.google.com/googlenest/answer/9230439#zippy=%2Cyour-camera-detected-something-but-you-didnt-get-a-camera-alert)
|
||||||
|
<!-- textlint-enable -->
|
||||||
|
|
||||||
|
{% details "Google Home App Notification Settings" %}
|
||||||
|
|
||||||
|
|
||||||
|
| Google Home App Setting | Notes |
|
||||||
|
| ------------------------ | :-----------------------------------------------------------------------------------: |
|
||||||
|
| Notifications: Push | Required for any detection event to be published |
|
||||||
|
| Notifications: Away-Only | Events will only be published when a user is detected as away from home |
|
||||||
|
| Seen: Motion | Required for `Motion` events to be published |
|
||||||
|
| Seen: Person | Required for `Person` events to be published |
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
{% enddetails %}
|
||||||
|
|
||||||
## Media Source
|
## Media Source
|
||||||
|
|
||||||
The Nest [Media Source](/integrations/media_source) platform allows you to browse clips for recent camera events. Home Assistant is not intended to be a Network Video Recorder (NVR) platform, however, basic support for capturing recent events is supported.
|
The Nest [Media Source](/integrations/media_source) platform allows you to browse clips for recent camera events. Home Assistant is not intended to be a Network Video Recorder (NVR) platform, however, basic support for capturing recent events is supported.
|
||||||
@ -575,6 +606,8 @@ logger:
|
|||||||
|
|
||||||
- It is recommended to let Home Assistant create the Pub/Sub subscription for you. However, if you would like more control you can enter a `subscriber_id` in the configuration. See [Subscribe to Events](https://developers.google.com/nest/device-access/subscribe-to-events) for more instructions on how to manually create a subscription and use the full subscription name in the Home Assistant configuration e.g. `projects/gcp-project-name/subscriptions/subscription-id`
|
- It is recommended to let Home Assistant create the Pub/Sub subscription for you. However, if you would like more control you can enter a `subscriber_id` in the configuration. See [Subscribe to Events](https://developers.google.com/nest/device-access/subscribe-to-events) for more instructions on how to manually create a subscription and use the full subscription name in the Home Assistant configuration e.g. `projects/gcp-project-name/subscriptions/subscription-id`
|
||||||
|
|
||||||
|
- *Not receiving camera motion and person events*: assuming the integration is correctly configured (for example, the oauth and SDM API are set up correctly, you can see camera streams, and permissions are correctly set in [Partner Connections Manager](https://nestservices.google.com/partnerconnections)): If you are then still not seeing events, it's possible you need to adjust the Google Home App settings. Refer to the [Cameras: Automation: Google Home App Settings](#google-home-app-settings) for details.
|
||||||
|
|
||||||
# Works With Nest API
|
# Works With Nest API
|
||||||
|
|
||||||
<div class='note warning'>
|
<div class='note warning'>
|
||||||
|
@ -19,6 +19,10 @@ ha_integration_type: integration
|
|||||||
|
|
||||||
The Vodafone Station integration allows you to control your [Vodafone Station](https://www.vodafone.it/privati/area-supporto/assistenza-dispositivi/vodafone-station.html) based router.
|
The Vodafone Station integration allows you to control your [Vodafone Station](https://www.vodafone.it/privati/area-supporto/assistenza-dispositivi/vodafone-station.html) based router.
|
||||||
|
|
||||||
|
<div class="note">
|
||||||
|
The integration supports only Sercomm models so far.
|
||||||
|
</div>
|
||||||
|
|
||||||
There is support for the following platform types within Home Assistant:
|
There is support for the following platform types within Home Assistant:
|
||||||
|
|
||||||
- **Device tracker** - presence detection by looking at connected devices.
|
- **Device tracker** - presence detection by looking at connected devices.
|
||||||
@ -41,7 +45,7 @@ To change the settings, go to {% my integrations title="**Settings** > **Devices
|
|||||||
|
|
||||||
### Tested models
|
### Tested models
|
||||||
|
|
||||||
This integration was tested against the following models:
|
This integration was tested against the following models from Sercomm:
|
||||||
|
|
||||||
- Vodafone Power Station
|
- Vodafone Power Station (SHG3000)
|
||||||
- Vodafone WiFi 6 Station
|
- Vodafone WiFi 6 Station (RHG3006)
|
||||||
|
@ -35,7 +35,7 @@ Available services: `send_magic_packet`.
|
|||||||
|
|
||||||
#### Service `wake_on_lan.send_magic_packet`
|
#### Service `wake_on_lan.send_magic_packet`
|
||||||
|
|
||||||
Send a _magic packet_ to wake up a device with 'Wake-On-LAN' capabilities.
|
Send a _magic packet_ to wake up a device with 'Wake on LAN' capabilities.
|
||||||
|
|
||||||
| Service data attribute | Optional | Description |
|
| Service data attribute | Optional | Description |
|
||||||
|---------------------------|----------|---------------------------------------------------------|
|
|---------------------------|----------|---------------------------------------------------------|
|
||||||
@ -52,13 +52,13 @@ Sample service data:
|
|||||||
```
|
```
|
||||||
|
|
||||||
<div class='note'>
|
<div class='note'>
|
||||||
This usually only works if the Target Device is connected to the same network. Routing the WakeOnLan packet to a different subnet requires a special configuration on your router or may not be possible.
|
This usually only works if the target device is connected to the same network. Routing the magic packet to a different subnet requires a special configuration on your router or may not be possible.
|
||||||
The Service to Route the packet is most likely named "IP Helper" which may support WakeOnLan, but not all Routers support this.
|
The service to route the packet is most likely named "IP Helper". It may support Wake on LAN, but not all routers support this.
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
## Switch
|
## Switch
|
||||||
|
|
||||||
The `wake_on_lan` (WOL) switch platform allows you to turn on a [WOL](https://en.wikipedia.org/wiki/Wake-on-LAN) enabled computer.
|
The `wake_on_lan` (WOL) switch integration allows you to turn on a [WOL](https://en.wikipedia.org/wiki/Wake-on-LAN) enabled computer.
|
||||||
|
|
||||||
### Switch configuration
|
### Switch configuration
|
||||||
|
|
||||||
@ -133,3 +133,36 @@ switch:
|
|||||||
shell_command:
|
shell_command:
|
||||||
turn_off_TARGET: "ssh hass@TARGET sudo pm-suspend"
|
turn_off_TARGET: "ssh hass@TARGET sudo pm-suspend"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Helper button with automation
|
||||||
|
|
||||||
|
A switch defined with the `wake_on_lan` platform will render in the UI with both 'on' and 'off' clickable actions. If you don't intend to use the `turn_off` functionality, then using a virtual button & automation will look cleaner and less confusing. It will only have one action.
|
||||||
|
|
||||||
|
1. First, define a new helper button.
|
||||||
|
- Go to **{% my helpers title="Settings > Devices & Services > Helpers" %}** and select the **+ Create helper** button. Choose **Button** and give it a name. A button named "Wake PC" will render like this:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
2. Then, create a new automation. Go to **{% my automations title="Settings > Automations & scenes" %}** and select **+ Create Automation**.
|
||||||
|
- The trigger will be on `State` and the entity will be the button you created.
|
||||||
|
- Continuing your example, the trigger YAML will look like this:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
platform: state
|
||||||
|
entity_id:
|
||||||
|
- input_button.wake_pc
|
||||||
|
```
|
||||||
|
|
||||||
|
3. For the action, select **Call service** and choose **Wake on LAN: Send magic packet**.
|
||||||
|
4. Type in the target MAC address.
|
||||||
|
- Do not change the broadcast port unless you've configured your device to listen to a different port.
|
||||||
|
- Continuing our example, the action YAML looks like this:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
service: wake_on_lan.send_magic_packet
|
||||||
|
data:
|
||||||
|
broadcast_port: 9
|
||||||
|
mac: 00:11:22:33:44:55
|
||||||
|
```
|
||||||
|
|
||||||
|
5. Save the automation. Now, when you activate `PRESS` on the helper button in the UI, Home Assistant will send a wake packet to the configured MAC.
|
||||||
|
@ -31,4 +31,7 @@ The value reported is an overall AQ index for the location. The values of the in
|
|||||||
| 101 - 150 | **Unhealthy for Sensitive Groups** | Members of sensitive groups may experience health effects. The general public is not likely to be affected |
|
| 101 - 150 | **Unhealthy for Sensitive Groups** | Members of sensitive groups may experience health effects. The general public is not likely to be affected |
|
||||||
| 151 - 200 | **Unhealthy** | Everyone may begin to experience health effects; members of sensitive groups may experience more serious health effects |
|
| 151 - 200 | **Unhealthy** | Everyone may begin to experience health effects; members of sensitive groups may experience more serious health effects |
|
||||||
| 201 - 300 | **Very unhealthy** | Health warnings of emergency conditions. The entire population is more likely to be affected |
|
| 201 - 300 | **Very unhealthy** | Health warnings of emergency conditions. The entire population is more likely to be affected |
|
||||||
| 301+ | **Hazardous** | Health alert: everyone may experience more serious health effects |
|
| 301+ | **Hazardous** | Health alert: everyone may experience more serious health effects
|
||||||
|
|
||||||
|
|
||||||
|
Further information about AQI can be found [on the EPA's AirNOW website](https://www.airnow.gov/aqi/aqi-basics/).
|
||||||
|
@ -13,6 +13,9 @@ ha_platforms:
|
|||||||
- diagnostics
|
- diagnostics
|
||||||
- sensor
|
- sensor
|
||||||
ha_integration_type: service
|
ha_integration_type: service
|
||||||
|
google_dev_console_link: https://console.cloud.google.com/apis/library/youtube.googleapis.com
|
||||||
|
api: YouTube Data API v3
|
||||||
|
api_link: https://console.cloud.google.com/apis/library/youtube.googleapis.com?project=home-assistant-17698
|
||||||
---
|
---
|
||||||
|
|
||||||
The YouTube integration allows you to connect YouTube channels to Home Assistant.
|
The YouTube integration allows you to connect YouTube channels to Home Assistant.
|
||||||
@ -23,53 +26,14 @@ For every channel you add, it will create sensors for:
|
|||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
To be able to configure the integration, you need to have a YouTube channel.
|
To be able to configure the integration, you need to have a YouTube channel.
|
||||||
How to create one can be found [here](https://support.google.com/youtube/answer/1646861).
|
To learn how to create one, refer to the [YouTube documentation](https://support.google.com/youtube/answer/1646861).
|
||||||
|
|
||||||
You need to configure developer credentials to allow Home Assistant to access your Google Account.
|
You need to configure developer credentials to allow Home Assistant to access your Google Account.
|
||||||
These credentials are the same as the ones for [Nest](/integrations/nest), [Google Mail](/integrations/google_mail) and [Google Sheets](/integrations/google_sheets).
|
These credentials are the same as the ones for [Nest](/integrations/nest), [Google Mail](/integrations/google_mail) and [Google Sheets](/integrations/google_sheets).
|
||||||
These are not the same as the one for [Google Calendar](/integrations/google).
|
These are not the same as the one for [Google Calendar](/integrations/google).
|
||||||
If you have already set up the correct credentials, you can do step 1 and then skip to step 13 on the below instructions.
|
|
||||||
|
|
||||||
{% details "Generate Client ID and Client Secret" %}
|
{% include integrations/google_client_secret.md %}
|
||||||
|
|
||||||
This section explains how to generate a Client ID and Client Secret on
|
|
||||||
[Google Developers Console](https://console.cloud.google.com/apis/library/youtube.googleapis.com).
|
|
||||||
|
|
||||||
1. First, go to the Google Developers Console to enable the [YouTube Data API v3](https://console.cloud.google.com/apis/library/youtube.googleapis.com?project=home-assistant-17698)
|
|
||||||
2. The wizard will ask you to choose a project to manage your application. Select a project and select **Continue**.
|
|
||||||
3. Verify that your YouTube Data API v3 was enabled and select **Go to credentials**.
|
|
||||||
4. Navigate to **APIs & Services** (left sidebar) > [Credentials](https://console.cloud.google.com/apis/credentials)
|
|
||||||
5. Click on the field on the left of the screen, **OAuth Consent Screen**.
|
|
||||||
6. Select **External** and **Create**.
|
|
||||||
7. Set the **App Name** (the name of the application asking for consent) to anything you want, e.g., *Home Assistant*.
|
|
||||||
8. You then need to select a **Support email**. To do this, from the dropdown menu, select your email address.
|
|
||||||
9. You finally need to complete the section: **Developer contact information**. To do this, enter your email address (the same as above is fine).
|
|
||||||
10. Scroll to the bottom and select **Save and Continue**. You don't have to fill out anything else, or it may enable additional review.
|
|
||||||
11. You will then be automatically taken to the **Scopes** page. You do not need to add any scopes here, so select **Save and Continue** to move to the **Optional info** page. You do not need to add anything to the **Optional info** page, so select **Save and Continue**, which will take you to the **Summary** page. Select **Back to Dashboard**.
|
|
||||||
12. Select **OAuth consent screen** again and set *Publish Status* to **Production**. Otherwise your credentials will expire every 7 days.
|
|
||||||
13. Make sure **Publishing status** is set to production.
|
|
||||||
14. Select **Credentials** in the menu on the left-hand side of the screen, then select **Create credentials** (at the top of the screen), then select **OAuth client ID**.
|
|
||||||
15. Set the Application type to **Web application** and give this credential set a name (like "Home Assistant Credentials").
|
|
||||||
16. Add `https://my.home-assistant.io/redirect/oauth` to **Authorized redirect URIs** then select **Create**. This is not a placeholder and is the URI that must be used.
|
|
||||||
17. You will then be presented with a pop-up saying **OAuth client created** showing **Your Client ID** and **Your Client Secret**. Make a note of these (for example, copy and paste them into a text editor), as you will need them shortly. Once you have noted these strings, select **OK**. If you need to find these credentials again at any point, then navigate to **APIs & Services** > **Credentials**, and you will see **Home Assistant Credentials** (or whatever you named them in the previous step) under **OAuth 2.0 Client IDs**. To view both the **Client ID** and **Client secret**, select the pencil icon. This will take you to the settings page for these credentials, and the information will be on the right-hand side of the page.
|
|
||||||
18. Double-check that the **YouTube Data API v3** has been automatically enabled. To do this, select **Library** from the menu, then search for **YouTube Data API v3**. If it is enabled, you will see **API Enabled** with a green tick next to it. If it is not enabled, then enable it.
|
|
||||||
|
|
||||||
{% enddetails %}
|
|
||||||
|
|
||||||
{% include integrations/config_flow.md %}
|
{% include integrations/config_flow.md %}
|
||||||
|
|
||||||
The integration setup will next give you instructions to enter the [Application Credentials](/integrations/application_credentials/) (OAuth Client ID and Client Secret) and authorize Home Assistant to connect to YouTube.
|
{% include integrations/google_oauth.md %}
|
||||||
|
|
||||||
{% details "OAuth and Device Authorization steps" %}
|
|
||||||
|
|
||||||
1. Continue through the steps of selecting the account you want to authorize.
|
|
||||||
|
|
||||||
2. **NOTE**: You may get a message telling you that the app has not been verified and you will need to acknowledge that in order to proceed.
|
|
||||||
|
|
||||||
3. You can now see the details of what you are authorizing Home Assistant to access with two options at the bottom. Select **Continue**.
|
|
||||||
|
|
||||||
4. The page will now display **Link account to Home Assistant?**, note **Your instance URL**. If this is not correct, refer to [My Home Assistant](/integrations/my). If everything looks good, select **Link Account**.
|
|
||||||
|
|
||||||
5. You may close the window, and return back to Home Assistant where you should see a **Success!** message from Home Assistant.
|
|
||||||
|
|
||||||
{% enddetails %}
|
|
||||||
|
@ -10,7 +10,7 @@ is_post: true
|
|||||||
|
|
||||||
<div id='post-comments'></div>
|
<div id='post-comments'></div>
|
||||||
|
|
||||||
{% if page.comments == true %}
|
{% if page.comments == true and site.netlify.branch == "current" %}
|
||||||
<div id='discourse-comments'></div>
|
<div id='discourse-comments'></div>
|
||||||
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
|
@ -222,9 +222,10 @@ layout: null
|
|||||||
|
|
||||||
# Renamed integrations
|
# Renamed integrations
|
||||||
/integrationss/air_pollutants /integrations/air_quality
|
/integrationss/air_pollutants /integrations/air_quality
|
||||||
|
/integrations/calendar.google /integrations/google
|
||||||
/integrations/climacell /integrations/tomorrowio
|
/integrations/climacell /integrations/tomorrowio
|
||||||
/integrations/generic_ip_camera /integrations/generic
|
/integrations/generic_ip_camera /integrations/generic
|
||||||
/integrations/google /integrations/google_translate
|
/integrations/homewizard_energy /integrations/homewizard
|
||||||
/integrations/input_slider /integrations/input_number
|
/integrations/input_slider /integrations/input_number
|
||||||
/integrations/leviton /integrations/leviton_z_wave
|
/integrations/leviton /integrations/leviton_z_wave
|
||||||
/integrations/light.switch /integrations/switch_as_x
|
/integrations/light.switch /integrations/switch_as_x
|
||||||
@ -232,6 +233,7 @@ layout: null
|
|||||||
/integrations/pollen /integrations/iqvia
|
/integrations/pollen /integrations/iqvia
|
||||||
/integrations/polling /integrations/telegram_polling
|
/integrations/polling /integrations/telegram_polling
|
||||||
/integrations/ritassist /integrations/fleetgo
|
/integrations/ritassist /integrations/fleetgo
|
||||||
|
/integrations/senseme /integrations/baf
|
||||||
/integrations/synologydsm /integrations/synology_dsm
|
/integrations/synologydsm /integrations/synology_dsm
|
||||||
/integrations/telegram_chatbot /integrations/telegram_bot
|
/integrations/telegram_chatbot /integrations/telegram_bot
|
||||||
/integrations/vlc-telnet /integrations/vlc_telnet
|
/integrations/vlc-telnet /integrations/vlc_telnet
|
||||||
@ -246,7 +248,7 @@ layout: null
|
|||||||
/docs/assist/apple/ /voice_control/apple/
|
/docs/assist/apple/ /voice_control/apple/
|
||||||
/docs/assist/builtin_sentences/ /voice_control/builtin_sentences/
|
/docs/assist/builtin_sentences/ /voice_control/builtin_sentences/
|
||||||
/docs/assist/custom_sentences/ /voice_control/custom_sentences/
|
/docs/assist/custom_sentences/ /voice_control/custom_sentences/
|
||||||
/docs/assist/using_voice_assistants_overview/ /voice_control/using_voice_assistants_overview/
|
/docs/assist/using_voice_assistants_overview/ /voice_control/
|
||||||
/docs/assist/voice_remote_expose_devices/ /voice_control/voice_remote_expose_devices/
|
/docs/assist/voice_remote_expose_devices/ /voice_control/voice_remote_expose_devices/
|
||||||
/docs/assist/voice_remote_local_assistant/ /voice_control/voice_remote_local_assistant/
|
/docs/assist/voice_remote_local_assistant/ /voice_control/voice_remote_local_assistant/
|
||||||
/docs/assist/troubleshooting/ /voice_control/troubleshooting/
|
/docs/assist/troubleshooting/ /voice_control/troubleshooting/
|
||||||
@ -489,6 +491,7 @@ layout: null
|
|||||||
/integrations/device_tracker.trackr /more-info/removed-integration 301
|
/integrations/device_tracker.trackr /more-info/removed-integration 301
|
||||||
/integrations/dht /more-info/removed-integration 301
|
/integrations/dht /more-info/removed-integration 301
|
||||||
/integrations/digitalloggers /more-info/removed-integration 301
|
/integrations/digitalloggers /more-info/removed-integration 301
|
||||||
|
/integrations/discovery /more-info/removed-integration 301
|
||||||
/integrations/duke_energy /more-info/removed-integration 301
|
/integrations/duke_energy /more-info/removed-integration 301
|
||||||
/integrations/dyson /more-info/removed-integration 301
|
/integrations/dyson /more-info/removed-integration 301
|
||||||
/integrations/edp_redy /more-info/removed-integration 301
|
/integrations/edp_redy /more-info/removed-integration 301
|
||||||
@ -512,8 +515,9 @@ layout: null
|
|||||||
/integrations/htu21d /more-info/removed-integration 301
|
/integrations/htu21d /more-info/removed-integration 301
|
||||||
/integrations/huawei_router /more-info/removed-integration 301
|
/integrations/huawei_router /more-info/removed-integration 301
|
||||||
/integrations/hydroquebec /more-info/removed-integration 301
|
/integrations/hydroquebec /more-info/removed-integration 301
|
||||||
/integrations/ialarm /more-info/removed-integration 301
|
/integrations/ialarm_xr /more-info/removed-integration 301
|
||||||
/integrations/iota /more-info/removed-integration 301
|
/integrations/iota /more-info/removed-integration 301
|
||||||
|
/integrations/lifx_legacy /more-info/removed-integration 301
|
||||||
/integrations/linksys_ap /more-info/removed-integration 301
|
/integrations/linksys_ap /more-info/removed-integration 301
|
||||||
/integrations/linky /more-info/removed-integration 301
|
/integrations/linky /more-info/removed-integration 301
|
||||||
/integrations/liveboxplaytv /more-info/removed-integration 301
|
/integrations/liveboxplaytv /more-info/removed-integration 301
|
||||||
|
@ -2342,6 +2342,24 @@ frontpage_image: /images/frontpage/green-frontpage.png
|
|||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
<a
|
||||||
|
href="https://mediarath.de/products/home-assistant-green-smart-home-hub-2x-usb-gigabit-lan-hmdi-microsd-slot"
|
||||||
|
target="_blank"
|
||||||
|
>
|
||||||
|
<div class="distributor">
|
||||||
|
<div>
|
||||||
|
<div>🇩🇪</div>
|
||||||
|
<div>mediarath</div>
|
||||||
|
<div>Located in Germany</div>
|
||||||
|
</div>
|
||||||
|
<svg width="24" height="24" viewBox="0 0 24 24">
|
||||||
|
<path
|
||||||
|
d="M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z"
|
||||||
|
/>
|
||||||
|
</svg>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
|
||||||
<a
|
<a
|
||||||
href="https://en.m.nu/controllers-smart-hubs/home-assistant-green"
|
href="https://en.m.nu/controllers-smart-hubs/home-assistant-green"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
|
BIN
source/images/assist/assist-daily-summary.png
Normal file
BIN
source/images/assist/assist-daily-summary.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 363 KiB |
BIN
source/images/assist/assist_predefined_wakeword.png
Normal file
BIN
source/images/assist/assist_predefined_wakeword.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 24 KiB |
BIN
source/images/assist/assistants_ha_cloud.png
Normal file
BIN
source/images/assist/assistants_ha_cloud.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 23 KiB |
Binary file not shown.
After Width: | Height: | Size: 264 KiB |
@ -110,27 +110,7 @@ toc: true
|
|||||||
</div>
|
</div>
|
||||||
{% include assets/chevron_right.html %}
|
{% include assets/chevron_right.html %}
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
<h2>ASUS Tinkerboard</h2>
|
|
||||||
<a href="/installation/tinkerboard" class="installations-card">
|
|
||||||
<div class="material-card text">
|
|
||||||
<div class="content-container">
|
|
||||||
<div>
|
|
||||||
<img src="/images/installation/tinkerboard.png">
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<b>ASUS Tinkerboard</b>
|
|
||||||
<ul>
|
|
||||||
<li>Home Assistant Operating System</li>
|
|
||||||
<li>Home Assistant Container</li>
|
|
||||||
<li>Home Assistant Core</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{% include assets/chevron_right.html %}
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
|
|
||||||
<h2>Generic x86-64</h2>
|
<h2>Generic x86-64</h2>
|
||||||
<a href="/installation/generic-x86-64" class="installations-card">
|
<a href="/installation/generic-x86-64" class="installations-card">
|
||||||
@ -229,10 +209,10 @@ toc: true
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h2>Compare Installation Methods</h2>
|
<h2>Compare installation methods</h2>
|
||||||
|
|
||||||
<table class="compare-installations">
|
<table class="compare-installations">
|
||||||
<th></th><th>OS</th><th>Container</th><th>Core</th><th>Supervised</th>
|
<th></th><th>HA OS<sup>1</sup></th><th>Container<sup>1</sup></th><th>Core<sup>1</sup></th><th>Supervised<sup>1</sup></th>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="/docs/automation" target="_blank">Automations</a></td>
|
<td><a href="/docs/automation" target="_blank">Automations</a></td>
|
||||||
<td>✅</td><td>✅</td><td>✅</td><td>✅</td>
|
<td>✅</td><td>✅</td><td>✅</td><td>✅</td>
|
||||||
@ -263,11 +243,11 @@ toc: true
|
|||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="/common-tasks/os/#backups" target="_blank">Backups</a></td>
|
<td><a href="/common-tasks/os/#backups" target="_blank">Backups</a></td>
|
||||||
<td>✅</td><td>✅<sup>1</sup></td><td>✅<sup>1</sup></td><td>✅</td>
|
<td>✅</td><td>✅<sup>2</sup></td><td>✅<sup>2</sup></td><td>✅</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Managed Restore</td>
|
<td>Managed Restore</td>
|
||||||
<td>✅</td><td>❌<sup>2</sup></td><td>❌<sup>2</sup></td><td>✅</td>
|
<td>✅</td><td>❌<sup>3</sup></td><td>❌<sup>3</sup></td><td>✅</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Managed OS</td>
|
<td>Managed OS</td>
|
||||||
@ -275,6 +255,14 @@ toc: true
|
|||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<sub>1: Backups for Home Assistant Core and Home Assistant Container is provided by the <a href="/integrations/backup" target="_blank"><code>backup</code> integration</a>.</sub>
|
<sub>1: Names are abbreviated. The full names of the installation methods are: <ul>
|
||||||
<sub>2: Backups for Home Assistant Core and Home Assistant Container are either a tool to migrate to HAOS or a completely manual restore of the backup.</sub>
|
<li style="margin-top: 0.4em">Home Assistant Operating System</li>
|
||||||
|
<li style="margin-top: 15px">Home Assistant Container</li>
|
||||||
|
<li style="margin-top: 15px">Home Assistant Core</li>
|
||||||
|
<li style="margin-top: 15px">Home Assistant Supervised</li>
|
||||||
|
</ul></sub>
|
||||||
|
<p>
|
||||||
|
<sub>2: Backups for Home Assistant Core and Home Assistant Container is provided by the <a href="/integrations/backup" target="_blank"><code>backup</code> integration</a>.</sub></p>
|
||||||
|
<p>
|
||||||
|
<sub>3: Backups for Home Assistant Core and Home Assistant Container are either a tool to migrate to HAOS or a completely manual restore of the backup.</sub></p>
|
||||||
<p></p>
|
<p></p>
|
||||||
|
@ -1,17 +0,0 @@
|
|||||||
---
|
|
||||||
title: "Asus Tinkerboard"
|
|
||||||
description: "Install Home Assistant on Asus Tinkerboard"
|
|
||||||
installation_type: tinkerboard
|
|
||||||
---
|
|
||||||
{% comment %}
|
|
||||||
Included sections for this page is located under source/_includes/installation
|
|
||||||
{% endcomment %}
|
|
||||||
|
|
||||||
{% assign board = "ASUS Tinkerboard" %}
|
|
||||||
{% assign installation_media = "eMMC module/SD card" %}
|
|
||||||
|
|
||||||
{% include installation/operating_system.md %}
|
|
||||||
{% include installation/container.md %}
|
|
||||||
{% include installation/core.md %}
|
|
||||||
|
|
||||||
_We get commissions for purchases made through links in this post._
|
|
@ -292,6 +292,24 @@ frontpage_image: /images/skyconnect/skyconnect-cover.png
|
|||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
<a
|
||||||
|
href="https://botland.com.pl/centralki-i-bramki-sieciowe/22759-home-assistant-skyconnect-usb-stick-zgodny-z-zigbeematterthread-794677011635.html"
|
||||||
|
target="_blank"
|
||||||
|
>
|
||||||
|
<div class="distributor">
|
||||||
|
<div>
|
||||||
|
<div>🇵🇱</div>
|
||||||
|
<div>Botland</div>
|
||||||
|
<div>Located in Poland</div>
|
||||||
|
</div>
|
||||||
|
<svg width="24" height="24" viewBox="0 0 24 24">
|
||||||
|
<path
|
||||||
|
d="M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z"
|
||||||
|
/>
|
||||||
|
</svg>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
|
||||||
<a
|
<a
|
||||||
href="https://shop.everythingsmart.io/products/home-assistant-skyconnect"
|
href="https://shop.everythingsmart.io/products/home-assistant-skyconnect"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
@ -418,6 +436,24 @@ frontpage_image: /images/skyconnect/skyconnect-cover.png
|
|||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
|
<a
|
||||||
|
href="https://www.robbshop.nl/home-assistant-skyconnect-zigbee-en-thread-usb"
|
||||||
|
target="_blank"
|
||||||
|
>
|
||||||
|
<div class="distributor">
|
||||||
|
<div>
|
||||||
|
<div>🇳🇱</div>
|
||||||
|
<div>Robbshop</div>
|
||||||
|
<div>Located in the Netherlands</div>
|
||||||
|
</div>
|
||||||
|
<svg width="24" height="24" viewBox="0 0 24 24">
|
||||||
|
<path
|
||||||
|
d="M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z"
|
||||||
|
/>
|
||||||
|
</svg>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
|
||||||
<a
|
<a
|
||||||
href="https://www.seeedstudio.com/Home-Assistant-SkyConnect-p-5479.html"
|
href="https://www.seeedstudio.com/Home-Assistant-SkyConnect-p-5479.html"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
|
64
source/voice_control/about_wake_word.markdown
Normal file
64
source/voice_control/about_wake_word.markdown
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
---
|
||||||
|
title: "About wake words"
|
||||||
|
---
|
||||||
|
|
||||||
|
Wake words are special words or phrases that tell a voice assistant that a command is about to be spoken. The device then switches from passive to active listening. Examples are: *Hey Google*, *Hey Siri*, or *Alexa*. Home Assistant supports its own wake words, such as *Hey Nabu*.
|
||||||
|
|
||||||
|
## About the openWakeWord add-on
|
||||||
|
|
||||||
|
Home Assistant’s wake words are leveraging a new project called [openWakeWord] by David Scripka. This project has real-world accuracy, runs on commodity hardware and anyone can [train a basic model of their own wake word][own-wake-word].
|
||||||
|
|
||||||
|
### The challenge
|
||||||
|
|
||||||
|
openWakeWord is created with 4 goals in mind:
|
||||||
|
|
||||||
|
- Be fast enough for real-world usage.
|
||||||
|
- Be accurate enough for real-world usage.
|
||||||
|
- Have a simple model architecture and inference process.
|
||||||
|
- Require little to no manual data collection to train new models.
|
||||||
|
|
||||||
|
### Training the model
|
||||||
|
|
||||||
|
openWakeWord is built around an open source audio embedding model trained by Google and fine-tuned using the text-to-speech system [Piper]. Piper generates many thousands of audio clips for each wake word, creating variations of different speakers. These audio clips are then augmented to sound as if they were spoken in multiple kinds of rooms, at specific distances from a microphone, and with varying speeds. Finally, the clips are mixed with background noise like music, environmental sounds, and conversation before being fed into the training process to generate the wake word model.
|
||||||
|
|
||||||
|
<p class='img'>
|
||||||
|
<img src='/images/blog/2023-10-12-year-of-the-voice-chapter-4/open-wake-word-architecture.png'>
|
||||||
|
Overview of the openWakeWord training pipeline.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
### Supported languages
|
||||||
|
|
||||||
|
OpenWakeWord currently only works for English wake words. This is because there is still a lack of models in other languages with many different speakers. Similar models for other languages can be trained as more multi-speaker models per language become available.
|
||||||
|
|
||||||
|
### openWakeWord in Docker
|
||||||
|
|
||||||
|
If you’re not running Home Assistant OS, openWakeWord is also available as [a Docker container](https://github.com/rhasspy/wyoming-openwakeword#docker-image). Once the container is running, you will need to add the Wyoming integration and point it at its IP address and port (typically 10400).
|
||||||
|
|
||||||
|
## Other wake word engines
|
||||||
|
|
||||||
|
Home Assistant ships with defaults but allows users to configure each part of their voice assistants. This also applies to wake words.
|
||||||
|
|
||||||
|
You can add other wake word engines as an integration or run them as a standalone program that communicates with Home Assistant via the [Wyoming protocol](https://github.com/rhasspy/wyoming).
|
||||||
|
|
||||||
|
<p class='img'>
|
||||||
|
<img src='/images/blog/2023-10-12-year-of-the-voice-chapter-4/wake-word-integration.png'>
|
||||||
|
How wake words integrate into Home Assistant
|
||||||
|
</p>
|
||||||
|
|
||||||
|
As an example, we’re also making the **Porcupine (v1)** wake word engine available. It supports 29 wake words across English, French, Spanish, and German. The wake words include *Computer*, *Framboise*, *Manzana*, and *Stachelschwein*.
|
||||||
|
|
||||||
|
## Try it!
|
||||||
|
|
||||||
|
To try wake words today, follow the guide to the [$13 voice assistant][13-tutorial].
|
||||||
|
|
||||||
|
## Related topics
|
||||||
|
|
||||||
|
- [Create a $13 voice assistant](/voice_control/thirteen-usd-voice-remote/)
|
||||||
|
- [Enable wake words](/voice_control/install_wake_word_add_on/)
|
||||||
|
- [Create your own wake words](/voice_control/create_wake_word/)
|
||||||
|
- [Create a cloud assistant](/voice_control/voice_remote_cloud_assistant/)
|
||||||
|
|
||||||
|
[13-tutorial]: /voice_control/thirteen-usd-voice-remote/
|
||||||
|
[openWakeWord]: https://github.com/dscripka/openWakeWord
|
||||||
|
[own-wake-word]: /voice_control/create_wake_word/
|
||||||
|
[Piper]: https://github.com/rhasspy/piper/
|
@ -1,5 +1,5 @@
|
|||||||
---
|
---
|
||||||
title: "Assist - Entity Aliases"
|
title: "Assist - entity aliases"
|
||||||
---
|
---
|
||||||
|
|
||||||
Assist will use the names of your entities, as well as any aliases you've configured.
|
Assist will use the names of your entities, as well as any aliases you've configured.
|
||||||
|
@ -133,4 +133,10 @@ Depending on your watch, you can assign Assist to a button so that you can start
|
|||||||
- Select **Always**.
|
- Select **Always**.
|
||||||
|
|
||||||

|

|
||||||
3. Now, use your key and speak a command.
|
3. Now, use your key and speak a command.
|
||||||
|
|
||||||
|
## Related topics
|
||||||
|
|
||||||
|
- [Home Assistant Companion App](https://companion.home-assistant.io/docs/getting_started/)
|
||||||
|
- [Exposing devices to Assist](/voice_control/voice_remote_expose_devices/)
|
||||||
|
- [Starting Assist from your dashboard](/voice_control/start_assist_from_dashboard/)
|
||||||
|
@ -4,6 +4,8 @@ title: "Create a personality with OpenAI"
|
|||||||
|
|
||||||
You can give your voice assistant personality by using OpenAI. This requires an OpenAI account. For what we do in this tutorial, the free trial option is sufficient. No need to leave your credit card information.
|
You can give your voice assistant personality by using OpenAI. This requires an OpenAI account. For what we do in this tutorial, the free trial option is sufficient. No need to leave your credit card information.
|
||||||
|
|
||||||
|
<lite-youtube videoid="eLx8_NAqptk" videotitle="Give your voice assistant personality using the OpenAI integration"></lite-youtube>
|
||||||
|
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
This tutorial assumes you have a few things set up already:
|
This tutorial assumes you have a few things set up already:
|
||||||
@ -34,3 +36,9 @@ Using OpenAI requires an OpenAI account. For this tutorial, the free trial optio
|
|||||||
- Leave the other settings unchanged and select **Create**.
|
- Leave the other settings unchanged and select **Create**.
|
||||||
4. You can repeat this with other OpenAI personalities. You can add as many OpenAI Conversation integrations as you would like.
|
4. You can repeat this with other OpenAI personalities. You can add as many OpenAI Conversation integrations as you would like.
|
||||||
- To add a new personality, you need to create a new API key. Then, add a new OpenAI Conversation integration with that API key.
|
- To add a new personality, you need to create a new API key. Then, add a new OpenAI Conversation integration with that API key.
|
||||||
|
|
||||||
|
## Related topics
|
||||||
|
|
||||||
|
- [Home Assistant Cloud](https://www.nabucasa.com)
|
||||||
|
- [Cloud assistant pipeline](/voice_control/voice_remote_cloud_assistant/)
|
||||||
|
- [Local assistant pipeline](/voice_control/voice_remote_local_assistant/)
|
||||||
|
@ -4,13 +4,17 @@ title: "Daily summary by Assist"
|
|||||||
|
|
||||||
In this tutorial, we are creating an automation that has Assist send you a daily summary. Assist will tell you about the weather and your calendar events today. It will also send you the summary to your messenger.
|
In this tutorial, we are creating an automation that has Assist send you a daily summary. Assist will tell you about the weather and your calendar events today. It will also send you the summary to your messenger.
|
||||||
|
|
||||||
|
<p class='img'>
|
||||||
|
<img class='no-shadow' src='/images/assist/assist-daily-summary.png' alt='Daily summary notification'>Daily summary notification - using a neutral tone
|
||||||
|
</p>
|
||||||
|
|
||||||
We will be using OpenAI, which requires an OpenAI account. For what we do in this tutorial, the free trial option is sufficient. No need to leave your credit card information.
|
We will be using OpenAI, which requires an OpenAI account. For what we do in this tutorial, the free trial option is sufficient. No need to leave your credit card information.
|
||||||
|
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
This tutorial assumes you have a few things set up already:
|
This tutorial assumes you have a few things set up already:
|
||||||
|
|
||||||
- [Home Assistant Cloud](https://www.nabucasa.com) or a manually configured [Assist Pipeline](/integrations/assist_pipeline)
|
- [Home Assistant Cloud](https://www.nabucasa.com) or a manually configured [local assistant pipeline](/voice_control/voice_remote_local_assistant/).
|
||||||
|
|
||||||
This tutorial was done using the **Local calendar**, the **Meteorologisk institutt**, and the **Telegram** integrations. It has not been tested with other integrations of the notifications or calendar category.
|
This tutorial was done using the **Local calendar**, the **Meteorologisk institutt**, and the **Telegram** integrations. It has not been tested with other integrations of the notifications or calendar category.
|
||||||
|
|
||||||
@ -79,5 +83,12 @@ We are using a blueprint (courtesy of [@allenporter]) that polls calendar events
|
|||||||
6. To test the automation, select the three dots on your automation, and select **Run**.
|
6. To test the automation, select the three dots on your automation, and select **Run**.
|
||||||
- You should now receive a notification from Assist in your messenger app.
|
- You should now receive a notification from Assist in your messenger app.
|
||||||
|
|
||||||
|
[@allenporter]: https://github.com/allenporter
|
||||||
|
|
||||||
[@allenporter]: https://github.com/allenporter
|
## Related topics
|
||||||
|
|
||||||
|
- [Home Assistant Cloud](https://www.nabucasa.com)
|
||||||
|
- [Local assistant pipeline](/voice_control/voice_remote_local_assistant/)
|
||||||
|
- [Local calendar](/integrations/local_calendar/)
|
||||||
|
- [Telegram notification](/integrations/telegram/#setup-example)
|
||||||
|
- [Create a Mario personality](/voice_control/assist_create_open_ai_personality/)
|
@ -1,5 +1,5 @@
|
|||||||
---
|
---
|
||||||
title: "Assist - Default Sentences"
|
title: "Assist - default sentences"
|
||||||
---
|
---
|
||||||
|
|
||||||
Home Assistant comes with built-in sentences [contributed by the community](https://github.com/home-assistant/intents/) for [dozens of languages](https://developers.home-assistant.io/docs/voice/intent-recognition/supported-languages).
|
Home Assistant comes with built-in sentences [contributed by the community](https://github.com/home-assistant/intents/) for [dozens of languages](https://developers.home-assistant.io/docs/voice/intent-recognition/supported-languages).
|
||||||
@ -41,8 +41,8 @@ To get an idea of the specific sentences that are supported for your language, y
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
- The screenshot below shows sentences used to test the command to turn on the lights. Note that *Living room* here is just a place holder.
|
- The screenshot below shows sentences used to test the command to turn on the lights. Note that *Living room* here is just a place holder.
|
||||||
It could be any area that you have in your home.
|
It could be any area that you have in your home.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@ -50,11 +50,16 @@ To get an idea of the specific sentences that are supported for your language, y
|
|||||||
- On GitHub, in the [tests](https://github.com/home-assistant/intents/tree/main/tests) folder, open the subfolder for your language.
|
- On GitHub, in the [tests](https://github.com/home-assistant/intents/tree/main/tests) folder, open the subfolder for your language.
|
||||||
- Open the file of interest.
|
- Open the file of interest.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
- () mean alternative elements.
|
- () mean alternative elements.
|
||||||
- [] mean optional elements.
|
- [] mean optional elements.
|
||||||
- <> mean an expansion rule. The view these rules, search for `expansion_rules` in the [_common.yaml](https://github.com/home-assistant/intents/blob/main/sentences/en/_common.yaml) file.
|
- <> mean an expansion rule. The view these rules, search for `expansion_rules` in the [_common.yaml](https://github.com/home-assistant/intents/blob/main/sentences/en/_common.yaml) file.
|
||||||
- The syntax is explained in detail in the [template sentence syntax documentation](https://developers.home-assistant.io/docs/voice/intent-recognition/template-sentence-syntax/).
|
- The syntax is explained in detail in the [template sentence syntax documentation](https://developers.home-assistant.io/docs/voice/intent-recognition/template-sentence-syntax/).
|
||||||
|
|
||||||
|
## Related topics
|
||||||
|
|
||||||
|
- [Create aliases](/voice_control/aliases/)
|
||||||
|
- [Create your own sentences](/voice_control/custom_sentences/)
|
||||||
|
- [Template sentence syntax documentation](https://developers.home-assistant.io/docs/voice/intent-recognition/template-sentence-syntax/)
|
||||||
|
- [Sentence test cases](https://github.com/home-assistant/intents/tree/main/sentences)
|
||||||
|
@ -97,6 +97,7 @@ Things you can try if the execution is very slow:
|
|||||||
## Related topics
|
## Related topics
|
||||||
|
|
||||||
- [$13 voice assistant for Home Assistant](/voice_control/thirteen-usd-voice-remote/)
|
- [$13 voice assistant for Home Assistant](/voice_control/thirteen-usd-voice-remote/)
|
||||||
- [wake word training environment](https://colab.research.google.com/drive/1q1oe2zOyZp7UsB3jJiQ1IFn8z5YfjwEb?usp=sharing#scrollTo=1cbqBebHXjFD)
|
- [Wake word training environment](https://colab.research.google.com/drive/1q1oe2zOyZp7UsB3jJiQ1IFn8z5YfjwEb?usp=sharing#scrollTo=1cbqBebHXjFD)
|
||||||
- [Samba add-on installed](/common-tasks/os/#configuring-access-to-files)
|
- [Installing the Samba add-on](/common-tasks/os/#configuring-access-to-files)
|
||||||
- [openWakeWord](https://github.com/dscripka/openWakeWord)
|
- [openWakeWord add-on](https://github.com/dscripka/openWakeWord)
|
||||||
|
- [About wake words](/voice_control/about_wake_word/)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
---
|
---
|
||||||
title: "Assist - Custom Sentences"
|
title: "Assist - custom sentences"
|
||||||
---
|
---
|
||||||
|
|
||||||
You may add your own sentences to the intent recognizer by either extending an [existing intent](https://developers.home-assistant.io/docs/intent_builtin/) or creating a new one. You may also [customize responses](#customizing-responses) for existing intents.
|
You may add your own sentences to the intent recognizer by either extending an [existing intent](https://developers.home-assistant.io/docs/intent_builtin/) or creating a new one. You may also [customize responses](#customizing-responses) for existing intents.
|
||||||
@ -122,7 +122,7 @@ intent_script:
|
|||||||
|
|
||||||
{% endraw %}
|
{% endraw %}
|
||||||
|
|
||||||
## Customizing Responses
|
## Customizing responses
|
||||||
|
|
||||||
Responses for existing intents can be customized as well in `config/custom_sentences/<language>`:
|
Responses for existing intents can be customized as well in `config/custom_sentences/<language>`:
|
||||||
|
|
||||||
@ -138,3 +138,12 @@ responses:
|
|||||||
```
|
```
|
||||||
|
|
||||||
{% endraw %}
|
{% endraw %}
|
||||||
|
|
||||||
|
|
||||||
|
## Related topics
|
||||||
|
|
||||||
|
- [View existing intents](https://developers.home-assistant.io/docs/intent_builtin/)
|
||||||
|
- [Create aliases](/voice_control/aliases/)
|
||||||
|
- [$13 voice assistant for Home Assistant](/voice_control/thirteen-usd-voice-remote/)
|
||||||
|
- [Assist for Apple](/voice_control/apple/)
|
||||||
|
- [Assist for Android](/voice_control/android/)
|
@ -6,23 +6,77 @@ title: Assist - Talking to Home Assistant
|
|||||||
|
|
||||||
Assist is our feature to allow you to control Home Assistant using natural language. It is built on top of an open voice foundation and powered by knowledge provided by our community.
|
Assist is our feature to allow you to control Home Assistant using natural language. It is built on top of an open voice foundation and powered by knowledge provided by our community.
|
||||||
|
|
||||||
_Want to use Home Assistant with Google Assistant or Amazon Alexa? Get started with [Home Assistant Cloud](https://www.nabucasa.com/config/)._
|
<lite-youtube videoid="Eyoqvw8qLLc" videotitle="Happy HAlloween"></lite-youtube>
|
||||||
|
|
||||||
With Assist, you can use the [built-in sentences](/voice_control/builtin_sentences) to control entities and areas, or [create your own](/voice_control/custom_sentences).
|
## Supported platforms
|
||||||
|
|
||||||
[List of supported languages.](https://developers.home-assistant.io/docs/voice/intent-recognition/supported-languages)
|
|
||||||
|
|
||||||
Assist is available to use on most platforms that can interface with Home Assistant. Look for the Assist icon <img src='/images/assist/assist-icon.svg' alt='Assist icon' style='height: 32px' class='no-shadow'>:
|
Assist is available to use on most platforms that can interface with Home Assistant. Look for the Assist icon <img src='/images/assist/assist-icon.svg' alt='Assist icon' style='height: 32px' class='no-shadow'>:
|
||||||
|
|
||||||
- Inside the Home Assistant app in the top-right corner
|
<lite-youtube videoid="qkgdHTHM7Uw" videotitle="Home Assistant Year of the Voice, Part 3"></lite-youtube>
|
||||||
- On Apple devices via [Siri and Assist shortcuts](/voice_control/apple)
|
|
||||||
- On Android phones as the default digital assistant or home screen shortcut
|
|
||||||
- On Wear OS watches as the default digital assistant or using [Assist tile or complication](/voice_control/android)
|
|
||||||
|
|
||||||
Did Assist not understand your sentence? [Contribute them.](https://developers.home-assistant.io/docs/voice/intent-recognition/)
|
### Phone
|
||||||
|
|
||||||
The Assist icon doesn't show up? Make sure the [conversation](/integrations/conversation/) integration is enabled. If you use YAML for configuration and have removed `default_config:`, the conversation integration may not be included in the config file.
|
The easiest way to get started with Assist is probably by using it on your phone.
|
||||||
|
|
||||||
|
- Inside the Home Assistant app in the top-right corner, select the Assist icon.
|
||||||
|
- On Apple devices via [Siri and Assist shortcuts](/voice_control/apple).
|
||||||
|
- On Android phones as the default [digital assistant or home screen shortcut](/voice_control/android).
|
||||||
|
- On a tablet in kiosk mode, you can use a [dashboard button](/voice_control/start_assist_from_dashboard/) to start Assist.
|
||||||
|
|
||||||
|
### Watch
|
||||||
|
|
||||||
|
Assist is also available on watches:
|
||||||
|
|
||||||
|
- On Wear OS watches as the default digital assistant or using [Assist tile or complication](/voice_control/android/#assist-on-wear-os/).
|
||||||
|
|
||||||
|
<lite-youtube videoid="Dr_ZCbt8w5k" videotitle="Assist on Wear OS"></lite-youtube>
|
||||||
|
|
||||||
|
### Google Assistant or Amazon Alexa
|
||||||
|
|
||||||
|
_Want to use Home Assistant with Google Assistant or Amazon Alexa? Get started with [Home Assistant Cloud](https://www.nabucasa.com/config/)._
|
||||||
|
|
||||||
|
### Analog phone
|
||||||
|
|
||||||
|
With the Voice over IP integration, you can even use an [analog phone](/voice_control/worlds-most-private-voice-assistant/) to talk to Assist.
|
||||||
|
|
||||||
|
<lite-youtube videoid="0YJzLIMrnGk" videotitle="Using an analog phone to control Home Assistant"></lite-youtube>
|
||||||
|
|
||||||
|
### ESPHome
|
||||||
|
|
||||||
|
And of course you can use [ESPHome devices](/voice_control/thirteen-usd-voice-remote/), to create your own awesome Assistant device. Like @piitaya did with his 3D printed R5 droid.
|
||||||
|
|
||||||
|
<lite-youtube videoid="vQ7Hmeume9g" videotitle="Wake word demonstration on ESPHome-based 3D printed droid in Home Assistant"></lite-youtube>
|
||||||
|
|
||||||
|
## Wake words
|
||||||
|
|
||||||
|
You can [enable a wake word](/voice_control/install_wake_word_add_on) to activate Assist. There are predefined wake words, such as "OK Nabu", but you can also [define your own wake word](/voice_control/create_wake_word/)
|
||||||
|
|
||||||
|
<lite-youtube videoid="ziebKt4XLZQ" videotitle="Wake word demonstration on $13 ATOM Echo in Home Assistant"></lite-youtube>
|
||||||
|
|
||||||
|
## Create an assistant with an OpenAI personality
|
||||||
|
|
||||||
|
Want to talk to Super Mario? Or another figure? If you want Assist to respond in a fun way, you can create an assistant with an [OpenAI personality](/voice_control/assist_create_open_ai_personality/).
|
||||||
|
|
||||||
|
<lite-youtube videoid="eLx8_NAqptk" videotitle="Give your voice assistant personality using the OpenAI integration"></lite-youtube>
|
||||||
|
|
||||||
|
## Supported languages and sentences
|
||||||
|
|
||||||
|
Assist already supports a wide range of [languages](https://developers.home-assistant.io/docs/voice/intent-recognition/supported-languages).
|
||||||
|
|
||||||
|
Use the [built-in sentences](/voice_control/builtin_sentences) to control entities and areas, or [create your own sentences](/voice_control/custom_sentences/).
|
||||||
|
|
||||||
|
Did Assist not understand your sentence? [Contribute them](https://developers.home-assistant.io/docs/voice/intent-recognition/).
|
||||||
|
|
||||||
_Assist was introduced in Home Assistant 2023.2._
|
_Assist was introduced in Home Assistant 2023.2._
|
||||||
|
|
||||||
<lite-youtube videoid="ziebKt4XLZQ" videotitle="Wake word demo on $13 ATOM Echo in Home Assistant"></lite-youtube>
|
## Related topics
|
||||||
|
|
||||||
|
- [Home Assistant Cloud](https://www.nabucasa.com/config/)
|
||||||
|
- [Assist on Android](/voice_control/android)
|
||||||
|
- [Assist on Wear OS](/voice_control/android/#assist-on-wear-os)
|
||||||
|
- [Siri and Assist shortcuts](/voice_control/apple)
|
||||||
|
- [Assist dashboard button](/voice_control/start_assist_from_dashboard/)
|
||||||
|
- [Build a 13$ voice remote using an ESPHome device](/voice_control/thirteen-usd-voice-remote/)
|
||||||
|
- [Enable a wake word](/voice_control/install_wake_word_add_on)
|
||||||
|
- [Create your own wake words](/voice_control/create_wake_word/)
|
||||||
|
- [Built-in sentences](/voice_control/builtin_sentences)
|
26
source/voice_control/install_wake_word_add_on.markdown
Normal file
26
source/voice_control/install_wake_word_add_on.markdown
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
---
|
||||||
|
title: "Enabling a wake word"
|
||||||
|
---
|
||||||
|
|
||||||
|
To use wake words, you need to install the openWakeWord add-on.
|
||||||
|
|
||||||
|
## Prerequisites
|
||||||
|
|
||||||
|
- Home Assistant version 2023.10 or later, installed with the Home Assistant Operating System
|
||||||
|
|
||||||
|
## Installing the openWakeWord add-on
|
||||||
|
|
||||||
|
1. Go to {% my supervisor_addon addon="core_openwakeword" title="**Settings** > **Add-ons** > **openWakeWord**" %} and select **Install**.
|
||||||
|
2. Start the add-on.
|
||||||
|
3. Go to {% my integrations title="**Settings** > **Devices & Services**" %}.
|
||||||
|
- Under **Discovered**, you should now see the **Wyoming** integration.
|
||||||
|
- Select **Configure** and **Submit**.
|
||||||
|
- **Result**: You have successfully installed the openWakeWord add-on and Wyoming integration.
|
||||||
|
4. Under {% my voice_assistants title="**Settings** > **Voice assistants**" %}, when you select a voice assistant, in the **Wake word** section, you should now see the wake word options that are available out of the box.
|
||||||
|

|
||||||
|
5. If you do not like the available options, you can [create your own wake word](/voice_control/create_wake_word/).
|
||||||
|
|
||||||
|
## Related topics
|
||||||
|
|
||||||
|
- [Create your own wake words](/voice_control/create_wake_word/)
|
||||||
|
- [Create a cloud assistant](/voice_control/voice_remote_cloud_assistant/)
|
@ -14,5 +14,9 @@ If you are using Home Assistant in kiosk mode, for example if you have a tablet
|
|||||||
- You can use any assistant you have previously set up.
|
- You can use any assistant you have previously set up.
|
||||||
- If you have assistants in different languages, you can add a button for each of these languages.
|
- If you have assistants in different languages, you can add a button for each of these languages.
|
||||||
6. If you are using Assist with your voice, enable **Start listening**.
|
6. If you are using Assist with your voice, enable **Start listening**.
|
||||||
- If you don't want to use voice but just want to type, you do not need to enable listening.
|
- If you don't want to use voice but just want to type, you do not need to enable listening.
|
||||||
7. **Save** your new button card.
|
7. **Save** your new button card.
|
||||||
|
|
||||||
|
## Related topics
|
||||||
|
|
||||||
|
- [Assist for Android](/voice_control/android/)
|
||||||
|
@ -18,32 +18,23 @@ your smart home. Issue commands and get responses!
|
|||||||
- [M5Stack ATOM Echo Development Kit](https://shop.m5stack.com/products/atom-echo-smart-speaker-dev-kit?ref=NabuCasa)
|
- [M5Stack ATOM Echo Development Kit](https://shop.m5stack.com/products/atom-echo-smart-speaker-dev-kit?ref=NabuCasa)
|
||||||
- USB-C cable to connect the ATOM Echo
|
- USB-C cable to connect the ATOM Echo
|
||||||
|
|
||||||
## Installing the openWakeWord add-on
|
|
||||||
|
|
||||||
As a first step, you need to install the openWakeWord add-on. This must be installed before setting up the ATOM Echo.
|
|
||||||
|
|
||||||
1. Go to {% my supervisor_addon addon="core_openwakeword" title="**Settings** > **Add-ons** > **openWakeWord**" %} and select **Install**.
|
|
||||||
2. Start the add-on.
|
|
||||||
3. Go to {% my integrations title="**Settings** > **Devices & Services**" %}.
|
|
||||||
- Under **Discovered**, you should now see the **Wyoming** integration.
|
|
||||||
- Select **Configure** and **Submit**.
|
|
||||||
- **Result**: You have successfully installed the openWakeWord add-on and Wyoming integration.
|
|
||||||
|
|
||||||
## Adding a wake word to your voice assistant
|
## Adding a wake word to your voice assistant
|
||||||
|
|
||||||
1. Go to {% my voice_assistants title="**Settings** > **Voice assistants**" %} and select **Add assistant**.
|
1. Install the openWakeWord add-on:
|
||||||
2. Give your assistant a name, for example the wake word you are going to use.
|
- Follow steps 1-3 of the procedure on [enabling a wake word](/voice_control/install_wake_word_add_on).
|
||||||
3. Select the language you are going to use to speak to Home Assistant.
|
2. Go to {% my voice_assistants title="**Settings** > **Voice assistants**" %} and select **Add assistant**.
|
||||||
|
3. Give your assistant a name, for example the wake word you are going to use.
|
||||||
|
4. Select the language you are going to use to speak to Home Assistant.
|
||||||
- If the **Text-to-speech** and **Speech-to-text** sections do not provide language selectors, this means you do not have an Assist pipeline set up.
|
- If the **Text-to-speech** and **Speech-to-text** sections do not provide language selectors, this means you do not have an Assist pipeline set up.
|
||||||
- Set up [Home Assistant Cloud](https://www.nabucasa.com) or a manually configured [Assist pipeline](/voice_control/voice_remote_local_assistant).
|
- Set up [Home Assistant Cloud](https://www.nabucasa.com) or a manually configured [Assist pipeline](/voice_control/voice_remote_local_assistant).
|
||||||
4. Under **Text-to-speech**, select the language and voice you want Home Assistant to use when speaking to you.
|
5. Under **Text-to-speech**, select the language and voice you want Home Assistant to use when speaking to you.
|
||||||
5. To define the wake word engine, under **Wake word**, select **openwakeword**.
|
6. To define the wake word engine, under **Wake word**, select **openWakeWord**.
|
||||||
- Then, select **ok nabu**.
|
- Then, select **ok nabu**.
|
||||||
- If you created a new assistant, select **Create**.
|
- If you created a new assistant, select **Create**.
|
||||||
- If you edited an existing assistant, select **Update**.
|
- If you edited an existing assistant, select **Update**.
|
||||||
- **Result**: You now have a voice assistant that listens to a wake word.
|
- **Result**: You now have a voice assistant that listens to a wake word.
|
||||||
6. For the first run, it is recommended to use **ok nabu**, just to test the setup.
|
7. For the first run, it is recommended to use **ok nabu**, just to test the setup.
|
||||||
- Once you have it all set up, you can [create your own wake words](/voice_control/create_wake_word/).
|
- Once you have it all set up, you can [create your own wake words](/voice_control/create_wake_word/).
|
||||||
|
|
||||||
## Installing the software onto the ATOM Echo
|
## Installing the software onto the ATOM Echo
|
||||||
|
|
||||||
|
@ -1,25 +0,0 @@
|
|||||||
---
|
|
||||||
title: "Using voice assistants - overview"
|
|
||||||
---
|
|
||||||
|
|
||||||
We are in [chapter 3](/blog/2023/07/20/year-of-the-voice-chapter-3/) of Home Assistant's Year of the Voice. No, wake word detection is not yet supported.
|
|
||||||
But you can make Assist the default digital assistant and [start it on an Android](/voice_control/android/) phone, tablet, or Wear OS watch with one push of a button.
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
You can also create your own [custom sentences](/voice_control/custom_sentences/#adding-a-custom-sentence-to-trigger-an-automation) to start an automation. For example, you could say "Clean the floor when I'm gone" to start the vacuum after you left your home zone. For the full list of new features and some videos, head over to the [chapter 3 blog post](/blog/2023/07/20/year-of-the-voice-chapter-3/) or watch the stream.
|
|
||||||
|
|
||||||
<lite-youtube videoid="sXzItFksYFA" videotitle="Year of the Voice Chapter 3"></lite-youtube>
|
|
||||||
|
|
||||||
While the video below does not include these latest changes, it gives a good overview of some of the basics.
|
|
||||||
|
|
||||||
- How to voice-control devices using the Assist button, an [analog phone](/voice_control/worlds-most-private-voice-assistant/), or an [ATOM Echo](/voice_control/thirteen-usd-voice-remote/).
|
|
||||||
- How to [expose devices to Assist](/voice_control/voice_remote_expose_devices/).
|
|
||||||
- How to set up a [local voice assistant](/voice_control/voice_remote_local_assistant/).
|
|
||||||
- The video also shows the differences in processing speed. It compares:
|
|
||||||
- Home Assistant Cloud versus local processing,
|
|
||||||
- local processing on more or less powerful hardware.
|
|
||||||
|
|
||||||
|
|
||||||
<lite-youtube videoid="MOJQU5zyoIY" videotitle="Local voice and hearing for your Home Assistant Assist"></lite-youtube>
|
|
||||||
|
|
51
source/voice_control/voice_remote_cloud_assistant.markdown
Normal file
51
source/voice_control/voice_remote_cloud_assistant.markdown
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
---
|
||||||
|
title: "Creating a cloud Assist pipeline"
|
||||||
|
---
|
||||||
|
|
||||||
|
In Home Assistant, the Assist pipelines are made up of various components that together form a voice assistant.
|
||||||
|
|
||||||
|
You can use Assist out of the box by typing into its text field. But the main goal is to use a voice command. A speech-to-text engine is used so that you can speak to the assistant. For Assist to be able to talk to you, you need to set up a text-to-speech engine. You can use these engines fully locally on your own hardware. To learn how, [follow this procedure](/voice_control/create_wake_word/).
|
||||||
|
|
||||||
|
If you have Home Assistant Cloud, there is a default assistant set up automatically. The advantage of using Home Assistant Cloud is that there is more powerful hardware at play. This makes for faster processing and an overall more smooth experience. This procedure shows how to tweak the settings of the assistant that is set up with Home Assistant Cloud.
|
||||||
|
|
||||||
|
## Prerequisites
|
||||||
|
|
||||||
|
- In this procedure, Home Assistant Cloud will be used
|
||||||
|
- Home Assistant Cloud is a paid subscription. It helps run servers and pay for things like development and security audits. If you just want to try this for the fun of it, you can start a free 1 month trial and then cancel.
|
||||||
|
|
||||||
|
## Setting up a cloud Assist pipeline
|
||||||
|
|
||||||
|
To have the fastest processing voice assistant experience, follow these steps:
|
||||||
|
|
||||||
|
1. If you haven't done this already, [enable Home Assistant Cloud](https://www.nabucasa.com/config/).
|
||||||
|
2. As soon as you're connected to Home Assistant Cloud, a voice assistant has been created for you.
|
||||||
|
- This voice assistant is using text-to-speech and speech-to-text engines based on the region settings of your Home Assistant user.
|
||||||
|
3. To view the settings, go to {% my voice_assistants title="**Settings** > **Voice assistants**" %} and under **Assist**, select **Home Assistant Cloud**.
|
||||||
|

|
||||||
|
|
||||||
|
- **Troubleshooting**: If you do not see any assistants here, you are not using the default configuration. In this case, you need to add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
# Example configuration.yaml entry
|
||||||
|
assist_pipeline:
|
||||||
|
```
|
||||||
|
4. If the predefined language settings work for you, skip the next step.
|
||||||
|
5. If you want to make some changes:
|
||||||
|
- If you like, change the name. You can pick any name that is meaningful to you.
|
||||||
|
- If you do not agree with the predefined language, select the language that you want to speak.
|
||||||
|
- Under **Conversation agent**, select **Home Assistant**.
|
||||||
|
- Under **Speech-to-text**, select the language you want to speak.
|
||||||
|
- Under **Text-to-speech**, select the language you want Assist to use when speaking to you.
|
||||||
|
- Depending on your language, you may be able to select different language variants.
|
||||||
|
- If you want to use a wake word, [install the openWakeWord add-on](/voice_control/install_wake_word_add_on/).
|
||||||
|
|
||||||
|
6. That's it. You can now speak to your device, and the device can answer in the language you defined.
|
||||||
|
7. If you haven't done so yet, [expose your devices to Assist](/voice_control/voice_remote_expose_devices/#exposing-your-devices).
|
||||||
|
- Otherwise you won't be able to control them by voice.
|
||||||
|
|
||||||
|
## Related topics
|
||||||
|
|
||||||
|
- [Enable Home Assistant Cloud](https://www.nabucasa.com/config/)
|
||||||
|
- [Enabling a wake word](/voice_control/install_wake_word_add_on/)
|
||||||
|
- [Create your own wake word](/voice_control/create_wake_word/)
|
||||||
|
- [Expose your devices to Assist](/voice_control/voice_remote_expose_devices/#exposing-your-devices)
|
@ -9,7 +9,13 @@ This is to avoid that sensitive devices, such as locks and garage doors, can ina
|
|||||||
|
|
||||||
1. Go to **Settings** > **Voice assistants**.
|
1. Go to **Settings** > **Voice assistants**.
|
||||||
2. Open the **Expose** tab.
|
2. Open the **Expose** tab.
|
||||||

|

|
||||||
3. Select **Expose entities**.
|
3. Select **Expose entities**.
|
||||||
1. Select all entities you want to be able to control by voice.
|
1. Select all entities you want to be able to control by voice.
|
||||||

|

|
||||||
|
|
||||||
|
|
||||||
|
## Related topics
|
||||||
|
|
||||||
|
- [Local assistant pipeline](/voice_control/voice_remote_local_assistant/)
|
||||||
|
- [Cloud assistant pipeline](/voice_control/voice_remote_cloud_assistant/)
|
@ -4,7 +4,7 @@ title: "Installing a local Assist pipeline"
|
|||||||
|
|
||||||
In Home Assistant, the Assist pipelines are made up of various components that together form a voice assistant.
|
In Home Assistant, the Assist pipelines are made up of various components that together form a voice assistant.
|
||||||
|
|
||||||
For each component you can choose from different options. We have prepared a speech-to-text and text-to-speech option that runs fully local.
|
For each component you can choose from different options. There is a speech-to-text and text-to-speech option that runs entirely local.
|
||||||
|
|
||||||
The speech-to-text option is [Whisper](https://github.com/openai/whisper). It's an open source AI model that supports [various languages](https://github.com/openai/whisper#available-models-and-languages). We use a forked version called [faster-whisper](https://github.com/guillaumekln/faster-whisper). On a Raspberry Pi 4, it takes around 8 seconds to process incoming voice commands. On an Intel NUC it is done in under a second.
|
The speech-to-text option is [Whisper](https://github.com/openai/whisper). It's an open source AI model that supports [various languages](https://github.com/openai/whisper#available-models-and-languages). We use a forked version called [faster-whisper](https://github.com/guillaumekln/faster-whisper). On a Raspberry Pi 4, it takes around 8 seconds to process incoming voice commands. On an Intel NUC it is done in under a second.
|
||||||
|
|
||||||
@ -50,7 +50,10 @@ For the quickest way to get your local Assist pipeline started, follow these ste
|
|||||||
- Under **Speech-to-text**, select **faster-whisper**.
|
- Under **Speech-to-text**, select **faster-whisper**.
|
||||||
- Under **Text-to-speech**, select **piper**.
|
- Under **Text-to-speech**, select **piper**.
|
||||||
- Depending on your language, you may be able to select different language variants.
|
- Depending on your language, you may be able to select different language variants.
|
||||||
- If you like, [set up a wake word](/voice_control/create_wake_word/).
|
- If you like, pick one of the predefined wake words.
|
||||||
|

|
||||||
|
- You can even [define your own a wake word](/voice_control/create_wake_word/). This is not difficult to do, but you will need to set aside a bit of time for this.
|
||||||
|
- Once you defined your own wake word, it will show in this pick list.
|
||||||
|
|
||||||
3. That's it. You ensured your voice commands can be processed locally on your device.
|
3. That's it. You ensured your voice commands can be processed locally on your device.
|
||||||
4. If you haven't done so yet, [expose your devices to Assist](/voice_control/voice_remote_expose_devices/#exposing-your-devices).
|
4. If you haven't done so yet, [expose your devices to Assist](/voice_control/voice_remote_expose_devices/#exposing-your-devices).
|
||||||
|
@ -16,7 +16,7 @@ your smart home and issue commands and get responses.
|
|||||||
[Grandstream HT801](https://amzn.to/40k7mRa)
|
[Grandstream HT801](https://amzn.to/40k7mRa)
|
||||||
- includes a 5 V power adapter and an Ethernet cable
|
- includes a 5 V power adapter and an Ethernet cable
|
||||||
- RJ11 phone cable to connect the phone to the Grandstream
|
- RJ11 phone cable to connect the phone to the Grandstream
|
||||||
- [Home Assistant Cloud](https://www.nabucasa.com) or a manually configured [Assist Pipeline](/integrations/assist_pipeline)
|
- [Cloud assistant pipeline](/voice_control/voice_remote_cloud_assistant/) or a manually configured [local assistant pipeline](/voice_control/voice_remote_local_assistant/)
|
||||||
|
|
||||||
## Setting up Grandstream
|
## Setting up Grandstream
|
||||||
|
|
||||||
@ -125,3 +125,10 @@ The phone shown in the video by TheFes is a *Heemaf type 1955*, which was used b
|
|||||||
|
|
||||||
The phone used during creation of this tutorial is a 1953 [*Tischstation Mod.29 HF-TR* by Autophon AG](https://www.radiomuseum.org/r/autophon_tischstation_mod29_hf_tr.html).
|
The phone used during creation of this tutorial is a 1953 [*Tischstation Mod.29 HF-TR* by Autophon AG](https://www.radiomuseum.org/r/autophon_tischstation_mod29_hf_tr.html).
|
||||||

|

|
||||||
|
|
||||||
|
## Related topics
|
||||||
|
|
||||||
|
- [Grandstream HT801](https://amzn.to/40k7mRa)
|
||||||
|
- [Home Assistant Cloud](https://www.nabucasa.com)
|
||||||
|
- [Cloud assistant pipeline](/voice_control/voice_remote_cloud_assistant/)
|
||||||
|
- [Local assistant pipeline](/voice_control/voice_remote_local_assistant/)
|
Loading…
x
Reference in New Issue
Block a user