mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-23 09:17:06 +00:00
Merge branch 'next' into rc
This commit is contained in:
commit
19fa00b58c
@ -18,7 +18,7 @@
|
|||||||
"editorconfig.editorconfig",
|
"editorconfig.editorconfig",
|
||||||
"GitHub.vscode-pull-request-github",
|
"GitHub.vscode-pull-request-github",
|
||||||
"mrmlnc.vscode-scss",
|
"mrmlnc.vscode-scss",
|
||||||
"rebornix.Ruby",
|
"Shopify.ruby-lsp",
|
||||||
"streetsidesoftware.code-spell-checker",
|
"streetsidesoftware.code-spell-checker",
|
||||||
"taichi.vscode-textlint",
|
"taichi.vscode-textlint",
|
||||||
"yzhang.markdown-all-in-one"
|
"yzhang.markdown-all-in-one"
|
||||||
|
2
.github/workflows/stale.yml
vendored
2
.github/workflows/stale.yml
vendored
@ -11,7 +11,7 @@ jobs:
|
|||||||
pull-requests: write
|
pull-requests: write
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/stale@v8.0.0
|
- uses: actions/stale@v9.0.0
|
||||||
if: ${{ github.repository_owner == 'home-assistant' }}
|
if: ${{ github.repository_owner == 'home-assistant' }}
|
||||||
with:
|
with:
|
||||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
4
.github/workflows/test.yml
vendored
4
.github/workflows/test.yml
vendored
@ -10,7 +10,7 @@ jobs:
|
|||||||
- name: Check out files from GitHub
|
- name: Check out files from GitHub
|
||||||
uses: actions/checkout@v4.1.1
|
uses: actions/checkout@v4.1.1
|
||||||
- name: Setting up Node.js
|
- name: Setting up Node.js
|
||||||
uses: actions/setup-node@v4.0.0
|
uses: actions/setup-node@v4.0.1
|
||||||
with:
|
with:
|
||||||
node-version: 16.x
|
node-version: 16.x
|
||||||
cache: "npm"
|
cache: "npm"
|
||||||
@ -27,7 +27,7 @@ jobs:
|
|||||||
- name: Check out files from GitHub
|
- name: Check out files from GitHub
|
||||||
uses: actions/checkout@v4.1.1
|
uses: actions/checkout@v4.1.1
|
||||||
- name: Setting up Node.js
|
- name: Setting up Node.js
|
||||||
uses: actions/setup-node@v4.0.0
|
uses: actions/setup-node@v4.0.1
|
||||||
with:
|
with:
|
||||||
node-version: 16.x
|
node-version: 16.x
|
||||||
cache: "npm"
|
cache: "npm"
|
||||||
|
@ -537,6 +537,7 @@ source/_integrations/opower.markdown @tronikos
|
|||||||
source/_integrations/oralb.markdown @bdraco @Lash-L
|
source/_integrations/oralb.markdown @bdraco @Lash-L
|
||||||
source/_integrations/oru.markdown @bvlaicu
|
source/_integrations/oru.markdown @bvlaicu
|
||||||
source/_integrations/oru_opower.markdown @tronikos
|
source/_integrations/oru_opower.markdown @tronikos
|
||||||
|
source/_integrations/osoenergy @osohotwateriot
|
||||||
source/_integrations/otbr.markdown @home-assistant/core
|
source/_integrations/otbr.markdown @home-assistant/core
|
||||||
source/_integrations/ourgroceries.markdown @OnFreund
|
source/_integrations/ourgroceries.markdown @OnFreund
|
||||||
source/_integrations/overkiz.markdown @imicknl @vlebourl @tetienne @nyroDev
|
source/_integrations/overkiz.markdown @imicknl @vlebourl @tetienne @nyroDev
|
||||||
@ -803,6 +804,7 @@ source/_integrations/utility_meter.markdown @dgomes
|
|||||||
source/_integrations/v2c.markdown @dgomes
|
source/_integrations/v2c.markdown @dgomes
|
||||||
source/_integrations/vacuum.markdown @home-assistant/core
|
source/_integrations/vacuum.markdown @home-assistant/core
|
||||||
source/_integrations/vallox.markdown @andre-richter @slovdahl @viiru-
|
source/_integrations/vallox.markdown @andre-richter @slovdahl @viiru-
|
||||||
|
source/_integrations/valve.markdown @home-assistant/core
|
||||||
source/_integrations/velbus.markdown @Cereal2nd @brefra
|
source/_integrations/velbus.markdown @Cereal2nd @brefra
|
||||||
source/_integrations/velux.markdown @Julius2342
|
source/_integrations/velux.markdown @Julius2342
|
||||||
source/_integrations/venstar.markdown @garbled1 @jhollowe
|
source/_integrations/venstar.markdown @garbled1 @jhollowe
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
GEM
|
GEM
|
||||||
remote: https://rubygems.org/
|
remote: https://rubygems.org/
|
||||||
specs:
|
specs:
|
||||||
addressable (2.8.5)
|
addressable (2.8.6)
|
||||||
public_suffix (>= 2.0.2, < 6.0)
|
public_suffix (>= 2.0.2, < 6.0)
|
||||||
chunky_png (1.4.0)
|
chunky_png (1.4.0)
|
||||||
colorator (1.1.0)
|
colorator (1.1.0)
|
||||||
@ -112,7 +112,7 @@ GEM
|
|||||||
tilt (2.3.0)
|
tilt (2.3.0)
|
||||||
tzinfo (2.0.6)
|
tzinfo (2.0.6)
|
||||||
concurrent-ruby (~> 1.0)
|
concurrent-ruby (~> 1.0)
|
||||||
tzinfo-data (1.2023.3)
|
tzinfo-data (1.2023.4)
|
||||||
tzinfo (>= 1.0.0)
|
tzinfo (>= 1.0.0)
|
||||||
unicode-display_width (2.5.0)
|
unicode-display_width (2.5.0)
|
||||||
webrick (1.8.1)
|
webrick (1.8.1)
|
||||||
|
@ -84,7 +84,7 @@ collections:
|
|||||||
|
|
||||||
#Search
|
#Search
|
||||||
algolia:
|
algolia:
|
||||||
api_key: "ae96d94b201c5444c8a443093edf3efb"
|
api_key: "ba6f7e6d97b3d3d2f778978c742a47c6"
|
||||||
|
|
||||||
# Twitter
|
# Twitter
|
||||||
twitter_user: balloob
|
twitter_user: balloob
|
||||||
|
@ -12,33 +12,31 @@ $primary-color: #1abcf2;
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.search-container {
|
.docsearch {
|
||||||
position: absolute;
|
.DocSearch-Button {
|
||||||
top: 0;
|
padding: 0px;
|
||||||
left: 0;
|
margin-top: 16px;
|
||||||
right: 0;
|
margin-left: 0px;
|
||||||
bottom: 0;
|
margin-right: 0px;
|
||||||
background-color: white;
|
background: none;
|
||||||
padding-top: 19px;
|
&:hover {
|
||||||
padding-right: 15%;
|
box-shadow: none;
|
||||||
|
|
||||||
.search {
|
|
||||||
max-width: 500px;
|
|
||||||
width: 100%;
|
|
||||||
border-bottom: 2px solid $primary-color;
|
|
||||||
float: right;
|
|
||||||
|
|
||||||
.algolia-autocomplete {
|
|
||||||
width: calc(100% - 64px);
|
|
||||||
margin: 0 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
input {
|
|
||||||
border: 0;
|
|
||||||
width: 100%;
|
|
||||||
outline: none;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.DocSearch-Button-Placeholder {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.DocSearch-Button-Keys {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.DocSearch-Search-Icon {
|
||||||
|
margin-right: 8px;
|
||||||
|
color: $primary-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.DocSearch-Container {
|
||||||
|
z-index: 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.integration-alert-container {
|
.integration-alert-container {
|
||||||
@ -75,12 +73,6 @@ a.integration-alert {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@media only screen and (max-width: $menu-collapse) {
|
@media only screen and (max-width: $menu-collapse) {
|
||||||
.search-container {
|
|
||||||
z-index: 20;
|
|
||||||
padding-right: 5px;
|
|
||||||
padding-left: 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.feedback {
|
.feedback {
|
||||||
margin-bottom: 32px;
|
margin-bottom: 32px;
|
||||||
}
|
}
|
||||||
@ -889,12 +881,19 @@ code {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@media only screen and (max-width: $menu-collapse) {
|
@media only screen and (max-width: $menu-collapse) {
|
||||||
|
|
||||||
#not_found {
|
#not_found {
|
||||||
.page {
|
.page {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
|
|
||||||
.search404-container {
|
.search404-container {
|
||||||
margin-bottom: 32px;
|
margin-bottom: 32px;
|
||||||
|
display: grid;
|
||||||
|
|
||||||
|
#search404 {
|
||||||
|
display: flex;
|
||||||
|
justify-self: center;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -908,9 +907,11 @@ code {
|
|||||||
|
|
||||||
.search404-container {
|
.search404-container {
|
||||||
margin-bottom: 32px;
|
margin-bottom: 32px;
|
||||||
|
display: grid;
|
||||||
|
|
||||||
#search404 {
|
#search404 {
|
||||||
width: 420px;
|
display: flex;
|
||||||
|
justify-self: center;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -8,24 +8,15 @@ body_id: not_found
|
|||||||
<h2>Oh no! This page does not exist 😞</h2>
|
<h2>Oh no! This page does not exist 😞</h2>
|
||||||
|
|
||||||
<div class='search404-container'>
|
<div class='search404-container'>
|
||||||
<div class='search404'>
|
<div id="search404"></div>
|
||||||
<i class="icon-search"></i>
|
|
||||||
<input id='search404' placeholder='Search the documentation …'>
|
|
||||||
<a href='#' class='search404-close'><i class="icon-remove-sign"></i></a>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script type="text/javascript" src="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.js"></script>
|
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@docsearch/js@3/dist/umd/index.min.js"></script>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
docsearch({
|
docsearch({
|
||||||
apiKey: '{{ site.algolia.api_key }}',
|
container: '#search404',
|
||||||
|
appId: 'FBHBYS3J0U',
|
||||||
indexName: 'home-assistant',
|
indexName: 'home-assistant',
|
||||||
inputSelector: '#search404',
|
apiKey: "{{ site.algolia.api_key }}",
|
||||||
debug: false // Set debug to true if you want to inspect the dropdown
|
|
||||||
});
|
|
||||||
|
|
||||||
document.querySelector('.search404-close').addEventListener('click', function(ev) {
|
|
||||||
ev.preventDefault();
|
|
||||||
document.querySelector('#search404').value = "";
|
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
@ -7,6 +7,11 @@ description: The Conditional card displays another card based on conditions.
|
|||||||
|
|
||||||
The conditional card displays another card based on conditions.
|
The conditional card displays another card based on conditions.
|
||||||
|
|
||||||
|
<p class='img'>
|
||||||
|
<img src='/images/dashboards/conditional_card.gif' alt='Screenshot of the conditional card'>
|
||||||
|
Screenshot of the conditional card.
|
||||||
|
</p>
|
||||||
|
|
||||||
Note: if there are multiple conditions there will be treated as an 'and' condition. This means that for the card to show, _all_ conditions must be met.
|
Note: if there are multiple conditions there will be treated as an 'and' condition. This means that for the card to show, _all_ conditions must be met.
|
||||||
|
|
||||||
{% include dashboard/edit_dashboard.md %}
|
{% include dashboard/edit_dashboard.md %}
|
||||||
|
@ -38,6 +38,11 @@ theme:
|
|||||||
required: false
|
required: false
|
||||||
description: Override the used theme for this card with any loaded theme. For more information about themes, see the [frontend documentation](/integrations/frontend/).
|
description: Override the used theme for this card with any loaded theme. For more information about themes, see the [frontend documentation](/integrations/frontend/).
|
||||||
type: string
|
type: string
|
||||||
|
show_current_as_primary:
|
||||||
|
required: false
|
||||||
|
description: Show current humidity as primary information instead of target humidity. The target humidity will be displayed as secondary information.
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
features:
|
features:
|
||||||
required: false
|
required: false
|
||||||
description: Additional widgets to control your entity. See [available features](/dashboards/features). Only humidifier related features are supported.
|
description: Additional widgets to control your entity. See [available features](/dashboards/features). Only humidifier related features are supported.
|
||||||
|
@ -38,6 +38,11 @@ auto_fit:
|
|||||||
description: The map will follow moving `entities` by adjusting the viewport of the map each time an entity is updated.
|
description: The map will follow moving `entities` by adjusting the viewport of the map each time an entity is updated.
|
||||||
type: boolean
|
type: boolean
|
||||||
default: false
|
default: false
|
||||||
|
fit_zones:
|
||||||
|
required: false
|
||||||
|
description: Whether the map should consider the zones in the list of specified entities when fitting its viewport.
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
title:
|
title:
|
||||||
required: false
|
required: false
|
||||||
description: The card title.
|
description: The card title.
|
||||||
|
@ -8,7 +8,7 @@ description: "The thermostat card gives control of your climate entity, allowing
|
|||||||
The thermostat card gives control of your [climate](/integrations/#climate) entity, allowing you to change the temperature and mode of the entity.
|
The thermostat card gives control of your [climate](/integrations/#climate) entity, allowing you to change the temperature and mode of the entity.
|
||||||
|
|
||||||
<p class='img'>
|
<p class='img'>
|
||||||
<img src='/images/dashboards/thermostat_card.gif' alt='Screenshot of the thermostat card'>
|
<img src='/images/dashboards/thermostat_card.png' alt='Screenshot of the thermostat card'>
|
||||||
Screenshot of the thermostat card.
|
Screenshot of the thermostat card.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@ -38,6 +38,11 @@ theme:
|
|||||||
required: false
|
required: false
|
||||||
description: Override the used theme for this card with any loaded theme. For more information about themes, see the [frontend documentation](/integrations/frontend/).
|
description: Override the used theme for this card with any loaded theme. For more information about themes, see the [frontend documentation](/integrations/frontend/).
|
||||||
type: string
|
type: string
|
||||||
|
show_current_as_primary:
|
||||||
|
required: false
|
||||||
|
description: Show current temperature as primary information instead of target temperature. The target temperature will be displayed as secondary information.
|
||||||
|
type: boolean
|
||||||
|
default: false
|
||||||
features:
|
features:
|
||||||
required: false
|
required: false
|
||||||
description: Additional widgets to control your entity. See [available features](/dashboards/features). Only climate related features are supported.
|
description: Additional widgets to control your entity. See [available features](/dashboards/features). Only climate related features are supported.
|
||||||
|
@ -387,6 +387,14 @@
|
|||||||
definition: >-
|
definition: >-
|
||||||
TTS (text-to-speech) allows Home Assistant to talk to you.
|
TTS (text-to-speech) allows Home Assistant to talk to you.
|
||||||
link: /integrations/tts/
|
link: /integrations/tts/
|
||||||
|
|
||||||
|
|
||||||
|
- term: Valve
|
||||||
|
definition: >-
|
||||||
|
Valves are devices to control the flow of liquids and gases. All valves in Home Assistant can be opened
|
||||||
|
and closed. Some valves can also be set to a specific position.
|
||||||
|
link: /integrations/valve
|
||||||
|
|
||||||
- term: Variables
|
- term: Variables
|
||||||
definition: >-
|
definition: >-
|
||||||
Variables are used to store values in memory that can be processed
|
Variables are used to store values in memory that can be processed
|
||||||
|
@ -7,21 +7,13 @@ The authentication system secures access to Home Assistant.
|
|||||||
|
|
||||||
## Login screen
|
## Login screen
|
||||||
|
|
||||||
If you log in from within your local network, you are greeted with a login screen showing all the people in Home Assistant.
|
You are greeted with a log in screen, asking you for user name and password.
|
||||||
|
|
||||||
<img src='/images/docs/authentication/login.png' alt='Screenshot of the login screen, when logging in from within the local network' style='border: 0;box-shadow: none;'>
|
|
||||||
|
|
||||||
### Privacy: Not showing users when logging in from outside the network
|
|
||||||
|
|
||||||
When logging in from outside your local network, the users are not shown. This is to protect your privacy. In this case, you need to enter your user name.
|
|
||||||
|
|
||||||
You might also see this screen if you are using a Chromium-based browser (Chrome, Edge) and IPv6. Home Assistant might not be able to detect if your are logging in from a local network. This is a known issue with Chromium.
|
|
||||||
|
|
||||||
<img src='/images/docs/authentication/login-outside-local-network.png' alt='Screenshot of the login screen, when logging in from within the local network' style='border: 0;box-shadow: none;'>
|
<img src='/images/docs/authentication/login-outside-local-network.png' alt='Screenshot of the login screen, when logging in from within the local network' style='border: 0;box-shadow: none;'>
|
||||||
|
|
||||||
## User accounts
|
## User accounts
|
||||||
|
|
||||||
When you start Home Assistant for the first time the _owner_ user account is created. This account has some special privileges and can:
|
When you start Home Assistant for the first time, the _owner_ user account is created. This account has some special privileges and can:
|
||||||
|
|
||||||
- Create and manage other user accounts.
|
- Create and manage other user accounts.
|
||||||
- Configure integrations and other settings (coming soon).
|
- Configure integrations and other settings (coming soon).
|
||||||
@ -84,17 +76,7 @@ INFO (MainThread) [homeassistant.components.http.auth] You need to use a bearer
|
|||||||
|
|
||||||
### Lost owner password
|
### Lost owner password
|
||||||
|
|
||||||
Before using the procedure below, make sure you explore options provided [here](/docs/locked_out).
|
If you lose the password associated with the owner account, you need to [start a new onboarding process](/docs/locked_out/#to-prepare-the-system-to-start-a-new-onboarding-process).
|
||||||
|
|
||||||
While you should hopefully be storing your passwords in a password manager, if you lose the password associated with the owner account the only way to resolve this is to delete _all_ the authentication data. You do this by shutting down Home Assistant and deleting the following files from the `.storage/` folder in your [configuration folder](/docs/configuration/):
|
|
||||||
|
|
||||||
- `auth`
|
|
||||||
- `auth_provider.homeassistant`
|
|
||||||
- `onboarding`
|
|
||||||
- `hassio`
|
|
||||||
- `cloud`
|
|
||||||
|
|
||||||
When you start Home Assistant next, you'll be required to set up authentication again.
|
|
||||||
|
|
||||||
### Error: invalid client id or redirect URL
|
### Error: invalid client id or redirect URL
|
||||||
|
|
||||||
|
@ -148,6 +148,12 @@ automation:
|
|||||||
event: start
|
event: start
|
||||||
```
|
```
|
||||||
|
|
||||||
|
<div class='note'>
|
||||||
|
|
||||||
|
Automations triggered by the `shutdown` event have 20 seconds to run, after which they are stopped to continue with the shutdown.
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
## MQTT trigger
|
## MQTT trigger
|
||||||
|
|
||||||
Fires when a specific message is received on given MQTT topic. Optionally can match on the payload being sent over the topic. The default payload encoding is 'utf-8'. For images and other byte payloads use `encoding: ''` to disable payload decoding completely.
|
Fires when a specific message is received on given MQTT topic. Optionally can match on the payload being sent over the topic. The default payload encoding is 'utf-8'. For images and other byte payloads use `encoding: ''` to disable payload decoding completely.
|
||||||
|
@ -41,12 +41,24 @@ Home Assistant can import blueprints from the Home Assistant forums, GitHub, and
|
|||||||
|
|
||||||
The blueprint can now be used for creating automations.
|
The blueprint can now be used for creating automations.
|
||||||
|
|
||||||
## Keeping blueprints up to date
|
## Re-importing a blueprint
|
||||||
|
|
||||||
Blueprints created by the community may go through multiple revisions. Sometimes a user creates a blueprint,
|
Blueprints created by the community may go through multiple revisions. Sometimes a user creates a blueprint,
|
||||||
the community provides feedback, and new functionality is added.
|
the community provides feedback, and new functionality is added.
|
||||||
|
|
||||||
While there's no built-in functionality to update a blueprint you've already imported, you can manually edit
|
The quickest way to get these changes is by re-importing the blueprint. This will overwrite the blueprint you currently have.
|
||||||
|
|
||||||
|
1. **Before you do this**: If the re-imported blueprint is not compatible, it can break your automations.
|
||||||
|
- In this case, you will need to manually adjust your automations.
|
||||||
|
2. Go to **{% my blueprints title="Settings > Automations & Scenes > Blueprints" %}**.
|
||||||
|
3. On the blueprint that you want to re-import, select the three-dot menu, and select **Re-import blueprint**.
|
||||||
|
|
||||||
|
## Updating an imported blueprint manually
|
||||||
|
|
||||||
|
Blueprints created by the community may go through multiple revisions. Sometimes a user creates a blueprint,
|
||||||
|
the community provides feedback, and new functionality is added.
|
||||||
|
|
||||||
|
If you do not want to [re-import the blueprint](/docs/automation/using_blueprints/#re-importing-a-blueprint) for some reason, you can manually edit
|
||||||
its YAML content to keep it up to date:
|
its YAML content to keep it up to date:
|
||||||
|
|
||||||
1. Navigate to the blueprints directory (`blueprints/automation/`).
|
1. Navigate to the blueprints directory (`blueprints/automation/`).
|
||||||
|
@ -1324,4 +1324,4 @@ The output of this selector is a list of triggers. For example:
|
|||||||
- platform: numeric_state
|
- platform: numeric_state
|
||||||
entity_id: "sensor.outside_temperature"
|
entity_id: "sensor.outside_temperature"
|
||||||
below: 20
|
below: 20
|
||||||
```∏
|
```
|
||||||
|
@ -27,7 +27,6 @@ homeassistant:
|
|||||||
media_dirs:
|
media_dirs:
|
||||||
media: "/media"
|
media: "/media"
|
||||||
recordings: "/mnt/recordings"
|
recordings: "/mnt/recordings"
|
||||||
legacy_templates: false
|
|
||||||
```
|
```
|
||||||
|
|
||||||
<div class='note'>
|
<div class='note'>
|
||||||
@ -102,11 +101,6 @@ media_dirs:
|
|||||||
description: A mapping of local media sources and their paths on disk.
|
description: A mapping of local media sources and their paths on disk.
|
||||||
required: false
|
required: false
|
||||||
type: map
|
type: map
|
||||||
legacy_templates:
|
|
||||||
description: Enable this option to restore pre-0.117 template rendering. Which renders all templates to string, instead of native types.
|
|
||||||
required: false
|
|
||||||
type: boolean
|
|
||||||
default: false
|
|
||||||
language:
|
language:
|
||||||
description: "Default language used by Home Assistant. This may, for example, influence the language used by voice assistants. The language should be specified as an RFC 5646 language tag, and must be a language which Home Assistant is translated to."
|
description: "Default language used by Home Assistant. This may, for example, influence the language used by voice assistants. The language should be specified as an RFC 5646 language tag, and must be a language which Home Assistant is translated to."
|
||||||
required: false
|
required: false
|
||||||
|
@ -29,7 +29,7 @@ homeassistant:
|
|||||||
|
|
||||||
Note that each line after `homeassistant:` is indented two (2) spaces. Since the configuration files in Home Assistant are based on the YAML language, indentation and spacing are important. Also note that seemingly strange entry under `customize:`.
|
Note that each line after `homeassistant:` is indented two (2) spaces. Since the configuration files in Home Assistant are based on the YAML language, indentation and spacing are important. Also note that seemingly strange entry under `customize:`.
|
||||||
|
|
||||||
`!include filename.yaml` is the statement that tells Home Assistant to insert the contents of `filename.yaml` at that point. This is how we are going to break a monolithic and hard to read file (when it gets big) into more manageable chunks.
|
`!include customize.yaml` is the statement that tells Home Assistant to insert the contents of `customize.yaml` at that point. This is how we are going to break a monolithic and hard to read file (when it gets big) into more manageable chunks.
|
||||||
|
|
||||||
Now before we start splitting out the different components, let's look at the other integrations (in our example) that will stay in the base file:
|
Now before we start splitting out the different components, let's look at the other integrations (in our example) that will stay in the base file:
|
||||||
|
|
||||||
|
@ -6,36 +6,56 @@ description: "Options for regaining access"
|
|||||||
The sections below deal with recovering from a situation where you are not able to sign in,
|
The sections below deal with recovering from a situation where you are not able to sign in,
|
||||||
or need to recover your data.
|
or need to recover your data.
|
||||||
|
|
||||||
|
## Forgot user name
|
||||||
|
|
||||||
|
If you’ve forgotten your username, ask the owner to help you.
|
||||||
|
If you are the owner and have forgotten your user name, then you need to [prepare the system to start a new onboarding process](/docs/locked_out/#to-prepare-the-system-to-start-a-new-onboarding-process).
|
||||||
|
|
||||||
## Forgot password
|
## Forgot password
|
||||||
|
|
||||||
### Home Assistant (including Supervised)
|
If you are not the owner or do not have administrator rights, ask the owner to give you a new password.
|
||||||
|
|
||||||
If you are still logged in to the web interface with your user, then you are in luck.
|
- In the navigation pane on the left, check if you see the **Settings** menu listed above the **Notifications**.
|
||||||
|
- If you don't, you do not have administrator rights.
|
||||||
|
|
||||||
1. Add a new user as an administrator and give the new user a password you can remember.
|
If you are the owner or have administrator, there are different methods to reset a password, depending on your setup:
|
||||||
2. Then log out, and log in with this new user.
|
|
||||||
3. Reset your password via this new administrator account (and then delete this new account).
|
### To reset a password while still logged in (including Supervised)
|
||||||
|
|
||||||
|
The method used to reset a password depends on your user rights:
|
||||||
|
|
||||||
|
- If you are a regular user without administrator rights, ask the owner to [give you a new password](/docs/locked_out/#to-reset-a-users-password-as-an-owner-via-the-web-interface).
|
||||||
|
- If you are the owner, choose one of the procedures below to reset your password.
|
||||||
|
- You cannot recover an owner password from within Home Assistant.
|
||||||
|
- There is only one owner per system. You cannot add a new owner.
|
||||||
|
- If you are an administrator, add a new user as an administrator and give the new user a password you can remember.
|
||||||
|
1. Then log out, and log in with this new user.
|
||||||
|
2. Reset your password via this new administrator account (and then [delete this new account](/docs/locked_out/#to-delete-a-user)).
|
||||||
- Your configuration will remain, and you don't have to do a new onboarding process.
|
- Your configuration will remain, and you don't have to do a new onboarding process.
|
||||||
|
|
||||||
If you’ve forgotten your username, then deleting the files mentioned further below will be necessary to start a new onboarding process.
|
### To reset an owner's password, via console
|
||||||
|
|
||||||
#### To reset a user's password, via console
|
Use this procedure only if the following conditions are met:
|
||||||
|
|
||||||
Use this procedure if you know the username, and you can access the [Home Assistant console](/hassio/commandline/) on the device itself (not the SSH terminal from the add-ons).
|
- You know the username.
|
||||||
|
- You can access the [Home Assistant console](/hassio/commandline/) **on the device itself** (not via the SSH terminal from the add-ons).
|
||||||
|
|
||||||
1. Connect a keyboard and monitor to your device and access the terminal:
|
1. Connect to the console of the Home Assistant server:
|
||||||
|
- If you are using a virtual machine, connect to your virtual machine console.
|
||||||
- If you are using a Home Assistant Yellow, refer to the following procedure:
|
- If you are using a Home Assistant Yellow, refer to the following procedure:
|
||||||
- [Using the serial console on Windows](https://yellow.home-assistant.io/guides/use-serial-console-windows/)
|
- [Using the serial console on Windows](https://yellow.home-assistant.io/guides/use-serial-console-windows/)
|
||||||
- [Using the serial console on macOS / Linux](https://yellow.home-assistant.io/guides/use-serial-console-linux-macos/)
|
- [Using the serial console on macOS / Linux](https://yellow.home-assistant.io/guides/use-serial-console-linux-macos/)
|
||||||
- If you are using a Home Assistant Green, refer to the following procedure:
|
- If you are using a Home Assistant Green, refer to the following procedure:
|
||||||
- [Using the terminal](https://green.home-assistant.io/guides/use-terminal/)
|
- [Using the terminal](https://green.home-assistant.io/guides/use-terminal/)
|
||||||
|
- If you are using another board, connect a keyboard and monitor to your device and access the terminal. The procedure is likely very similar to the one described for the Green in the step above.
|
||||||
2. Once you have opened the Home Assistant command line, enter the following command:
|
2. Once you have opened the Home Assistant command line, enter the following command:
|
||||||
- Note: `existing_user` is a placeholder. Replace it with your user name.
|
- Note: `existing_user` is a placeholder. Replace it with your user name.
|
||||||
- Note: `new_password` is a placeholder. Replace it with your new password.
|
- Note: `new_password` is a placeholder. Replace it with your new password.
|
||||||
- **Command**: `auth reset --username existing_user --password new_password`
|
- **Command**: `auth reset --username existing_user --password new_password`
|
||||||
|
- **Troubleshooting**: If you see the message `zsh: command not found: auth`, you likely did not enter the command in the serial console connected to the device itself, but in the terminal within Home Assistant.
|
||||||
3. You can now log in to Home Assistant using this new password.
|
3. You can now log in to Home Assistant using this new password.
|
||||||
|
|
||||||
#### To reset a user's password, via the container command line
|
### To reset a user's password, via the container command line
|
||||||
|
|
||||||
If you are running Home Assistant in a container, you can use the command line in the container with the `hass` command to change your password. The steps below refer to a Home Assistant container in Docker named `homeassistant`. Note that while working in the container, commands will take a few moments to execute.
|
If you are running Home Assistant in a container, you can use the command line in the container with the `hass` command to change your password. The steps below refer to a Home Assistant container in Docker named `homeassistant`. Note that while working in the container, commands will take a few moments to execute.
|
||||||
|
|
||||||
@ -45,7 +65,9 @@ If you are running Home Assistant in a container, you can use the command line i
|
|||||||
4. `exit` to exit the container command line
|
4. `exit` to exit the container command line
|
||||||
5. `docker restart homeassistant` to restart the container.
|
5. `docker restart homeassistant` to restart the container.
|
||||||
|
|
||||||
#### To reset a user's password, as an owner via the web interface
|
### To reset a user's password, as an owner via the web interface
|
||||||
|
|
||||||
|
Only the owner can change other user's passwords.
|
||||||
|
|
||||||
1. In the bottom left, select your user to go to the {% my profile title="**Profile**" %} page and make sure **Advanced Mode** is activated.
|
1. In the bottom left, select your user to go to the {% my profile title="**Profile**" %} page and make sure **Advanced Mode** is activated.
|
||||||
2. Go to {% my people title="**Settings** > **People**" %} and select the person for which you want to change the password.
|
2. Go to {% my people title="**Settings** > **People**" %} and select the person for which you want to change the password.
|
||||||
@ -55,7 +77,9 @@ If you are running Home Assistant in a container, you can use the command line i
|
|||||||
5. Confirm the new password by entering it again, and select **OK** again.
|
5. Confirm the new password by entering it again, and select **OK** again.
|
||||||
6. A confirmation box will be displayed with the text **Password was changed successfully**.
|
6. A confirmation box will be displayed with the text **Password was changed successfully**.
|
||||||
|
|
||||||
#### To delete a user, as an administrator via the web interface
|
### To delete a user
|
||||||
|
|
||||||
|
You need to be an owner or have administrator rights to delete a user.
|
||||||
|
|
||||||
1. Go to {% my people title="**Settings** > **People**" %} and select the person which you want to delete.
|
1. Go to {% my people title="**Settings** > **People**" %} and select the person which you want to delete.
|
||||||
- Note: you cannot delete the owner.
|
- Note: you cannot delete the owner.
|
||||||
@ -63,21 +87,15 @@ If you are running Home Assistant in a container, you can use the command line i
|
|||||||
- A confirmation dialog box will be displayed.
|
- A confirmation dialog box will be displayed.
|
||||||
3. To confirm, select **OK**.
|
3. To confirm, select **OK**.
|
||||||
|
|
||||||
#### Start a new onboarding process
|
### To prepare the system to start a new onboarding process
|
||||||
|
|
||||||
If you lose the password associated with the owner account and the steps above do not work to reset the password, the only way to resolve this is to start a new onboarding process. If you have an external backup with an administrator account of which you still know the login credentials, you can restore that backup. If you do not have a backup, resetting the device will erase all data.
|
If you lose the password associated with the owner account and the steps above do not work to reset the password, the only way to resolve this is to start a new onboarding process.
|
||||||
|
|
||||||
|
- If you have an external backup with an administrator account of which you still know the login credentials, you can restore that backup.
|
||||||
|
- If you do not have a backup, resetting the device will erase all data.
|
||||||
|
|
||||||
- If you have a Home Assistant Green, [reset the Green](https://green.home-assistant.io/guides/reset/).
|
- If you have a Home Assistant Green, [reset the Green](https://green.home-assistant.io/guides/reset/).
|
||||||
- If you have a Home Assistant Yellow, [reset the Yellow](https://yellow.home-assistant.io/guides/factory-reset/).
|
- If you have a Home Assistant Yellow, [reset the Yellow](https://yellow.home-assistant.io/guides/factory-reset/).
|
||||||
- If you have a Raspberry Pi, delete *all* the authentication data.
|
|
||||||
- Shut down Home Assistant.
|
|
||||||
- Remove your SD card and access it from your PC.
|
|
||||||
- Delete the following files from the `.storage/` folder in your [configuration folder](/docs/configuration/):
|
|
||||||
- `auth`
|
|
||||||
- `auth_provider.homeassistant`
|
|
||||||
- `onboarding`
|
|
||||||
- `hassio`
|
|
||||||
- `cloud`
|
|
||||||
|
|
||||||
## Recovering data for Home Assistant (including Supervised)
|
## Recovering data for Home Assistant (including Supervised)
|
||||||
|
|
||||||
|
@ -133,13 +133,12 @@ Examples of service response data are upcoming calendar events for the next week
|
|||||||
|
|
||||||
Templates can also be used for handling response data. The service call can specify
|
Templates can also be used for handling response data. The service call can specify
|
||||||
a `response_variable`. This is the [variable](/docs/scripts/#variables)
|
a `response_variable`. This is the [variable](/docs/scripts/#variables)
|
||||||
that contains the response data. You can define any name for your `response_variable`. This example calls a service and stores the response in
|
that contains the response data. You can define any name for your `response_variable`. This example calls a service and stores the response in the variable called `agenda`.
|
||||||
the variable called `agenda`.
|
|
||||||
|
|
||||||
{% raw %}
|
{% raw %}
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
service: calendar.list_events
|
service: calendar.get_events
|
||||||
target:
|
target:
|
||||||
entity_id: calendar.school
|
entity_id: calendar.school
|
||||||
data:
|
data:
|
||||||
@ -168,7 +167,7 @@ data:
|
|||||||
message: >-
|
message: >-
|
||||||
Your agenda for today:
|
Your agenda for today:
|
||||||
<p>
|
<p>
|
||||||
{% for event in agenda.events %}
|
{% for event in agenda['calendar.school'].events %}
|
||||||
{{ event.start}}: {{ event.summary }}<br>
|
{{ event.start}}: {{ event.summary }}<br>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</p>
|
</p>
|
||||||
|
@ -4,8 +4,8 @@
|
|||||||
<ul class="divided sidebar-menu">
|
<ul class="divided sidebar-menu">
|
||||||
<li>{% active_link /installation/ Installation %}</li>
|
<li>{% active_link /installation/ Installation %}</li>
|
||||||
<li>{% active_link /getting-started/onboarding/ Onboarding %}</li>
|
<li>{% active_link /getting-started/onboarding/ Onboarding %}</li>
|
||||||
<li>{% active_link /getting-started/onboarding_dashboard/ Edit the dashboard %}</li>
|
|
||||||
<li>{% active_link /getting-started/concepts-terminology/ Concepts and terminology %}</li>
|
<li>{% active_link /getting-started/concepts-terminology/ Concepts and terminology %}</li>
|
||||||
|
<li>{% active_link /getting-started/onboarding_dashboard/ Edit the dashboard %}</li>
|
||||||
<li>{% active_link /getting-started/integration/ Integration %}</li>
|
<li>{% active_link /getting-started/integration/ Integration %}</li>
|
||||||
<li>{% active_link /getting-started/automation/ Automation %}</li>
|
<li>{% active_link /getting-started/automation/ Automation %}</li>
|
||||||
<li>
|
<li>
|
||||||
|
@ -22,7 +22,6 @@
|
|||||||
<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/troubleshooting/ Troubleshooting Assist %}</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -31,8 +30,17 @@
|
|||||||
<ul class="divided sidebar-menu">
|
<ul class="divided sidebar-menu">
|
||||||
<li>{% active_link /voice_control/worlds-most-private-voice-assistant/ Tutorial: World's most private voice assistant %}</li>
|
<li>{% active_link /voice_control/worlds-most-private-voice-assistant/ Tutorial: World's most private voice assistant %}</li>
|
||||||
<li>{% active_link /voice_control/thirteen-usd-voice-remote/ Tutorial: $13 voice assistant %}</li>
|
<li>{% active_link /voice_control/thirteen-usd-voice-remote/ Tutorial: $13 voice assistant %}</li>
|
||||||
|
<li>{% active_link /voice_control/s3_box_voice_assistant/ Tutorial: ESP32-S3-BOX voice assistant %}</li>
|
||||||
|
<li>{% active_link /voice_control/s3-box-customize/ Tutorial: Customize the S3-BOX with your own illustrations %}</li>
|
||||||
<li>{% active_link /voice_control/create_wake_word/ Tutorial: Create your own wake word %}</li>
|
<li>{% active_link /voice_control/create_wake_word/ Tutorial: Create your own wake word %}</li>
|
||||||
<li>{% active_link /voice_control/assist_daily_summary/ Tutorial: Your daily summary by Assist %}</li>
|
<li>{% active_link /voice_control/assist_daily_summary/ Tutorial: Your daily summary by Assist %}</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="section">
|
||||||
|
<h1 class="title delta">Troubleshooting</h1>
|
||||||
|
<ul class="divided sidebar-menu">
|
||||||
|
<li>{% active_link /voice_control/troubleshooting/ Troubleshooting Assist %}</li>
|
||||||
|
<li>{% active_link /voice_control/troubleshooting_the_s3_box/ Troubleshooting the ESP32-S3-BOX %}</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
@ -130,7 +130,7 @@ As jemalloc can cause issues on certain hardware, it can be disabled by passing
|
|||||||
homeassistant:
|
homeassistant:
|
||||||
...
|
...
|
||||||
environment:
|
environment:
|
||||||
- DISABLE_JEMALLOC: true
|
DISABLE_JEMALLOC: true
|
||||||
```
|
```
|
||||||
|
|
||||||
{% endtabbed_block %}
|
{% endtabbed_block %}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# Install Home Assistant Operating System
|
## Install Home Assistant Operating System
|
||||||
|
|
||||||
{% assign release_url = "https://github.com/home-assistant/operating-system/releases/download" %}
|
{% assign release_url = "https://github.com/home-assistant/operating-system/releases/download" %}
|
||||||
|
|
||||||
|
@ -1,29 +1,16 @@
|
|||||||
<script type="module" src="https://cdn.jsdelivr.net/npm/@justinribeiro/lite-youtube@1.3.1/lite-youtube.js"></script>
|
<script type="module" src="https://cdn.jsdelivr.net/npm/@justinribeiro/lite-youtube@1.3.1/lite-youtube.js"></script>
|
||||||
|
|
||||||
<script src="{{ '/javascripts/prism.js' | cache_buster }}" type="text/javascript" defer></script>
|
<script src="{{ '/javascripts/prism.js' | cache_buster }}" type="text/javascript" defer></script>
|
||||||
|
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@docsearch/js@3/dist/umd/index.min.js"></script>
|
||||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.css" />
|
|
||||||
<script type="text/javascript" src="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.js"></script>
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
docsearch({
|
docsearch({
|
||||||
apiKey: "{{ site.algolia.api_key }}",
|
container: '#docsearch',
|
||||||
|
appId: 'FBHBYS3J0U',
|
||||||
indexName: 'home-assistant',
|
indexName: 'home-assistant',
|
||||||
inputSelector: '#search',
|
apiKey: "{{ site.algolia.api_key }}",
|
||||||
debug: false // Set debug to true if you want to inspect the dropdown
|
|
||||||
});
|
});
|
||||||
|
|
||||||
document.querySelector('.site-title').addEventListener('contextmenu', function(ev) {
|
document.querySelector('.site-title').addEventListener('contextmenu', function(ev) {
|
||||||
ev.preventDefault();
|
ev.preventDefault();
|
||||||
document.location.assign("https://design.home-assistant.io/#brand/logo")
|
document.location.assign("https://design.home-assistant.io/#brand/logo")
|
||||||
});
|
});
|
||||||
document.querySelector('.search .close').addEventListener('click', function(ev) {
|
|
||||||
ev.preventDefault();
|
|
||||||
document.querySelector('.search-container').style.display = 'none';
|
|
||||||
});
|
|
||||||
document.querySelector('.show-search').addEventListener('click', function(ev) {
|
|
||||||
ev.preventDefault();
|
|
||||||
document.querySelector('.search-container').style.display = 'block';
|
|
||||||
document.getElementById('toggle').checked = false;
|
|
||||||
document.querySelector('.search-container input').focus();
|
|
||||||
});
|
|
||||||
</script>
|
</script>
|
||||||
|
@ -29,6 +29,7 @@
|
|||||||
<meta name="twitter:image" content="{{ page.og_image | default: "/images/default-social.png" | prepend: site.url }}">
|
<meta name="twitter:image" content="{{ page.og_image | default: "/images/default-social.png" | prepend: site.url }}">
|
||||||
{% if site.social.mastodon.account %}<link rel="me" href="{{ site.social.mastodon.account }}">{% endif %}
|
{% if site.social.mastodon.account %}<link rel="me" href="{{ site.social.mastodon.account }}">{% endif %}
|
||||||
|
|
||||||
|
<link href="https://cdn.jsdelivr.net/npm/@docsearch/css@3/dist/style.min.css" rel="stylesheet" />
|
||||||
<link href="{{ '/stylesheets/prism.css' | cache_buster }}" rel="stylesheet">
|
<link href="{{ '/stylesheets/prism.css' | cache_buster }}" rel="stylesheet">
|
||||||
<link href="{{ '/stylesheets/screen.css' | cache_buster }}" media="screen, projection, print" rel="stylesheet">
|
<link href="{{ '/stylesheets/screen.css' | cache_buster }}" media="screen, projection, print" rel="stylesheet">
|
||||||
<link href="{{ site.subscribe_rss }}" rel="alternate" title="{{ site.title }}" type="application/atom+xml">
|
<link href="{{ site.subscribe_rss }}" rel="alternate" title="{{ site.title }}" type="application/atom+xml">
|
||||||
|
@ -49,18 +49,10 @@
|
|||||||
<li><a href="/blog/">Blog</a></li>
|
<li><a href="/blog/">Blog</a></li>
|
||||||
<li><a href="/help/">Need help?</a></li>
|
<li><a href="/help/">Need help?</a></li>
|
||||||
<li>
|
<li>
|
||||||
<a href="#" class="show-search" aria-label="Show search" ><i class="icon-search"></i></a>
|
<div class="docsearch" id="docsearch"></div>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
<div class="search-container" style="display: none">
|
|
||||||
<div class="search">
|
|
||||||
<i class="icon-search"></i>
|
|
||||||
<input id="search" placeholder="Search the documentation…" />
|
|
||||||
<a href="#" class="close"><i class="icon-remove-sign"></i></a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
32
source/_includes/voice_assistant/install_esp_firmware.md
Normal file
32
source/_includes/voice_assistant/install_esp_firmware.md
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{% capture product_name %}{{ include.name | default: page.product_name }}{% endcapture %}
|
||||||
|
|
||||||
|
2. Connect the {{ product_name }} to your computer.
|
||||||
|
- In the pop-up window, view the available ports.
|
||||||
|
- Plug the USB-C cable into the {{ product_name }} and connect it to your computer.{% if page.product_name == 'ESP32-S3-BOX' %}
|
||||||
|
- If you have an ESP32-S3-BOX-3, plug it into the box directly, not into the docking station (not into the blue part). {% endif %}
|
||||||
|
- In the pop-up window, there should now appear a new entry. Select this USB serial port and select **Connect**.{% if page.product_name == 'ATOM Echo' %}
|
||||||
|
- **Troubleshooting**: If no new port shows, your system may be missing a driver. Close the pop-up window.
|
||||||
|
- In the dialog, select the CH342 driver, install it, then **Try again**.
|
||||||
|
{% endif %}
|
||||||
|
3. Select **Install Voice Assistant**, then **Install**.
|
||||||
|
- Once the installation is complete, select **Next**.
|
||||||
|
- Add the {{ product_name }} to your Wi-Fi:
|
||||||
|
- When prompted, select your network from the list and enter the credentials to your 2.4 GHz Wi-Fi network.
|
||||||
|
- Select **Connect**.
|
||||||
|
- The {{ product_name }} now joined your network. Select **Add to Home Assistant**.
|
||||||
|
4. This opens the **My** link to Home Assistant.
|
||||||
|
- If you have not used My Home Assistant before, you will need to configure it. If your Home Assistant URL is not accessible on `http://homeassistant.local:8123`, replace it with the URL to your Home Assistant instance.
|
||||||
|
- Open the link.
|
||||||
|

|
||||||
|
5. Select **OK**.
|
||||||
|
|
||||||
|

|
||||||
|
6. **Troubleshooting**: If, at this stage, a dialog opens, prompting you to enter the connection settings of your ESPHome node, it means there is already a configuration set up for that ESPHome device.
|
||||||
|
- Close the dialog and perform the procedure on [deleting the {{ product_name }} configuration from ESPHome]({{ config_link }}).
|
||||||
|
- Restart Home Assistant.
|
||||||
|
- Then, under {% my integrations title="**Settings** > **Devices & Services**" %}, your {{ product_name }} should be discovered.
|
||||||
|
7. To add the newly discovered device, select the {{ product_name }} from the list.
|
||||||
|
- Add your {{ product_name }} to a room and select **Finish**.
|
||||||
|
8. You should now see the **ESPHome** integration.
|
||||||
|

|
||||||
|
|
@ -71,7 +71,7 @@ The integration will create a binary sensor for each zone that has a motion sens
|
|||||||
|
|
||||||
### Switch
|
### Switch
|
||||||
|
|
||||||
The integration will create a switch entity to toggle air conditioning fresh air mode, if it is supported.
|
The integration will create switch entities to toggle the MyFan/ezFan setting, and to toggle air conditioning fresh air mode, if they are supported by your hardware.
|
||||||
|
|
||||||
With MyPlace, any relays will be created as switch entities.
|
With MyPlace, any relays will be created as switch entities.
|
||||||
|
|
||||||
|
20
source/_integrations/aepohio.markdown
Normal file
20
source/_integrations/aepohio.markdown
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
---
|
||||||
|
title: AEP Ohio
|
||||||
|
description: Get energy usage from AEP Ohio using the Opower integration
|
||||||
|
ha_category:
|
||||||
|
- Energy
|
||||||
|
- Sensor
|
||||||
|
ha_release: 2024.1
|
||||||
|
ha_domain: aepohio
|
||||||
|
ha_integration_type: virtual
|
||||||
|
ha_supporting_domain: opower
|
||||||
|
ha_supporting_integration: Opower
|
||||||
|
ha_codeowners:
|
||||||
|
- '@tronikos'
|
||||||
|
ha_config_flow: true
|
||||||
|
ha_platforms:
|
||||||
|
- sensor
|
||||||
|
ha_iot_class: Cloud Polling
|
||||||
|
---
|
||||||
|
|
||||||
|
{% include integrations/supported_brand.md %}
|
20
source/_integrations/aeptexas.markdown
Normal file
20
source/_integrations/aeptexas.markdown
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
---
|
||||||
|
title: AEP Texas
|
||||||
|
description: Get energy usage from AEP Texas using the Opower integration
|
||||||
|
ha_category:
|
||||||
|
- Energy
|
||||||
|
- Sensor
|
||||||
|
ha_release: 2024.1
|
||||||
|
ha_domain: aeptexas
|
||||||
|
ha_integration_type: virtual
|
||||||
|
ha_supporting_domain: opower
|
||||||
|
ha_supporting_integration: Opower
|
||||||
|
ha_codeowners:
|
||||||
|
- '@tronikos'
|
||||||
|
ha_config_flow: true
|
||||||
|
ha_platforms:
|
||||||
|
- sensor
|
||||||
|
ha_iot_class: Cloud Polling
|
||||||
|
---
|
||||||
|
|
||||||
|
{% include integrations/supported_brand.md %}
|
@ -27,8 +27,6 @@ The integration can control your Alarm Panel by publishing to the `command_topic
|
|||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
To enable this platform, add the following lines to your `configuration.yaml`:
|
To enable this platform, add the following lines to your `configuration.yaml`:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
|
@ -7,6 +7,7 @@ ha_release: "0.54"
|
|||||||
ha_codeowners:
|
ha_codeowners:
|
||||||
- '@home-assistant/cloud'
|
- '@home-assistant/cloud'
|
||||||
- '@ochlocracy'
|
- '@ochlocracy'
|
||||||
|
- '@jbouwh'
|
||||||
ha_domain: alexa
|
ha_domain: alexa
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -38,18 +39,18 @@ Steps to Integrate an Amazon Alexa Smart Home Skill with Home Assistant:
|
|||||||
- [Add Code to the Lambda Function](#add-code-to-the-lambda-function)
|
- [Add Code to the Lambda Function](#add-code-to-the-lambda-function)
|
||||||
- [Test the Lambda Function](#test-the-lambda-function)
|
- [Test the Lambda Function](#test-the-lambda-function)
|
||||||
- [Configure the Smart Home Service Endpoint](#configure-the-smart-home-service-endpoint)
|
- [Configure the Smart Home Service Endpoint](#configure-the-smart-home-service-endpoint)
|
||||||
- [Account Linking](#account-linking)
|
- [Account linking](#account-linking)
|
||||||
- [Alexa Smart Home Integration Configuration](#alexa-smart-home-integration-configuration)
|
- [Alexa Smart Home Integration Configuration](#alexa-smart-home-integration-configuration)
|
||||||
- [Supported Platforms](#supported-platforms)
|
- [Supported platforms](#supported-platforms)
|
||||||
- [Alarm control panel](#alarm-control-panel)
|
- [Alarm control panel](#alarm-control-panel)
|
||||||
- [Arming](#arming)
|
- [Arming](#arming)
|
||||||
- [Disarming](#disarming)
|
- [Disarming](#disarming)
|
||||||
- [Alert, Automation, Group](#alert-automation-group)
|
- [Alert, Automation, Group](#alert-automation-group)
|
||||||
- [Binary Sensor](#binary-sensor)
|
- [Binary sensor](#binary-sensor)
|
||||||
- [Routines](#routines)
|
- [Routines](#routines)
|
||||||
- [Button, Input Button](#button-input-button)
|
- [Button, Input Button](#button-input-button)
|
||||||
- [Routines](#routines-1)
|
- [Routines](#routines-1)
|
||||||
- [Doorbell Announcement with binary\_sensor](#doorbell-announcement-with-binary_sensor)
|
- [Doorbell announcement with binary\_sensor](#doorbell-announcement-with-binary_sensor)
|
||||||
- [Presence Detection with Binary Sensor](#presence-detection-with-binary-sensor)
|
- [Presence Detection with Binary Sensor](#presence-detection-with-binary-sensor)
|
||||||
- [Camera](#camera)
|
- [Camera](#camera)
|
||||||
- [Climate](#climate)
|
- [Climate](#climate)
|
||||||
@ -59,11 +60,11 @@ Steps to Integrate an Amazon Alexa Smart Home Skill with Home Assistant:
|
|||||||
- [Open/Close/Raise/Lower](#opencloseraiselower)
|
- [Open/Close/Raise/Lower](#opencloseraiselower)
|
||||||
- [Set Cover Position](#set-cover-position)
|
- [Set Cover Position](#set-cover-position)
|
||||||
- [Set Cover Tilt](#set-cover-tilt)
|
- [Set Cover Tilt](#set-cover-tilt)
|
||||||
- [Garage Doors](#garage-doors)
|
- [Garage doors](#garage-doors)
|
||||||
- [Event entities](#event-entities)
|
- [Event entities](#event-entities)
|
||||||
- [Doorbell Events](#doorbell-events)
|
- [Doorbell events](#doorbell-events)
|
||||||
- [Fan](#fan)
|
- [Fan](#fan)
|
||||||
- [Fan Speed](#fan-speed)
|
- [Fan speed](#fan-speed)
|
||||||
- [Fan Preset Mode](#fan-preset-mode)
|
- [Fan Preset Mode](#fan-preset-mode)
|
||||||
- [Fan Direction](#fan-direction)
|
- [Fan Direction](#fan-direction)
|
||||||
- [Fan Oscillation](#fan-oscillation)
|
- [Fan Oscillation](#fan-oscillation)
|
||||||
@ -92,6 +93,13 @@ Steps to Integrate an Amazon Alexa Smart Home Skill with Home Assistant:
|
|||||||
- [Routines](#routines-2)
|
- [Routines](#routines-2)
|
||||||
- [Timer](#timer)
|
- [Timer](#timer)
|
||||||
- [Vacuum](#vacuum)
|
- [Vacuum](#vacuum)
|
||||||
|
- [Valve](#valve)
|
||||||
|
- [Open/Close](#openclose)
|
||||||
|
- [Set Valve Position](#set-valve-position)
|
||||||
|
- [Stop the Valve](#stop-the-valve)
|
||||||
|
- [Water heater](#water-heater)
|
||||||
|
- [Set target temperature](#set-target-temperature)
|
||||||
|
- [Operation Mode](#operation-mode)
|
||||||
- [Alexa Web-Based App](#alexa-web-based-app)
|
- [Alexa Web-Based App](#alexa-web-based-app)
|
||||||
- [Troubleshooting](#troubleshooting)
|
- [Troubleshooting](#troubleshooting)
|
||||||
- [Debugging](#debugging)
|
- [Debugging](#debugging)
|
||||||
@ -458,15 +466,25 @@ Home Assistant supports the following integrations through Alexa using a Smart H
|
|||||||
|
|
||||||
The following platforms are currently supported:
|
The following platforms are currently supported:
|
||||||
|
|
||||||
|
- [Requirements](#requirements)
|
||||||
|
- [Create an Amazon Alexa Smart Home Skill](#create-an-amazon-alexa-smart-home-skill)
|
||||||
|
- [Create an AWS Lambda Function](#create-an-aws-lambda-function)
|
||||||
|
- [Create an IAM Role for Lambda](#create-an-iam-role-for-lambda)
|
||||||
|
- [Add Code to the Lambda Function](#add-code-to-the-lambda-function)
|
||||||
|
- [Test the Lambda Function](#test-the-lambda-function)
|
||||||
|
- [Configure the Smart Home Service Endpoint](#configure-the-smart-home-service-endpoint)
|
||||||
|
- [Account linking](#account-linking)
|
||||||
|
- [Alexa Smart Home Integration Configuration](#alexa-smart-home-integration-configuration)
|
||||||
|
- [Supported platforms](#supported-platforms)
|
||||||
- [Alarm control panel](#alarm-control-panel)
|
- [Alarm control panel](#alarm-control-panel)
|
||||||
- [Arming](#arming)
|
- [Arming](#arming)
|
||||||
- [Disarming](#disarming)
|
- [Disarming](#disarming)
|
||||||
- [Alert, Automation, Group](#alert-automation-group)
|
- [Alert, Automation, Group](#alert-automation-group)
|
||||||
- [Binary Sensor](#binary-sensor)
|
- [Binary sensor](#binary-sensor)
|
||||||
- [Routines](#routines)
|
- [Routines](#routines)
|
||||||
- [Button, Input Button](#button-input-button)
|
- [Button, Input Button](#button-input-button)
|
||||||
- [Routines](#routines-1)
|
- [Routines](#routines-1)
|
||||||
- [Doorbell Announcement with binary\_sensor](#doorbell-announcement-with-binary_sensor)
|
- [Doorbell announcement with binary\_sensor](#doorbell-announcement-with-binary_sensor)
|
||||||
- [Presence Detection with Binary Sensor](#presence-detection-with-binary-sensor)
|
- [Presence Detection with Binary Sensor](#presence-detection-with-binary-sensor)
|
||||||
- [Camera](#camera)
|
- [Camera](#camera)
|
||||||
- [Climate](#climate)
|
- [Climate](#climate)
|
||||||
@ -476,11 +494,11 @@ The following platforms are currently supported:
|
|||||||
- [Open/Close/Raise/Lower](#opencloseraiselower)
|
- [Open/Close/Raise/Lower](#opencloseraiselower)
|
||||||
- [Set Cover Position](#set-cover-position)
|
- [Set Cover Position](#set-cover-position)
|
||||||
- [Set Cover Tilt](#set-cover-tilt)
|
- [Set Cover Tilt](#set-cover-tilt)
|
||||||
- [Garage Doors](#garage-doors)
|
- [Garage doors](#garage-doors)
|
||||||
- [Event entities](#event-entities)
|
- [Event entities](#event-entities)
|
||||||
- [Doorbell Events](#doorbell-events)
|
- [Doorbell events](#doorbell-events)
|
||||||
- [Fan](#fan)
|
- [Fan](#fan)
|
||||||
- [Fan Speed](#fan-speed)
|
- [Fan speed](#fan-speed)
|
||||||
- [Fan Preset Mode](#fan-preset-mode)
|
- [Fan Preset Mode](#fan-preset-mode)
|
||||||
- [Fan Direction](#fan-direction)
|
- [Fan Direction](#fan-direction)
|
||||||
- [Fan Oscillation](#fan-oscillation)
|
- [Fan Oscillation](#fan-oscillation)
|
||||||
@ -509,6 +527,16 @@ The following platforms are currently supported:
|
|||||||
- [Routines](#routines-2)
|
- [Routines](#routines-2)
|
||||||
- [Timer](#timer)
|
- [Timer](#timer)
|
||||||
- [Vacuum](#vacuum)
|
- [Vacuum](#vacuum)
|
||||||
|
- [Valve](#valve)
|
||||||
|
- [Open/Close](#openclose)
|
||||||
|
- [Set Valve Position](#set-valve-position)
|
||||||
|
- [Stop the Valve](#stop-the-valve)
|
||||||
|
- [Water heater](#water-heater)
|
||||||
|
- [Set target temperature](#set-target-temperature)
|
||||||
|
- [Operation Mode](#operation-mode)
|
||||||
|
- [Alexa Web-Based App](#alexa-web-based-app)
|
||||||
|
- [Troubleshooting](#troubleshooting)
|
||||||
|
- [Debugging](#debugging)
|
||||||
|
|
||||||
### Alarm control panel
|
### Alarm control panel
|
||||||
|
|
||||||
@ -1066,6 +1094,63 @@ Support _"turn on"_ and _"turn off"_ utterances. Pause and Resume
|
|||||||
- _"Alexa, pause the vacuum."_
|
- _"Alexa, pause the vacuum."_
|
||||||
- _"Alexa, restart the vacuum."_
|
- _"Alexa, restart the vacuum."_
|
||||||
|
|
||||||
|
### Valve
|
||||||
|
|
||||||
|
Valves are not supported natively within Alexa. So within Alexa, they are represented as a device of an unknown type.
|
||||||
|
|
||||||
|
#### Open/close
|
||||||
|
|
||||||
|
Home Assistant configures valves with semantics that provide _"open"_ and _"close"_ utterances.
|
||||||
|
|
||||||
|
- _"Alexa, open the water valve."_
|
||||||
|
- _"Alexa, close the gas valve."_
|
||||||
|
|
||||||
|
#### Set valve position
|
||||||
|
|
||||||
|
Valves that support a set position can be controlled using percentages.
|
||||||
|
|
||||||
|
- _"Alexa, set the [entity name] position to thirty percent."_
|
||||||
|
- _"Alexa, increase [entity name] position by ten percent."_
|
||||||
|
- _"Alexa, decrease [entity name] position by twenty percent."_
|
||||||
|
|
||||||
|
| Locale | Friendly Name Synonyms |
|
||||||
|
| ------- | ------------------------- |
|
||||||
|
| `en-US` | _"position"_, _"opening"_ |
|
||||||
|
|
||||||
|
Currently, Alexa only supports friendly name synonyms for the `en-US` locale.
|
||||||
|
|
||||||
|
#### Stop the valve
|
||||||
|
|
||||||
|
Valves that support `stop` closing or opening will have an extra toggle control that allows to stop the valve closing or opening operation.
|
||||||
|
|
||||||
|
### Water heater
|
||||||
|
|
||||||
|
Single, double, and triple set-point thermostats are supported. The temperature value from the thermostat will also be exposed at a separate [temperature sensor](#sensor).
|
||||||
|
|
||||||
|
#### Set target temperature
|
||||||
|
|
||||||
|
- _"Alexa, set the boiler's target temperature to 50."_
|
||||||
|
|
||||||
|
You can ask Alexa about the current temperature and current target temperature.
|
||||||
|
|
||||||
|
- _"Alexa, what is the boiler's target temperature?"_
|
||||||
|
- _"Alexa, what is the boiler's current temperature?"_
|
||||||
|
|
||||||
|
#### Operation Mode
|
||||||
|
|
||||||
|
The operation mode can be set from the UI. All Home Assistant operation modes can be set (English only).
|
||||||
|
|
||||||
|
- _"Alexa, set main boiler to eco."_
|
||||||
|
|
||||||
|
To change the water heater's mode, the exact utterance must be used:
|
||||||
|
|
||||||
|
- _"Alexa, set [entity name] to [mode utterance]."_
|
||||||
|
|
||||||
|
If the water heater entity supports on/off, use _"turn on"_ and _"turn off"_ utterances with the entity name or the mode utterance.
|
||||||
|
|
||||||
|
- _"Alexa, turn on the [mode utterance]."_
|
||||||
|
- _"Alexa, turn off the [entity name]."_
|
||||||
|
|
||||||
## Alexa Web-Based App
|
## Alexa Web-Based App
|
||||||
|
|
||||||
The following is a list of regions and the corresponding URL for the web-based Alexa app:
|
The following is a list of regions and the corresponding URL for the web-based Alexa app:
|
||||||
|
48
source/_integrations/aosmith.markdown
Normal file
48
source/_integrations/aosmith.markdown
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
---
|
||||||
|
title: A. O. Smith
|
||||||
|
description: Instructions on how to integrate your A. O. Smith water heater with Home Assistant.
|
||||||
|
ha_category:
|
||||||
|
- Water heater
|
||||||
|
ha_release: 2024.1
|
||||||
|
ha_iot_class: Cloud Polling
|
||||||
|
ha_domain: aosmith
|
||||||
|
ha_config_flow: true
|
||||||
|
ha_codeowners:
|
||||||
|
- '@bdr99'
|
||||||
|
ha_platforms:
|
||||||
|
- water_heater
|
||||||
|
ha_integration_type: integration
|
||||||
|
---
|
||||||
|
|
||||||
|
The A. O. Smith integration allows you to control a compatible A. O. Smith iCOMM-enabled water heater from Home Assistant.
|
||||||
|
|
||||||
|
Before using this integration, your water heater must be connected to a Wi-Fi network and linked to your account using the A. O. Smith mobile app ([iOS](https://apps.apple.com/us/app/a-o-smith/id456489822)/[Android](https://play.google.com/store/apps/details?id=com.aosmith.warrantycheck)).
|
||||||
|
|
||||||
|
## Known compatible models
|
||||||
|
|
||||||
|
- [HPTS-50](https://www.hotwater.com/products/HPTS-50-SG200.html)
|
||||||
|
- [HPTS-66](https://www.hotwater.com/products/HPTS-66-SG200.html)
|
||||||
|
- [HPTS-80](https://www.hotwater.com/products/HPTS-80-SG200.html)
|
||||||
|
|
||||||
|
Water heaters that can be controlled using the A. O. Smith mobile app should be compatible with this integration. If your water heater is not detected by the integration, but it can be controlled using the mobile app, please [open an issue on GitHub](https://github.com/home-assistant/core/issues/new?template=bug_report.yml&integration_name=A.%20O.%20Smith&integration_link=https%3A%2F%2Fwww.home-assistant.io%2Fintegrations%2Faosmith) so that support can be added. Similarly, if your water heater is working with this integration, but its model number is not listed here, please [open an documentation issue](https://github.com/home-assistant/home-assistant.io/issues/new?template=feedback.yml&url=https%3A%2F%2Fwww.home-assistant.io%2Fintegrations%2Faosmith) so it can be added to the list.
|
||||||
|
|
||||||
|
{% include integrations/config_flow.md %}
|
||||||
|
|
||||||
|
## Platforms
|
||||||
|
|
||||||
|
### Water heater
|
||||||
|
|
||||||
|
The water heater entity offers the following capabilities:
|
||||||
|
- Adjust target temperature
|
||||||
|
- Change operation mode
|
||||||
|
- Enable/disable away mode (will set the water heater to "vacation" mode)
|
||||||
|
|
||||||
|
### Sensor
|
||||||
|
|
||||||
|
The following sensor entities are available:
|
||||||
|
- Hot water availability (low, medium, or high)
|
||||||
|
- Energy usage
|
||||||
|
|
||||||
|
## Disclaimer
|
||||||
|
|
||||||
|
This integration is not affiliated with or endorsed by A. O. Smith.
|
20
source/_integrations/appalachianpower.markdown
Normal file
20
source/_integrations/appalachianpower.markdown
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
---
|
||||||
|
title: Appalachian Power
|
||||||
|
description: Get energy usage from Appalachian Power using the Opower integration
|
||||||
|
ha_category:
|
||||||
|
- Energy
|
||||||
|
- Sensor
|
||||||
|
ha_release: 2024.1
|
||||||
|
ha_domain: appalachianpower
|
||||||
|
ha_integration_type: virtual
|
||||||
|
ha_supporting_domain: opower
|
||||||
|
ha_supporting_integration: Opower
|
||||||
|
ha_codeowners:
|
||||||
|
- '@tronikos'
|
||||||
|
ha_config_flow: true
|
||||||
|
ha_platforms:
|
||||||
|
- sensor
|
||||||
|
ha_iot_class: Cloud Polling
|
||||||
|
---
|
||||||
|
|
||||||
|
{% include integrations/supported_brand.md %}
|
@ -20,7 +20,6 @@ Stateless devices such as buttons, remote controls etc are better represented by
|
|||||||
|
|
||||||
The `mqtt` binary sensor platform optionally supports a list of `availability` topics to receive online and offline messages (birth and LWT messages) from the MQTT device. During normal operation, if the MQTT sensor device goes offline (i.e., publishes `payload_not_available` to an `availability` topic), Home Assistant will display the binary sensor as `unavailable`. If these messages are published with the `retain` flag set, the binary sensor will receive an instant update after subscription and Home Assistant will display the correct availability state of the binary sensor when Home Assistant starts up. If the `retain` flag is not set, Home Assistant will display the binary sensor as `unavailable` when Home Assistant starts up. If no `availability` topic is defined, Home Assistant will consider the MQTT device to be `available` and will display its state.
|
The `mqtt` binary sensor platform optionally supports a list of `availability` topics to receive online and offline messages (birth and LWT messages) from the MQTT device. During normal operation, if the MQTT sensor device goes offline (i.e., publishes `payload_not_available` to an `availability` topic), Home Assistant will display the binary sensor as `unavailable`. If these messages are published with the `retain` flag set, the binary sensor will receive an instant update after subscription and Home Assistant will display the correct availability state of the binary sensor when Home Assistant starts up. If the `retain` flag is not set, Home Assistant will display the binary sensor as `unavailable` when Home Assistant starts up. If no `availability` topic is defined, Home Assistant will consider the MQTT device to be `available` and will display its state.
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
To use an MQTT binary sensor in your installation,
|
To use an MQTT binary sensor in your installation,
|
||||||
add the following to your `configuration.yaml` file:
|
add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
@ -78,9 +77,9 @@ device:
|
|||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
connections:
|
connections:
|
||||||
description: "A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `'connections': ['mac', '02:5b:26:a8:dc:12']`."
|
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.'
|
||||||
required: false
|
required: false
|
||||||
type: [list, map]
|
type: list
|
||||||
hw_version:
|
hw_version:
|
||||||
description: The hardware version of the device.
|
description: The hardware version of the device.
|
||||||
required: false
|
required: false
|
||||||
|
66
source/_integrations/blue_current.markdown
Normal file
66
source/_integrations/blue_current.markdown
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
---
|
||||||
|
title: Blue Current
|
||||||
|
description: Instructions on how to integrate Blue Current charge points within Home Assistant.
|
||||||
|
ha_category:
|
||||||
|
- Sensor
|
||||||
|
- Car
|
||||||
|
ha_release: 2024.1
|
||||||
|
ha_iot_class: Cloud Push
|
||||||
|
ha_config_flow: true
|
||||||
|
ha_codeowners:
|
||||||
|
- '@Floris272'
|
||||||
|
- '@gleeuwen'
|
||||||
|
ha_domain: blue_current
|
||||||
|
ha_platforms:
|
||||||
|
- sensor
|
||||||
|
---
|
||||||
|
|
||||||
|
[Blue Current](https://www.bluecurrent.nl/) is an Dutch company that makes electric car chargers.
|
||||||
|
|
||||||
|
The Blue Current integration allows you to connect to your blue current account to Home Assistant and monitor your charge point(s).
|
||||||
|
|
||||||
|
## Prerequisites
|
||||||
|
|
||||||
|
1. Log in to [my.bluecurrent.nl](https://my.bluecurrent.nl/).
|
||||||
|
2. Click on your username and go to settings.
|
||||||
|
3. Enable advanced options.
|
||||||
|
4. Click on your username again and go to advanced.
|
||||||
|
5. Generate an API token.
|
||||||
|
|
||||||
|
{% include integrations/config_flow.md %}
|
||||||
|
|
||||||
|
## Sensor
|
||||||
|
|
||||||
|
The Blue Current integration provides the following sensors:
|
||||||
|
|
||||||
|
### Charge point sensors
|
||||||
|
|
||||||
|
- Activity
|
||||||
|
- Average current
|
||||||
|
- Average voltage
|
||||||
|
- Energy usage in kWh
|
||||||
|
- Max usage in Amps
|
||||||
|
- The max amps the charge point can use.
|
||||||
|
- Offline since
|
||||||
|
- Started on
|
||||||
|
- Stopped on
|
||||||
|
- Total cost in EUR
|
||||||
|
- Total power (estimate)
|
||||||
|
- Vehicle status
|
||||||
|
|
||||||
|
The following sensors are created as well, but disabled by default:
|
||||||
|
|
||||||
|
- Current phase 1-3
|
||||||
|
- offline max usage
|
||||||
|
- remaining current
|
||||||
|
- smart charging max usage
|
||||||
|
- Voltage phase 1-3
|
||||||
|
|
||||||
|
### Grid sensors
|
||||||
|
|
||||||
|
- Grid average current
|
||||||
|
- Grid max current
|
||||||
|
|
||||||
|
The following sensors are created as well, but disabled by default:
|
||||||
|
|
||||||
|
- Grid current phase 1-3
|
@ -12,8 +12,6 @@ The `mqtt` button platform lets you send an MQTT message when the button is pres
|
|||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry
|
# Example configuration.yaml entry
|
||||||
mqtt:
|
mqtt:
|
||||||
|
@ -192,10 +192,10 @@ data:
|
|||||||
{% endraw %}
|
{% endraw %}
|
||||||
|
|
||||||
|
|
||||||
### Service `calendar.list_events`
|
### Service `calendar.get_events`
|
||||||
|
|
||||||
This service populates [Response Data](/docs/scripts/service-calls#use-templates-to-handle-response-data)
|
This service populates [Response Data](/docs/scripts/service-calls#use-templates-to-handle-response-data)
|
||||||
with calendar events within a date range.
|
with calendar events within a date range. It can return events from multiple calendars.
|
||||||
|
|
||||||
| Service data attribute | Optional | Description | Example |
|
| Service data attribute | Optional | Description | Example |
|
||||||
| ---------------------- | -------- | ----------- | --------|
|
| ---------------------- | -------- | ----------- | --------|
|
||||||
@ -209,20 +209,20 @@ Use only one of `end_date_time` or `duration`.
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
{% raw %}
|
|
||||||
```yaml
|
```yaml
|
||||||
service: calendar.list_events
|
service: calendar.get_events
|
||||||
target:
|
target:
|
||||||
entity_id: calendar.school
|
entity_id:
|
||||||
|
- calendar.school
|
||||||
|
- calendar.work
|
||||||
data:
|
data:
|
||||||
duration:
|
duration:
|
||||||
hours: 24
|
hours: 24
|
||||||
response_variable: agenda
|
response_variable: agenda
|
||||||
```
|
```
|
||||||
{% endraw %}
|
|
||||||
|
|
||||||
The response data field `events` is a list of events with these fields:
|
The response data contains a field for every calendar entity (e.g. `calendar.school` and `calendar.work` in this case).
|
||||||
|
Every calendar entity has a field `events` containing a list of events with these fields:
|
||||||
|
|
||||||
| Response data | Description | Example |
|
| Response data | Description | Example |
|
||||||
| ---------------------- | ----------- | -------- |
|
| ---------------------- | ----------- | -------- |
|
||||||
@ -236,16 +236,17 @@ This example uses a template with response data in another service call:
|
|||||||
|
|
||||||
{% raw %}
|
{% raw %}
|
||||||
```yaml
|
```yaml
|
||||||
service: notify.gmail_com
|
service: notify.nina
|
||||||
data:
|
data:
|
||||||
target: gduser1@workspacesamples.dev
|
|
||||||
title: Daily agenda for {{ now().date() }}
|
title: Daily agenda for {{ now().date() }}
|
||||||
message: >-
|
message: >-
|
||||||
Your agenda for today:
|
Your school calendar for today:
|
||||||
<p>
|
{% for event in agenda["calendar.school_calendar"]["events"] %}
|
||||||
{% for event in agenda.events %}
|
{{ event.start}}: {{ event.summary }}<br>
|
||||||
|
{% endfor %}
|
||||||
|
Your work calendar for today:
|
||||||
|
{% for event in agenda["calendar.work_calendar"]["events"] %}
|
||||||
{{ event.start}}: {{ event.summary }}<br>
|
{{ event.start}}: {{ event.summary }}<br>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</p>
|
|
||||||
```
|
```
|
||||||
{% endraw %}
|
{% endraw %}
|
||||||
|
@ -14,8 +14,6 @@ This can be used with an application or a service capable of sending images thro
|
|||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
To enable this camera in your installation, add the following to your `configuration.yaml` file:
|
To enable this camera in your installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@ -78,7 +76,7 @@ device:
|
|||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
connections:
|
connections:
|
||||||
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": ["mac", "02:5b:26:a8:dc:12"]`.'
|
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.'
|
||||||
required: false
|
required: false
|
||||||
type: list
|
type: list
|
||||||
hw_version:
|
hw_version:
|
||||||
|
43
source/_integrations/ccm15.markdown
Normal file
43
source/_integrations/ccm15.markdown
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
---
|
||||||
|
title: Midea CCM15 Data Converter
|
||||||
|
description: Instructions on how to integrate a Midea CCM15 module into Home Assistant.
|
||||||
|
ha_category:
|
||||||
|
- Climate
|
||||||
|
ha_iot_class: Local Polling
|
||||||
|
ha_release: 2023.07.0
|
||||||
|
ha_config_flow: true
|
||||||
|
ha_codeowners:
|
||||||
|
- '@ocalvo'
|
||||||
|
ha_domain: ccm15
|
||||||
|
ha_quality_scale: platinum
|
||||||
|
ha_dhcp: true
|
||||||
|
ha_platforms:
|
||||||
|
- climate
|
||||||
|
ha_integration_type: integration
|
||||||
|
---
|
||||||
|
|
||||||
|
The CCM15 integration allows you to integrate [Midea CCM15](https://mbt.midea.com/hvac-goods/midea-products-category/vrfs/vrf-controller/central-controller-ccm-15) devices in Home Assistant.
|
||||||
|
|
||||||
|
There is currently support for the following device types within Home Assistant:
|
||||||
|
|
||||||
|
- [Configuration](#configuration)
|
||||||
|
- [Climate](#climate)
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
Adding a CCM15 data converter to your Home Assistant instance can be done via the user interface, by using this My Button:
|
||||||
|
{% my config_flow_start badge domain=page.ha_domain %}
|
||||||
|
|
||||||
|
{% details "Manual configuration steps" %}
|
||||||
|
|
||||||
|
1. Browse to your Home Assistant instance.
|
||||||
|
2. Go to **{% my integrations title="Settings > Devices & Services" %}**.
|
||||||
|
3. In the bottom right corner, select the
|
||||||
|
**{% my config_flow_start icon domain=page.ha_domain %}** button.
|
||||||
|
4. From the list, select **CCM15** and follow the instructions on screen.
|
||||||
|
|
||||||
|
{% enddetails %}
|
||||||
|
|
||||||
|
## Climate
|
||||||
|
|
||||||
|
Each data controller can support up to 64 `climate` devices.
|
@ -12,8 +12,6 @@ The `mqtt` climate platform lets you control your MQTT enabled HVAC devices.
|
|||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
To enable this climate platform in your installation, first add the following to your `configuration.yaml` file:
|
To enable this climate platform in your installation, first add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
|
@ -10,6 +10,7 @@ ha_codeowners:
|
|||||||
- '@chemelli74'
|
- '@chemelli74'
|
||||||
ha_iot_class: Local Polling
|
ha_iot_class: Local Polling
|
||||||
ha_platforms:
|
ha_platforms:
|
||||||
|
- alarm_control_panel
|
||||||
- cover
|
- cover
|
||||||
- light
|
- light
|
||||||
- sensor
|
- sensor
|
||||||
@ -23,5 +24,10 @@ The Comelit SimpleHome integration allows you to control your [Comelit home auto
|
|||||||
There is support for the following platform types within Home Assistant:
|
There is support for the following platform types within Home Assistant:
|
||||||
|
|
||||||
- **Comelit Serial Bridge** - allows local control for light, cover, irrigation and "other" devices; creates power sensors.
|
- **Comelit Serial Bridge** - allows local control for light, cover, irrigation and "other" devices; creates power sensors.
|
||||||
|
- **Comelit VEDO System** - allows local control of the alarm system.
|
||||||
|
|
||||||
{% include integrations/config_flow.md %}
|
{% include integrations/config_flow.md %}
|
||||||
|
|
||||||
|
## Alarm control panel
|
||||||
|
|
||||||
|
The integration will create an alarm entity for each area and a sensor for each zone.
|
||||||
|
@ -27,8 +27,6 @@ Optimistic mode can be forced, even if a `state_topic` / `position_topic` is def
|
|||||||
|
|
||||||
The `mqtt` cover platform optionally supports a list of `availability` topics to receive online and offline messages (birth and LWT messages) from the MQTT cover device. During normal operation, if the MQTT cover device goes offline (i.e., publishes a matching `payload_not_available` to any `availability` topic), Home Assistant will display the cover as "unavailable". If these messages are published with the `retain` flag set, the cover will receive an instant update after subscription and Home Assistant will display correct availability state of the cover when Home Assistant starts up. If the `retain` flag is not set, Home Assistant will display the cover as "unavailable" when Home Assistant starts up.
|
The `mqtt` cover platform optionally supports a list of `availability` topics to receive online and offline messages (birth and LWT messages) from the MQTT cover device. During normal operation, if the MQTT cover device goes offline (i.e., publishes a matching `payload_not_available` to any `availability` topic), Home Assistant will display the cover as "unavailable". If these messages are published with the `retain` flag set, the cover will receive an instant update after subscription and Home Assistant will display correct availability state of the cover when Home Assistant starts up. If the `retain` flag is not set, Home Assistant will display the cover as "unavailable" when Home Assistant starts up.
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
To use your MQTT cover in your installation, add the following to your `configuration.yaml` file:
|
To use your MQTT cover in your installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@ -89,7 +87,7 @@ device:
|
|||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
connections:
|
connections:
|
||||||
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": ["mac", "02:5b:26:a8:dc:12"]`.'
|
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.'
|
||||||
required: false
|
required: false
|
||||||
type: list
|
type: list
|
||||||
hw_version:
|
hw_version:
|
||||||
|
@ -13,8 +13,6 @@ The `mqtt` device tracker platform allows you to define new device_trackers thro
|
|||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
To use this device tracker in your installation, add the following to your `configuration.yaml` file:
|
To use this device tracker in your installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@ -75,9 +73,9 @@ device:
|
|||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
connections:
|
connections:
|
||||||
description: "A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `'connections': ['mac', '02:5b:26:a8:dc:12']`."
|
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.'
|
||||||
required: false
|
required: false
|
||||||
type: [list, map]
|
type: list
|
||||||
hw_version:
|
hw_version:
|
||||||
description: The hardware version of the device.
|
description: The hardware version of the device.
|
||||||
required: false
|
required: false
|
||||||
|
@ -53,9 +53,9 @@ device:
|
|||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
connections:
|
connections:
|
||||||
description: "A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `'connections': ['mac', '02:5b:26:a8:dc:12']`."
|
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.'
|
||||||
required: false
|
required: false
|
||||||
type: [list, map]
|
type: list
|
||||||
identifiers:
|
identifiers:
|
||||||
description: A list of IDs that uniquely identify the device. For example a serial number.
|
description: A list of IDs that uniquely identify the device. For example a serial number.
|
||||||
required: false
|
required: false
|
||||||
|
@ -53,31 +53,34 @@ Currently the following device types within Home Assistant are supported.
|
|||||||
|
|
||||||
### Images
|
### Images
|
||||||
|
|
||||||
- QR code of your guest wifi credentials
|
- QR code of your guest Wi-Fi credentials
|
||||||
- Updates every 15 seconds if changes are detected
|
- Updates every 15 seconds if changes are detected
|
||||||
- Is enabled by default
|
- Is enabled by default
|
||||||
|
|
||||||
### Presence detection
|
### Presence detection
|
||||||
|
|
||||||
- Detect presence of devices connected to the main or the guest wifi
|
- Detect presence of devices connected to the main or the guest Wi-Fi
|
||||||
- Updates every 15 seconds
|
- Updates every 15 seconds
|
||||||
- Automatically adds new devices as disabled entities unless disabled via system option
|
- Automatically adds new devices as disabled entities unless disabled via system option
|
||||||
|
|
||||||
### Sensors
|
### Sensors
|
||||||
|
|
||||||
- Number of connected wifi clients
|
- Number of connected Wi-Fi clients
|
||||||
- Updates every 15 seconds
|
- Updates every 15 seconds
|
||||||
- Is enabled by default
|
- Is enabled by default
|
||||||
- Number of neighbored wifi networks
|
- Number of neighbored Wi-Fi networks
|
||||||
- Updates every 5 minutes
|
- Updates every 5 minutes
|
||||||
- Is disabled by default because it runs quite long
|
- Is disabled by default because it runs quite long
|
||||||
- Number of PLC devices in the same PLC network
|
- Number of PLC devices in the same PLC network
|
||||||
- Updates every 5 minutes
|
- Updates every 5 minutes
|
||||||
- Is disabled by default because it typically rarely changes
|
- Is disabled by default because it typically rarely changes
|
||||||
|
- PLC PHY rates
|
||||||
|
- Updates every 5 minutes
|
||||||
|
- PHY rates to/from the device attached to the router are enabled by default. PHY rates between all other devices are disabled by default.
|
||||||
|
|
||||||
### Switch
|
### Switch
|
||||||
|
|
||||||
- Turn on/off guest wifi
|
- Turn on/off guest Wi-Fi
|
||||||
- Is enabled by default
|
- Is enabled by default
|
||||||
- Turn on/off the device LEDs
|
- Turn on/off the device LEDs
|
||||||
- Is enabled by default
|
- Is enabled by default
|
||||||
@ -103,7 +106,7 @@ The list of supported devolo devices depends on the device firmware and the devi
|
|||||||
- dLAN 550+ Wifi
|
- dLAN 550+ Wifi
|
||||||
- dLAN 550 WiFi
|
- dLAN 550 WiFi
|
||||||
|
|
||||||
Since firmware 7.10 also the following device without Wifi can be used as long as the corresponding entities are supported:
|
Since firmware 7.10 also the following device without Wi-Fi can be used as long as the corresponding entities are supported:
|
||||||
|
|
||||||
- Magic 2 LAN triple
|
- Magic 2 LAN triple
|
||||||
- Magic 2 DinRail
|
- Magic 2 DinRail
|
||||||
|
@ -51,7 +51,7 @@ Now use the Discord Authorization page with the **Application ID** of your [appl
|
|||||||
|
|
||||||
Wait for the confirmation which should say "Authorized".
|
Wait for the confirmation which should say "Authorized".
|
||||||
|
|
||||||
Once the bot has been added to your server, get the channel ID of the channel you want the bot to operate in. In The Discord application go to **Settings** > **Advanced** > **Enable Developer Mode**.
|
Once the bot has been added to your server, get the channel ID of the channel you want the bot to operate in. Open Discord and go to **User Settings** > **Advanced** > **Enable Developer Mode**. User settings can be found next to your username in Discord.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
@ -25,3 +25,9 @@ In addition to a lock entity, each added dKey lock will also have:
|
|||||||
- A battery sensor
|
- A battery sensor
|
||||||
- A binary_sensor which shows if the door is open or not
|
- A binary_sensor which shows if the door is open or not
|
||||||
- A binary_sensor which shows the position of the lock's dead bolt
|
- A binary_sensor which shows the position of the lock's dead bolt
|
||||||
|
|
||||||
|
<div class='note warning'>
|
||||||
|
|
||||||
|
The Dormakaba dKey lock is currently not working with USB dongles or built-in Bluetooth radios, only [ESPHome Bluetooth proxies](/integrations/bluetooth/#remote-adapters-bluetooth-proxies) work reliably.
|
||||||
|
|
||||||
|
</div>
|
||||||
|
66
source/_integrations/drop_connect.markdown
Normal file
66
source/_integrations/drop_connect.markdown
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
---
|
||||||
|
title: DROP
|
||||||
|
description: Instructions on how to integrate DROP into Home Assistant.
|
||||||
|
ha_category:
|
||||||
|
- Binary sensor
|
||||||
|
- Select
|
||||||
|
- Sensor
|
||||||
|
- Switch
|
||||||
|
ha_config_flow: true
|
||||||
|
ha_codeowners:
|
||||||
|
- '@ChandlerSystems'
|
||||||
|
- '@pfrazer'
|
||||||
|
ha_domain: drop_connect
|
||||||
|
ha_iot_class: Local Push
|
||||||
|
ha_mqtt: true
|
||||||
|
ha_release: '2024.1'
|
||||||
|
ha_platforms:
|
||||||
|
- binary_sensor
|
||||||
|
- select
|
||||||
|
- sensor
|
||||||
|
- switch
|
||||||
|
ha_integration_type: integration
|
||||||
|
---
|
||||||
|
|
||||||
|
The DROP integration provides connectivity with
|
||||||
|
[DROP smart water system](https://dropconnect.com) devices via a local MQTT API.
|
||||||
|
|
||||||
|
### Supported devices
|
||||||
|
|
||||||
|
There is currently support for the following DROP products within Home Assistant:
|
||||||
|
|
||||||
|
- **DROP Hub**: centralized system status and control.
|
||||||
|
- **Leak Detector**: reports detected leaks around the home.
|
||||||
|
- **Softener**: improves water quality by decreasing water hardness with integral water shutoff.
|
||||||
|
- **Filter**: improves water quality by removing contaminants with integral water shutoff.
|
||||||
|
- **Protection Valve**: automatic water shutoff with slow leak detection.
|
||||||
|
- **Pump Controller**: smart replacement for an FSG pressure switch.
|
||||||
|
- **RO Filter**: reverse osmosis drinking water filtration.
|
||||||
|
- **Salt Sensor**: alerts when the salt level in the softener brine tank is low.
|
||||||
|
|
||||||
|
### Configuration
|
||||||
|
|
||||||
|
To use DROP with Home Assistant, you must have already configured the [MQTT](/integrations/mqtt/) platform. It is
|
||||||
|
recommended
|
||||||
|
that you create a unique user to connect your DROP Hub to your MQTT broker. If you are
|
||||||
|
using the Mosquitto add-on, go to **Settings > Add-ons** in the Home Assistant UI and select the Mosquitto broker.
|
||||||
|
Under **Configuration**, enter a new username and password for your DROP Hub in the **Logins** field:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- username: drop
|
||||||
|
password: your_unique_password
|
||||||
|
```
|
||||||
|
|
||||||
|
If you are using a different MQTT broker, please reference its documentation to learn how to add a new user.
|
||||||
|
|
||||||
|
To enable the DROP integration, use the DROP Connect app to connect your DROP Hub to your MQTT broker:
|
||||||
|
|
||||||
|
- Start the DROP Connect app and connect to your DROP Hub.
|
||||||
|
- In the **Hub Network Settings** section on the **System > Advanced** page, tap the **Configure MQTT** button.
|
||||||
|
- Enter the MQTT broker address, port number, username, and password.
|
||||||
|
- Click **Connect** and confirm that the DROP Hub has connected to the MQTT broker.
|
||||||
|
|
||||||
|
Once the DROP Hub is connected to your MQTT broker, the devices on your DROP system will be discovered by Home
|
||||||
|
Assistant.
|
||||||
|
Go to **Settings > Devices & Services** in the Home Assistant UI to add your DROP devices.
|
||||||
|
|
@ -65,3 +65,123 @@ of hours during the day.
|
|||||||
For the dynamic gas prices, only entities are created that display the
|
For the dynamic gas prices, only entities are created that display the
|
||||||
`current` and `next hour` price because the price is always fixed for
|
`current` and `next hour` price because the price is always fixed for
|
||||||
24 hours; new prices are published every morning at **05:00 UTC time**.
|
24 hours; new prices are published every morning at **05:00 UTC time**.
|
||||||
|
|
||||||
|
## Services
|
||||||
|
|
||||||
|
The energy and gas prices are exposed using [service calls](/docs/scripts/service-calls/). The services populate [response data](/docs/scripts/service-calls#use-templates-to-handle-response-data) with price data.
|
||||||
|
|
||||||
|
### Service `easyenergy.get_gas_prices`
|
||||||
|
|
||||||
|
Fetches the hourly prices for gas.
|
||||||
|
|
||||||
|
| Service data attribute | Optional | Description | Example |
|
||||||
|
| ---------------------- | -------- | ----------- | --------|
|
||||||
|
| `config_entry` | no | Config entry to use. | 013713c172577bada2874a32dbe44feb
|
||||||
|
| `incl_vat` | no | Defines whether the prices include or exclude VAT. Defaults to True | False
|
||||||
|
| `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00
|
||||||
|
| `end` | yes | End time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00
|
||||||
|
|
||||||
|
#### Response data
|
||||||
|
|
||||||
|
The response data is a dictionary with the gas timestamps and prices as string and float values.
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"prices": [
|
||||||
|
{
|
||||||
|
"timestamp": "2023-12-09 03:00:00+00:00",
|
||||||
|
"price": 0.46914
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"timestamp": "2023-12-09 04:00:00+00:00",
|
||||||
|
"price": 0.46914
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Service `easyenergy.get_energy_usage_prices`
|
||||||
|
|
||||||
|
Fetches the hourly prices for energy that you use (buy).
|
||||||
|
|
||||||
|
| Service data attribute | Optional | Description | Example |
|
||||||
|
| ---------------------- | -------- | ----------- | --------|
|
||||||
|
| `config_entry` | no | Config entry to use. | 013713c172577bada2874a32dbe44feb
|
||||||
|
| `incl_vat` | no | Defines whether the prices include or exclude VAT. Defaults to True | False
|
||||||
|
| `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00
|
||||||
|
| `end` | yes | End time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00
|
||||||
|
|
||||||
|
#### Response data
|
||||||
|
|
||||||
|
The response data is a dictionary with the energy timestamps as strings and prices as float values.
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"prices": [
|
||||||
|
{
|
||||||
|
"timestamp": "2023-12-09 03:00:00+00:00",
|
||||||
|
"price": 0.08418
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"timestamp": "2023-12-09 04:00:00+00:00",
|
||||||
|
"price": 0.08758
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Service `easyenergy.get_energy_return_prices`
|
||||||
|
|
||||||
|
Fetches the hourly prices for energy that you return (sell).
|
||||||
|
|
||||||
|
| Service data attribute | Optional | Description | Example |
|
||||||
|
| ---------------------- | -------- | ----------- | --------|
|
||||||
|
| `config_entry` | no | Config entry to use. | 013713c172577bada2874a32dbe44feb
|
||||||
|
| `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00
|
||||||
|
| `end` | yes | End time to get prices from. Defaults to today 00:00:00 | 2023-01-01 00:00:00
|
||||||
|
|
||||||
|
#### Response data
|
||||||
|
|
||||||
|
The response data is a dictionary with the energy timestamps as strings and prices as float values.
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"prices": [
|
||||||
|
{
|
||||||
|
"timestamp": "2023-12-09 03:00:00+00:00",
|
||||||
|
"price": 0.06957
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"timestamp": "2023-12-09 04:00:00+00:00",
|
||||||
|
"price": 0.07238
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Add response to template sensor
|
||||||
|
|
||||||
|
You can use the response data in a template sensor that is updated every hour:
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
template:
|
||||||
|
- trigger:
|
||||||
|
- platform: time_pattern
|
||||||
|
seconds: "*"
|
||||||
|
action:
|
||||||
|
- service: easyenergy.get_energy_usage_prices
|
||||||
|
response_variable: response
|
||||||
|
data:
|
||||||
|
config_entry: "013713c172577bada2874a32dbe44feb"
|
||||||
|
incl_vat: true
|
||||||
|
sensor:
|
||||||
|
- name: Energy prices
|
||||||
|
device_class: timestamp
|
||||||
|
state: "{{ now() }}"
|
||||||
|
attributes:
|
||||||
|
prices: "{{ response.prices }}"
|
||||||
|
```
|
||||||
|
|
||||||
|
{% endraw %}
|
||||||
|
@ -52,3 +52,100 @@ Every day around **14:00 UTC time**, the new prices are published for the follow
|
|||||||
For the dynamic gas prices, only entities are created that display the
|
For the dynamic gas prices, only entities are created that display the
|
||||||
`current` and `next hour` price because the price is always fixed for
|
`current` and `next hour` price because the price is always fixed for
|
||||||
24 hours; new prices are published every morning at **05:00 UTC time**.
|
24 hours; new prices are published every morning at **05:00 UTC time**.
|
||||||
|
|
||||||
|
## Services
|
||||||
|
|
||||||
|
The energy and gas prices are exposed using [service calls](/docs/scripts/service-calls/). The services populate [Response Data](/docs/scripts/service-calls#use-templates-to-handle-response-data) with price data.
|
||||||
|
|
||||||
|
### Service `energyzero.get_gas_prices`
|
||||||
|
|
||||||
|
Fetches the gas prices.
|
||||||
|
|
||||||
|
| Service data attribute | Optional | Description | Example |
|
||||||
|
| ---------------------- | -------- | ----------- | --------|
|
||||||
|
| `incl_vat` | no | Defines whether the prices include or exclude VAT. | false
|
||||||
|
| `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00
|
||||||
|
| `end` | yes | End time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00
|
||||||
|
|
||||||
|
### Response data
|
||||||
|
|
||||||
|
The response data is a dictionary with the gas timestamps and prices as string and float values.
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"prices": [
|
||||||
|
{
|
||||||
|
"timestamp": "2023-09-25 03:00:00+00:00",
|
||||||
|
"price": 1.1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"timestamp": "2023-09-25 04:00:00+00:00",
|
||||||
|
"price": 1.05
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
|
### Service `energyzero.get_energy_prices`
|
||||||
|
|
||||||
|
Fetches the energy prices.
|
||||||
|
|
||||||
|
| Service data attribute | Optional | Description | Example |
|
||||||
|
| ---------------------- | -------- | ----------- | --------|
|
||||||
|
| `incl_vat` | no | Defines whether the prices include or exclude VAT. | false
|
||||||
|
| `start` | yes | Start time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00
|
||||||
|
| `end` | yes | End time to get prices. Defaults to today 00:00:00 | 2023-01-01 00:00:00
|
||||||
|
|
||||||
|
### Response data
|
||||||
|
|
||||||
|
The response data is a dictionary with the energy timestamps and prices as string and float values.
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"prices": [
|
||||||
|
{
|
||||||
|
"timestamp": "2023-09-25 03:00:00+00:00",
|
||||||
|
"price": 0.05
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"timestamp": "2023-09-25 04:00:00+00:00",
|
||||||
|
"price": 0.12
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
|
### Add response to sensor
|
||||||
|
|
||||||
|
The response data can be added to a template sensor:
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
template:
|
||||||
|
- trigger:
|
||||||
|
- platform: time_pattern
|
||||||
|
hours: "*"
|
||||||
|
action:
|
||||||
|
- service: energyzero.get_energy_prices
|
||||||
|
response_variable: prices
|
||||||
|
data:
|
||||||
|
incl_vat: false
|
||||||
|
sensor:
|
||||||
|
- name: Energy prices
|
||||||
|
device_class: timestamp
|
||||||
|
state: "{{ now() }}"
|
||||||
|
attributes:
|
||||||
|
prices: '{{ prices }}'
|
||||||
|
```
|
||||||
|
|
||||||
|
{% endraw %}
|
||||||
|
@ -24,7 +24,7 @@ When you want to add a device for the first time, turn it on before following th
|
|||||||
|
|
||||||
- turn on/off
|
- turn on/off
|
||||||
- set input
|
- set input
|
||||||
- set/get color mode
|
- set/get color mode including high/low lamp
|
||||||
- increase/decrease volume
|
- increase/decrease volume
|
||||||
- mute/unmute audio
|
- mute/unmute audio
|
||||||
- send next/previous track
|
- send next/previous track
|
||||||
@ -37,6 +37,7 @@ When you want to add a device for the first time, turn it on before following th
|
|||||||
|
|
||||||
- Epson EH-TW5350
|
- Epson EH-TW5350
|
||||||
- Epson EH-TW7000
|
- Epson EH-TW7000
|
||||||
|
- Epson EH-TW9400W (shares platform with 7400/8400/9400(w))
|
||||||
|
|
||||||
To make this module work you need to connect your projector to your LAN.
|
To make this module work you need to connect your projector to your LAN.
|
||||||
The best is to use iProjection app by Epson to test if it is working.
|
The best is to use iProjection app by Epson to test if it is working.
|
||||||
|
@ -12,8 +12,6 @@ The `mqtt` event platform allows you to process event info from an MQTT message.
|
|||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry
|
# Example configuration.yaml entry
|
||||||
mqtt:
|
mqtt:
|
||||||
@ -167,7 +165,7 @@ qos:
|
|||||||
type: integer
|
type: integer
|
||||||
default: 0
|
default: 0
|
||||||
state_topic:
|
state_topic:
|
||||||
description: The MQTT topic subscribed to receive JSON event payloads. The JSON payload should contain the `event_type` element. The event type should be one of the configured `event_types`.
|
description: The MQTT topic subscribed to receive JSON event payloads. The JSON payload should contain the `event_type` element. The event type should be one of the configured `event_types`. Note that replayed retained messages will be discarded.
|
||||||
default: None
|
default: None
|
||||||
required: true
|
required: true
|
||||||
type: string
|
type: string
|
||||||
|
@ -18,8 +18,6 @@ When a `state_topic` is not available, the fan will work in optimistic mode. In
|
|||||||
|
|
||||||
Optimistic mode can be forced even if a `state_topic` is available. Try to enable it if you are experiencing incorrect fan operation.
|
Optimistic mode can be forced even if a `state_topic` is available. Try to enable it if you are experiencing incorrect fan operation.
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
To enable MQTT fans in your installation, add the following to your `configuration.yaml` file:
|
To enable MQTT fans in your installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@ -86,7 +84,7 @@ device:
|
|||||||
connections:
|
connections:
|
||||||
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.'
|
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.'
|
||||||
required: false
|
required: false
|
||||||
type: [list, map]
|
type: list
|
||||||
hw_version:
|
hw_version:
|
||||||
description: The hardware version of the device.
|
description: The hardware version of the device.
|
||||||
required: false
|
required: false
|
||||||
|
@ -21,7 +21,7 @@ The `fastdotcom` integration uses the [Fast.com](https://fast.com/) web service
|
|||||||
<div class='note'>
|
<div class='note'>
|
||||||
|
|
||||||
Currently, the Fast.com integration only supports measuring download bandwidth.
|
Currently, the Fast.com integration only supports measuring download bandwidth.
|
||||||
If you want to measure bandwidth metrics other then download such as ping and upload, utilize the [Speedtest.net](/integrations/speedtestdotnet) integration.
|
If you want to measure bandwidth metrics other than download such as ping and upload, utilize the [Speedtest.net](/integrations/speedtestdotnet) integration.
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ ha_ssdp: true
|
|||||||
ha_config_flow: true
|
ha_config_flow: true
|
||||||
---
|
---
|
||||||
|
|
||||||
This integration provides support for Internet Radios based on the [Frontier Silicon chipset]. Some of the manufacturers which offer products based on these chips include: Hama, Medion, Slivercrest, Auna, Technisat, Revo, Pinnel, etc. These devices will be usually controlled by the UNDOK app.
|
This integration provides support for Internet Radios based on the [Frontier Silicon chipset]. Some of the manufacturers which offer products based on these chips include: Hama, Medion, Slivercrest, Auna, Technisat, Revo, Pinnel, etc. These devices will be usually controlled by the OKTIV or UNDOK apps.
|
||||||
|
|
||||||
## Supported models
|
## Supported models
|
||||||
|
|
||||||
@ -28,11 +28,12 @@ Supported devices include, but are not limited to:
|
|||||||
- Silvercrest: [SIRD 14 C2 (archived website)]
|
- Silvercrest: [SIRD 14 C2 (archived website)]
|
||||||
- Teufel: [Radio 3sixty (2019)]
|
- Teufel: [Radio 3sixty (2019)]
|
||||||
- Roberts: [Roberts Stream 94i]
|
- Roberts: [Roberts Stream 94i]
|
||||||
- Some models from: Auna, Technisat, Revo, Pinell, Como Audio
|
- TechniSat: [DIGITRADIO 10 IR], and some other models
|
||||||
|
- Some models from: Auna, Revo, Pinell, Como Audio
|
||||||
|
|
||||||
This integration was developed and tested with a [Roberts Stream 94i].
|
This integration was developed and tested with a [Roberts Stream 94i].
|
||||||
|
|
||||||
If your device is supported by the UNDOK app, then it is also supported by this integration.
|
If your device is supported by the OKTIV or UNDOK apps, then it is also supported by this integration.
|
||||||
|
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
@ -90,3 +91,4 @@ This renders the usage of [UNDOK] almost impossible for these older devices, as
|
|||||||
[Radio 3sixty (2019)]: https://teufel.de/radio-3sixty-2019-105437000
|
[Radio 3sixty (2019)]: https://teufel.de/radio-3sixty-2019-105437000
|
||||||
[SIRD 14 C2 (archived website)]: https://web.archive.org/web/20191011141311/https://www.silvercrest-multiroom.de/produkte/stereo-internet-radio/
|
[SIRD 14 C2 (archived website)]: https://web.archive.org/web/20191011141311/https://www.silvercrest-multiroom.de/produkte/stereo-internet-radio/
|
||||||
[Roberts Stream 94i]: https://www.robertsradio.com/en-gb/stream-94i
|
[Roberts Stream 94i]: https://www.robertsradio.com/en-gb/stream-94i
|
||||||
|
[DIGITRADIO 10 IR]: https://www.technisat.com/en_XX/DIGITRADIO-10-IR/352-10774-22920/
|
||||||
|
@ -272,7 +272,7 @@ Currently, the following domains are available to be used with Google Assistant,
|
|||||||
- button (scene)
|
- button (scene)
|
||||||
- camera (streaming, requires compatible camera)
|
- camera (streaming, requires compatible camera)
|
||||||
- climate (temperature setting, hvac_mode)
|
- climate (temperature setting, hvac_mode)
|
||||||
- cover (on/off/set position)
|
- cover (on/off/set position/stop/start=toggle cover)
|
||||||
- event (only entities with device class `doorbell` are supported)
|
- event (only entities with device class `doorbell` are supported)
|
||||||
- fan (on/off/speed percentage/preset mode)
|
- fan (on/off/speed percentage/preset mode)
|
||||||
- group (on/off)
|
- group (on/off)
|
||||||
@ -289,6 +289,8 @@ Currently, the following domains are available to be used with Google Assistant,
|
|||||||
- sensor (temperature setting for temperature sensors and humidity setting for humidity sensors)
|
- sensor (temperature setting for temperature sensors and humidity setting for humidity sensors)
|
||||||
- switch (on/off)
|
- switch (on/off)
|
||||||
- vacuum (dock/start/stop/pause)
|
- vacuum (dock/start/stop/pause)
|
||||||
|
- valve (open/close/set position/stop/start=toggle valve)
|
||||||
|
- water_heater (on-off/temperature setting/operation mode)
|
||||||
|
|
||||||
<div class='note'>
|
<div class='note'>
|
||||||
|
|
||||||
|
@ -12,7 +12,7 @@ ha_domain: google_generative_ai_conversation
|
|||||||
ha_integration_type: service
|
ha_integration_type: service
|
||||||
---
|
---
|
||||||
|
|
||||||
The Google Generative AI integration adds a conversation agent powered by [Google Generative AI](https://developers.generativeai.google/) in Home Assistant.
|
The Google Generative AI integration adds a conversation agent powered by [Google Generative AI](https://ai.google.dev/) in Home Assistant.
|
||||||
|
|
||||||
This conversation agent is unable to control your house. The Google Generative AI conversation agent can be used in automations, but not as a [sentence trigger](/docs/automation/trigger/#sentence-trigger). It can only query information that has been provided by Home Assistant. To be able to answer questions about your house, Home Assistant will need to provide Google Generative AI with the details of your house, which include areas, devices and their states.
|
This conversation agent is unable to control your house. The Google Generative AI conversation agent can be used in automations, but not as a [sentence trigger](/docs/automation/trigger/#sentence-trigger). It can only query information that has been provided by Home Assistant. To be able to answer questions about your house, Home Assistant will need to provide Google Generative AI with the details of your house, which include areas, devices and their states.
|
||||||
|
|
||||||
@ -24,8 +24,6 @@ This integration requires an API key to use, [which you can generate here](https
|
|||||||
|
|
||||||
The Google Generative AI API key is used to authenticate requests to the Google Generative AI API. To generate an API key take the following steps:
|
The Google Generative AI API key is used to authenticate requests to the Google Generative AI API. To generate an API key take the following steps:
|
||||||
|
|
||||||
- Join the PaLM API and MakerSuite [waitlist](https://makersuite.google.com/waitlist).
|
|
||||||
- Wait several days for an email with subject "It’s your turn to use the PaLM API and MakerSuite".
|
|
||||||
- Visit the [API Keys page](https://makersuite.google.com/app/apikey) to retrieve the API key you'll use to configure the integration.
|
- Visit the [API Keys page](https://makersuite.google.com/app/apikey) to retrieve the API key you'll use to configure the integration.
|
||||||
|
|
||||||
{% include integrations/option_flow.md %}
|
{% include integrations/option_flow.md %}
|
||||||
|
@ -18,6 +18,8 @@ ha_platforms:
|
|||||||
ha_zeroconf: true
|
ha_zeroconf: true
|
||||||
ha_integration_type: integration
|
ha_integration_type: integration
|
||||||
ha_quality_scale: platinum
|
ha_quality_scale: platinum
|
||||||
|
works_with:
|
||||||
|
- local
|
||||||
---
|
---
|
||||||
|
|
||||||
Integration for the [HomeWizard Energy](https://www.homewizard.com) platform. It can collect data locally from the HomeWizard Energy products and create them as sensors in Home Assistant.
|
Integration for the [HomeWizard Energy](https://www.homewizard.com) platform. It can collect data locally from the HomeWizard Energy products and create them as sensors in Home Assistant.
|
||||||
|
@ -18,8 +18,6 @@ When a `state_topic` is not available, the humidifier will work in optimistic mo
|
|||||||
|
|
||||||
Optimistic mode can be forced even if a `state_topic` is available. Try to enable it if you are experiencing incorrect humidifier operation.
|
Optimistic mode can be forced even if a `state_topic` is available. Try to enable it if you are experiencing incorrect humidifier operation.
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
To enable MQTT humidifiers in your installation, add the following to your `configuration.yaml` file:
|
To enable MQTT humidifiers in your installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@ -105,7 +103,7 @@ device:
|
|||||||
connections:
|
connections:
|
||||||
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.'
|
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.'
|
||||||
required: false
|
required: false
|
||||||
type: [list, map]
|
type: list
|
||||||
hw_version:
|
hw_version:
|
||||||
description: The hardware version of the device.
|
description: The hardware version of the device.
|
||||||
required: false
|
required: false
|
||||||
|
@ -18,8 +18,6 @@ An alternative setup is to use the `url_topic` option to receive an image URL fo
|
|||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
To enable this image in your installation, add the following to your `configuration.yaml` file:
|
To enable this image in your installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@ -81,7 +79,7 @@ device:
|
|||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
connections:
|
connections:
|
||||||
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": ["mac", "02:5b:26:a8:dc:12"]`.'
|
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.'
|
||||||
required: false
|
required: false
|
||||||
type: list
|
type: list
|
||||||
hw_version:
|
hw_version:
|
||||||
|
20
source/_integrations/indianamichiganpower.markdown
Normal file
20
source/_integrations/indianamichiganpower.markdown
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
---
|
||||||
|
title: Indiana Michigan Power
|
||||||
|
description: Get energy usage from Indiana Michigan Power using the Opower integration
|
||||||
|
ha_category:
|
||||||
|
- Energy
|
||||||
|
- Sensor
|
||||||
|
ha_release: 2024.1
|
||||||
|
ha_domain: indianamichiganpower
|
||||||
|
ha_integration_type: virtual
|
||||||
|
ha_supporting_domain: opower
|
||||||
|
ha_supporting_integration: Opower
|
||||||
|
ha_codeowners:
|
||||||
|
- '@tronikos'
|
||||||
|
ha_config_flow: true
|
||||||
|
ha_platforms:
|
||||||
|
- sensor
|
||||||
|
ha_iot_class: Cloud Polling
|
||||||
|
---
|
||||||
|
|
||||||
|
{% include integrations/supported_brand.md %}
|
@ -98,7 +98,7 @@ conversation:
|
|||||||
intent_script:
|
intent_script:
|
||||||
EventCountToday:
|
EventCountToday:
|
||||||
action:
|
action:
|
||||||
- service: calendar.list_events
|
- service: calendar.get_events
|
||||||
target:
|
target:
|
||||||
entity_id: calendar.my_calendar
|
entity_id: calendar.my_calendar
|
||||||
data_template:
|
data_template:
|
||||||
@ -108,7 +108,7 @@ intent_script:
|
|||||||
- stop: ""
|
- stop: ""
|
||||||
response_variable: result # and return it
|
response_variable: result # and return it
|
||||||
speech:
|
speech:
|
||||||
text: "{{ action_response.events | length }}" # use the action's response
|
text: "{{ action_response['calendar.my_calendar'].events | length }}" # use the action's response
|
||||||
```
|
```
|
||||||
|
|
||||||
{% endraw %}
|
{% endraw %}
|
||||||
|
@ -201,7 +201,7 @@ Delete a Z-Wave Lock User Code via the ISY.
|
|||||||
|
|
||||||
#### Service `isy994.rename_node`
|
#### Service `isy994.rename_node`
|
||||||
|
|
||||||
Rename a node or group (scene) on the ISY994. Note: this will not automatically change the Home Assistant Entity Name or Entity ID to match. The entity name and ID will only be updated after calling `isy994.reload` or restarting Home Assistant, and ONLY IF you have not already customized the name within Home Assistant.
|
Rename a node or group (scene) on the ISY994. Note: this will not automatically change the Home Assistant Entity Name or Entity ID to match. The entity name and ID will only be updated after reloading the integration or restarting Home Assistant, and ONLY IF you have not already customized the name within Home Assistant.
|
||||||
|
|
||||||
| Service data attribute | Optional | Description |
|
| Service data attribute | Optional | Description |
|
||||||
| ---------------------- | -------- | -------------------------------------------------------------- |
|
| ---------------------- | -------- | -------------------------------------------------------------- |
|
||||||
|
20
source/_integrations/kentuckypower.markdown
Normal file
20
source/_integrations/kentuckypower.markdown
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
---
|
||||||
|
title: Kentucky Power
|
||||||
|
description: Get energy usage from Kentucky Power using the Opower integration
|
||||||
|
ha_category:
|
||||||
|
- Energy
|
||||||
|
- Sensor
|
||||||
|
ha_release: 2024.1
|
||||||
|
ha_domain: kentuckypower
|
||||||
|
ha_integration_type: virtual
|
||||||
|
ha_supporting_domain: opower
|
||||||
|
ha_supporting_integration: Opower
|
||||||
|
ha_codeowners:
|
||||||
|
- '@tronikos'
|
||||||
|
ha_config_flow: true
|
||||||
|
ha_platforms:
|
||||||
|
- sensor
|
||||||
|
ha_iot_class: Cloud Polling
|
||||||
|
---
|
||||||
|
|
||||||
|
{% include integrations/supported_brand.md %}
|
@ -544,7 +544,7 @@ name:
|
|||||||
address:
|
address:
|
||||||
description: Group address to send to.
|
description: Group address to send to.
|
||||||
required: true
|
required: true
|
||||||
type: [string, list]
|
type: string
|
||||||
payload:
|
payload:
|
||||||
description: The raw payload that shall be sent.
|
description: The raw payload that shall be sent.
|
||||||
required: false
|
required: false
|
||||||
|
@ -77,7 +77,7 @@ device:
|
|||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
connections:
|
connections:
|
||||||
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example, the MAC address of a network interface: `"connections": ["mac", "02:5b:26:a8:dc:12"]`.'
|
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.'
|
||||||
required: false
|
required: false
|
||||||
type: list
|
type: list
|
||||||
hw_version:
|
hw_version:
|
||||||
|
@ -49,6 +49,6 @@ These devices have been sold under many brands, including:
|
|||||||
- REYSURPIUS
|
- REYSURPIUS
|
||||||
- SUPERNIGHT
|
- SUPERNIGHT
|
||||||
- Triones
|
- Triones
|
||||||
- Zengee
|
- [Zengge](http://www.zengge.com/sy)
|
||||||
- YONEDA
|
- YONEDA
|
||||||
- Zerproc
|
- Zerproc
|
||||||
|
@ -42,8 +42,6 @@ Optimistic mode can be forced, even if the `state_topic` is available. Try to en
|
|||||||
Home Assistant internally assumes that a light's state corresponds to a defined `color_mode`.
|
Home Assistant internally assumes that a light's state corresponds to a defined `color_mode`.
|
||||||
The state of MQTT lights with default schema and support for both color and color temperature will set the `color_mode` according to the last received valid color or color temperature. Optionally, a `color_mode_state_topic` can be configured for explicit control of the `color_mode`
|
The state of MQTT lights with default schema and support for both color and color temperature will set the `color_mode` according to the last received valid color or color temperature. Optionally, a `color_mode_state_topic` can be configured for explicit control of the `color_mode`
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Example configuration.yaml entry
|
# Example configuration.yaml entry
|
||||||
mqtt:
|
mqtt:
|
||||||
|
@ -21,8 +21,6 @@ Optimistic mode can be forced, even if state topic is available. Try to enable i
|
|||||||
It's mandatory for locks to support `lock` and `unlock`. A lock may optionally support `open`, (e.g. to open the bolt in addition to the latch), in this case, `payload_open` is required in the configuration. If the lock is in optimistic mode, it will change states to `unlocked` when handling the `open` command.
|
It's mandatory for locks to support `lock` and `unlock`. A lock may optionally support `open`, (e.g. to open the bolt in addition to the latch), in this case, `payload_open` is required in the configuration. If the lock is in optimistic mode, it will change states to `unlocked` when handling the `open` command.
|
||||||
|
|
||||||
An MQTT lock can also report the intermediate states `unlocking`, `locking` or `jammed` if the motor reports a jammed state.
|
An MQTT lock can also report the intermediate states `unlocking`, `locking` or `jammed` if the motor reports a jammed state.
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
To enable MQTT locks in your installation, add the following to your `configuration.yaml` file:
|
To enable MQTT locks in your installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
|
@ -52,11 +52,6 @@ name:
|
|||||||
description: "Name of this hub. Must be unique."
|
description: "Name of this hub. Must be unique."
|
||||||
required: true
|
required: true
|
||||||
type: string
|
type: string
|
||||||
retries:
|
|
||||||
description: "Number of times to retry a request."
|
|
||||||
required: false
|
|
||||||
default: 3
|
|
||||||
type: integer
|
|
||||||
timeout:
|
timeout:
|
||||||
description: "Timeout while waiting for a response in seconds."
|
description: "Timeout while waiting for a response in seconds."
|
||||||
required: false
|
required: false
|
||||||
@ -117,7 +112,6 @@ modbus:
|
|||||||
|
|
||||||
delay: 0
|
delay: 0
|
||||||
message_wait_milliseconds: 30
|
message_wait_milliseconds: 30
|
||||||
retries: 3
|
|
||||||
timeout: 5
|
timeout: 5
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -164,7 +158,6 @@ modbus:
|
|||||||
|
|
||||||
delay: 0
|
delay: 0
|
||||||
message_wait_milliseconds: 30
|
message_wait_milliseconds: 30
|
||||||
retries: 3
|
|
||||||
timeout: 5
|
timeout: 5
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -207,7 +200,6 @@ modbus:
|
|||||||
|
|
||||||
delay: 0
|
delay: 0
|
||||||
message_wait_milliseconds: 30
|
message_wait_milliseconds: 30
|
||||||
retries: 3
|
|
||||||
timeout: 5
|
timeout: 5
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -302,7 +294,6 @@ modbus:
|
|||||||
|
|
||||||
delay: 0
|
delay: 0
|
||||||
message_wait_milliseconds: 30
|
message_wait_milliseconds: 30
|
||||||
retries: 3
|
|
||||||
timeout: 5
|
timeout: 5
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -531,7 +522,7 @@ The master configuration like device_class are automatically copied to the slave
|
|||||||
|
|
||||||
## Configuring climate entities
|
## Configuring climate entities
|
||||||
|
|
||||||
The Modbus climate platform allows you to monitor a thermostat or heaters as well as set a target temperature.
|
The Modbus climate platform allows you to monitor a thermostat or heaters as well as set a target temperature, HVAC mode and fan state.
|
||||||
|
|
||||||
Please refer to [Parameter usage](#parameters-usage-matrix) for conflicting parameters.
|
Please refer to [Parameter usage](#parameters-usage-matrix) for conflicting parameters.
|
||||||
|
|
||||||
@ -613,7 +604,7 @@ climates:
|
|||||||
state_auto:
|
state_auto:
|
||||||
description: "Value corresponding to HVAC Auto mode."
|
description: "Value corresponding to HVAC Auto mode."
|
||||||
required: false
|
required: false
|
||||||
type: integer
|
type: [integer, list]
|
||||||
state_dry:
|
state_dry:
|
||||||
description: "Value corresponding to HVAC Dry mode."
|
description: "Value corresponding to HVAC Dry mode."
|
||||||
required: false
|
required: false
|
||||||
@ -626,6 +617,61 @@ climates:
|
|||||||
description: "Value corresponding to HVAC Heat/Cool mode."
|
description: "Value corresponding to HVAC Heat/Cool mode."
|
||||||
required: false
|
required: false
|
||||||
type: [integer, list]
|
type: [integer, list]
|
||||||
|
fan_mode_register:
|
||||||
|
description: "Configuration of register for Fan mode"
|
||||||
|
required: false
|
||||||
|
type: map
|
||||||
|
keys:
|
||||||
|
address:
|
||||||
|
description: "Address of Fan mode register."
|
||||||
|
required: true
|
||||||
|
type: integer
|
||||||
|
values:
|
||||||
|
description: "Mapping between the register values and Fan modes
|
||||||
|
This is typically used to control one of: Speed, Direction or On/Off state."
|
||||||
|
required: true
|
||||||
|
type: map
|
||||||
|
keys:
|
||||||
|
state_fan_on:
|
||||||
|
description: "Value corresponding to Fan On mode."
|
||||||
|
required: false
|
||||||
|
type: integer
|
||||||
|
state_fan_off:
|
||||||
|
description: "Value corresponding to Fan Off mode."
|
||||||
|
required: false
|
||||||
|
type: integer
|
||||||
|
state_fan_low:
|
||||||
|
description: "Value corresponding to Fan Low mode."
|
||||||
|
required: false
|
||||||
|
type: integer
|
||||||
|
state_fan_medium:
|
||||||
|
description: "Value corresponding to Fan Medium mode."
|
||||||
|
required: false
|
||||||
|
type: integer
|
||||||
|
state_fan_high:
|
||||||
|
description: "Value corresponding to Fan High mode."
|
||||||
|
required: false
|
||||||
|
type: integer
|
||||||
|
state_fan_auto:
|
||||||
|
description: "Value corresponding to Fan Auto mode."
|
||||||
|
required: false
|
||||||
|
type: integer
|
||||||
|
state_fan_top:
|
||||||
|
description: "Value corresponding to Fan Top mode."
|
||||||
|
required: false
|
||||||
|
type: integer
|
||||||
|
state_fan_middle:
|
||||||
|
description: "Value corresponding to Fan Middle mode."
|
||||||
|
required: false
|
||||||
|
type: integer
|
||||||
|
state_fan_focus:
|
||||||
|
description: "Value corresponding to Fan Focus mode."
|
||||||
|
required: false
|
||||||
|
type: integer
|
||||||
|
state_fan_diffuse:
|
||||||
|
description: "Value corresponding to Fan Diffuse mode."
|
||||||
|
required: false
|
||||||
|
type: integer
|
||||||
hvac_onoff_register:
|
hvac_onoff_register:
|
||||||
description: "Address of On/Off state.
|
description: "Address of On/Off state.
|
||||||
When zero is read from this register, the HVAC state is set to Off, otherwise the `hvac_mode_register`
|
When zero is read from this register, the HVAC state is set to Off, otherwise the `hvac_mode_register`
|
||||||
|
@ -20,6 +20,7 @@ The integration allows you to control [Motion Blinds](https://motionblinds.com/)
|
|||||||
|
|
||||||
Additionally the following brands have been reported to also work with this integration:
|
Additionally the following brands have been reported to also work with this integration:
|
||||||
|
|
||||||
|
- [Acomax](https://www.acomax.de/)
|
||||||
- [AMP Motorization](https://www.ampmotorization.com/)
|
- [AMP Motorization](https://www.ampmotorization.com/)
|
||||||
- [Bliss Automation - Alta Window Fashions](https://www.altawindowfashions.com/product/automation/bliss-automation/)
|
- [Bliss Automation - Alta Window Fashions](https://www.altawindowfashions.com/product/automation/bliss-automation/)
|
||||||
- [Bloc Blinds](https://www.blocblinds.com/)
|
- [Bloc Blinds](https://www.blocblinds.com/)
|
||||||
@ -50,6 +51,7 @@ The following bridges are reported to work with this integration:
|
|||||||
- DD7002B Brel-Home box
|
- DD7002B Brel-Home box
|
||||||
- D1554 Brel Home USB plug
|
- D1554 Brel Home USB plug
|
||||||
- Brel HUB-03
|
- Brel HUB-03
|
||||||
|
- Acomax FX-I 620 Bridge Maxi
|
||||||
|
|
||||||
{% include integrations/config_flow.md %}
|
{% include integrations/config_flow.md %}
|
||||||
|
|
||||||
|
22
source/_integrations/motionmount.md
Normal file
22
source/_integrations/motionmount.md
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
---
|
||||||
|
title: Vogel's MotionMount
|
||||||
|
description: Instructions on how to integrate Vogel's MotionMount into Home Assistant.
|
||||||
|
ha_category:
|
||||||
|
- Number
|
||||||
|
ha_release: 2024.1
|
||||||
|
ha_iot_class: Local Push
|
||||||
|
ha_config_flow: true
|
||||||
|
ha_platforms:
|
||||||
|
- number
|
||||||
|
ha_codeowners:
|
||||||
|
- '@RJPoelstra'
|
||||||
|
ha_domain: motionmount
|
||||||
|
---
|
||||||
|
|
||||||
|
The Vogel's MotionMount integration allows you to control the position of your [TVM 7675 Pro](https://www.vogels.com/p/tvm-7675-pro-motorized-tv-wall-mount-black) Signature MotionMount.
|
||||||
|
|
||||||
|
This integration uses the Ethernet (IP) connection of your MotionMount. It's not possible to connect using the RS-232 connection.
|
||||||
|
|
||||||
|
It provides information about the current position of the mount and allows setting a new position.
|
||||||
|
|
||||||
|
{% include integrations/config_flow.md %}
|
@ -37,6 +37,7 @@ ha_platforms:
|
|||||||
- text
|
- text
|
||||||
- update
|
- update
|
||||||
- vacuum
|
- vacuum
|
||||||
|
- valve
|
||||||
- water_heater
|
- water_heater
|
||||||
ha_integration_type: integration
|
ha_integration_type: integration
|
||||||
ha_quality_scale: gold
|
ha_quality_scale: gold
|
||||||
@ -240,6 +241,7 @@ The discovery of MQTT devices will enable one to use MQTT devices with only mini
|
|||||||
- [Tag scanner](/integrations/tag.mqtt/)
|
- [Tag scanner](/integrations/tag.mqtt/)
|
||||||
- [Text](/integrations/text.mqtt/)
|
- [Text](/integrations/text.mqtt/)
|
||||||
- [Vacuum](/integrations/vacuum.mqtt/)
|
- [Vacuum](/integrations/vacuum.mqtt/)
|
||||||
|
- [Valve](/integrations/valve.mqtt/)
|
||||||
- [Water heater](/integrations/water_heater.mqtt/)
|
- [Water heater](/integrations/water_heater.mqtt/)
|
||||||
|
|
||||||
{% enddetails %}
|
{% enddetails %}
|
||||||
@ -457,6 +459,7 @@ support_url:
|
|||||||
'pl_ton': 'payload_turn_on',
|
'pl_ton': 'payload_turn_on',
|
||||||
'pl_trig': 'payload_trigger',
|
'pl_trig': 'payload_trigger',
|
||||||
'pl_unlk': 'payload_unlock',
|
'pl_unlk': 'payload_unlock',
|
||||||
|
'pos': 'reports_position',
|
||||||
'pos_clsd': 'position_closed',
|
'pos_clsd': 'position_closed',
|
||||||
'pos_open': 'position_open',
|
'pos_open': 'position_open',
|
||||||
'pr_mode_cmd_t': 'preset_mode_command_topic',
|
'pr_mode_cmd_t': 'preset_mode_command_topic',
|
||||||
@ -680,6 +683,8 @@ The following software has built-in support for MQTT discovery:
|
|||||||
|
|
||||||
- [ArduinoHA](https://github.com/dawidchyrzynski/arduino-home-assistant)
|
- [ArduinoHA](https://github.com/dawidchyrzynski/arduino-home-assistant)
|
||||||
- [Arilux AL-LC0X LED controllers](https://github.com/smrtnt/Arilux_AL-LC0X)
|
- [Arilux AL-LC0X LED controllers](https://github.com/smrtnt/Arilux_AL-LC0X)
|
||||||
|
- [ble2mqtt](https://github.com/devbis/ble2mqtt)
|
||||||
|
- [digitalstrom-mqtt](https://github.com/gaetancollaud/digitalstrom-mqtt)
|
||||||
- [ebusd](https://github.com/john30/ebusd)
|
- [ebusd](https://github.com/john30/ebusd)
|
||||||
- [ecowitt2mqtt](https://github.com/bachya/ecowitt2mqtt)
|
- [ecowitt2mqtt](https://github.com/bachya/ecowitt2mqtt)
|
||||||
- [EMS-ESP32 (and EMS-ESP)](https://github.com/emsesp/EMS-ESP32)
|
- [EMS-ESP32 (and EMS-ESP)](https://github.com/emsesp/EMS-ESP32)
|
||||||
@ -993,6 +998,7 @@ mqtt:
|
|||||||
- [Text](/integrations/text.mqtt/)
|
- [Text](/integrations/text.mqtt/)
|
||||||
- [Update](/integrations/update.mqtt/)
|
- [Update](/integrations/update.mqtt/)
|
||||||
- [Vacuum](/integrations/vacuum.mqtt/)
|
- [Vacuum](/integrations/vacuum.mqtt/)
|
||||||
|
- [Valve](/integrations/valve.mqtt/)
|
||||||
- [Water heater](/integrations/water_heater.mqtt/)
|
- [Water heater](/integrations/water_heater.mqtt/)
|
||||||
|
|
||||||
{% enddetails %}
|
{% enddetails %}
|
||||||
|
@ -8,11 +8,14 @@ ha_category:
|
|||||||
- Notifications
|
- Notifications
|
||||||
- Sensor
|
- Sensor
|
||||||
ha_iot_class: Local Polling
|
ha_iot_class: Local Polling
|
||||||
|
ha_config_flow: true
|
||||||
ha_domain: netgear_lte
|
ha_domain: netgear_lte
|
||||||
ha_platforms:
|
ha_platforms:
|
||||||
- binary_sensor
|
- binary_sensor
|
||||||
- notify
|
- notify
|
||||||
- sensor
|
- sensor
|
||||||
|
ha_codeowners:
|
||||||
|
- '@tkdrob'
|
||||||
ha_integration_type: integration
|
ha_integration_type: integration
|
||||||
ha_codeowners:
|
ha_codeowners:
|
||||||
- '@tkdrob'
|
- '@tkdrob'
|
||||||
@ -34,106 +37,11 @@ Splitting of long SMS messages is not supported so notifications can contain a m
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
## Configuration
|
{% include integrations/config_flow.md %}
|
||||||
|
|
||||||
To enable the integration, add the following lines to your `configuration.yaml` file:
|
## Notification Service
|
||||||
|
|
||||||
```yaml
|
The integration will create a `notify` service matching the name of the integration entry. This is the model name of the device by default.
|
||||||
# Example configuration.yaml entry
|
|
||||||
netgear_lte:
|
|
||||||
- host: IP_ADDRESS
|
|
||||||
password: SECRET
|
|
||||||
notify:
|
|
||||||
- name: sms
|
|
||||||
recipient: "+15105550123"
|
|
||||||
sensor:
|
|
||||||
monitored_conditions:
|
|
||||||
- usage
|
|
||||||
- sms
|
|
||||||
binary_sensor:
|
|
||||||
monitored_conditions:
|
|
||||||
- wire_connected
|
|
||||||
- mobile_connected
|
|
||||||
```
|
|
||||||
|
|
||||||
{% configuration %}
|
|
||||||
host:
|
|
||||||
description: The IP address of the modem web interface.
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
password:
|
|
||||||
description: The password used for the modem web interface.
|
|
||||||
required: true
|
|
||||||
type: string
|
|
||||||
notify:
|
|
||||||
description: A list of notification services connected to this specific host.
|
|
||||||
required: false
|
|
||||||
type: list
|
|
||||||
keys:
|
|
||||||
recipient:
|
|
||||||
description: The phone number of a default recipient or a list with multiple recipients.
|
|
||||||
required: false
|
|
||||||
type: [string, list]
|
|
||||||
name:
|
|
||||||
description: The name of the notification service.
|
|
||||||
required: false
|
|
||||||
default: "`netgear_lte`"
|
|
||||||
type: string
|
|
||||||
sensor:
|
|
||||||
description: Configuration options for sensors.
|
|
||||||
required: false
|
|
||||||
type: map
|
|
||||||
keys:
|
|
||||||
monitored_conditions:
|
|
||||||
description: Sensor types to create.
|
|
||||||
required: false
|
|
||||||
default: usage
|
|
||||||
type: list
|
|
||||||
keys:
|
|
||||||
cell_id:
|
|
||||||
description: The Cell ID, a number identifying the base station.
|
|
||||||
connection_text:
|
|
||||||
description: A connection text, e.g., "4G".
|
|
||||||
connection_type:
|
|
||||||
description: The connection type, e.g., "IPv4Only".
|
|
||||||
current_band:
|
|
||||||
description: The radio band used, e.g., "LTE B3".
|
|
||||||
current_ps_service_type:
|
|
||||||
description: The service type, e.g., "LTE".
|
|
||||||
radio_quality:
|
|
||||||
description: A number with the radio quality in percent, e.g., "55"
|
|
||||||
register_network_display:
|
|
||||||
description: The name of the service provider.
|
|
||||||
rx_level:
|
|
||||||
description: The RSRP value, a measurement of the received power level, e.g., "-95".
|
|
||||||
sms:
|
|
||||||
description: Number of unread SMS messages in the modem inbox.
|
|
||||||
sms_total:
|
|
||||||
description: Number of SMS messages in the modem inbox.
|
|
||||||
tx_level:
|
|
||||||
description: Transmit power, e.g., "23".
|
|
||||||
upstream:
|
|
||||||
description: Current upstream connection, "WAN" or "LTE".
|
|
||||||
usage:
|
|
||||||
description: Amount of data transferred.
|
|
||||||
binary_sensor:
|
|
||||||
description: Configuration options for binary sensors.
|
|
||||||
required: false
|
|
||||||
type: map
|
|
||||||
keys:
|
|
||||||
monitored_conditions:
|
|
||||||
description: Binary sensor types to create.
|
|
||||||
required: false
|
|
||||||
default: mobile_connected
|
|
||||||
type: list
|
|
||||||
keys:
|
|
||||||
mobile_connected:
|
|
||||||
description: The LTE connection state.
|
|
||||||
wire_connected:
|
|
||||||
description: The wired uplink connection state.
|
|
||||||
roaming:
|
|
||||||
description: The current roaming state.
|
|
||||||
{% endconfiguration %}
|
|
||||||
|
|
||||||
## Events
|
## Events
|
||||||
|
|
||||||
|
@ -12,8 +12,6 @@ The `mqtt` Number platform allows you to integrate devices that might expose con
|
|||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
To enable MQTT Number in your installation, add the following to your `configuration.yaml` file:
|
To enable MQTT Number in your installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@ -70,7 +68,7 @@ device:
|
|||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
connections:
|
connections:
|
||||||
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": ["mac", "02:5b:26:a8:dc:12"]`.'
|
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.'
|
||||||
required: false
|
required: false
|
||||||
type: list
|
type: list
|
||||||
hw_version:
|
hw_version:
|
||||||
|
@ -64,20 +64,24 @@ with the requested image.
|
|||||||
| ---------------------- | -------- | ------------------------------------------------------ | ---------------- |
|
| ---------------------- | -------- | ------------------------------------------------------ | ---------------- |
|
||||||
| `config_entry` | no | Integration entry ID to use. | |
|
| `config_entry` | no | Integration entry ID to use. | |
|
||||||
| `prompt` | no | The text to turn into an image. | Picture of a dog |
|
| `prompt` | no | The text to turn into an image. | Picture of a dog |
|
||||||
| `size` | yes | Size of the returned (square) image in pixels, defaults to 512. | 512 |
|
| `size` | yes | Size of the returned image in pixels. Must be one of `1024x1024`, `1792x1024`, or `1024x1792`, defaults to `1024x1024`. | 1024x1024 |
|
||||||
|
| `quality` | yes | The quality of the image that will be generated. `hd` creates images with finer details and greater consistency across the image. | standard |
|
||||||
|
| `style` | yes | The style of the generated images. Must be one of `vivid` or `natural`. Vivid causes the model to lean towards generating hyper-real and dramatic images. Natural causes the model to produce more natural, less hyper-real looking images. | vivid |
|
||||||
|
|
||||||
{% raw %}
|
{% raw %}
|
||||||
```yaml
|
```yaml
|
||||||
service: openai_conversation.generate_image
|
service: openai_conversation.generate_image
|
||||||
data:
|
data:
|
||||||
config_entry: f29e6b8696a15e107b4bd843de722249
|
config_entry: abce6b8696a15e107b4bd843de722249
|
||||||
prompt: "Cute picture of a dog chasing a herd of cats"
|
prompt: "Cute picture of a dog chasing a herd of cats"
|
||||||
size: 1024
|
size: 1024x1024
|
||||||
|
quality: standard
|
||||||
|
style: vivid
|
||||||
response_variable: generated_image
|
response_variable: generated_image
|
||||||
```
|
```
|
||||||
{% endraw %}
|
{% endraw %}
|
||||||
|
|
||||||
The response data field `url` will contain a URL to the generated image.
|
The response data field `url` will contain a URL to the generated image and `revised_prompt` will contain the updated prompt used.
|
||||||
|
|
||||||
#### Example using a generated image entity
|
#### Example using a generated image entity
|
||||||
|
|
||||||
@ -109,7 +113,7 @@ automation:
|
|||||||
response_variable: generated_image
|
response_variable: generated_image
|
||||||
data:
|
data:
|
||||||
config_entry: abce6b8696a15e107b4bd843de722249
|
config_entry: abce6b8696a15e107b4bd843de722249
|
||||||
size: "512"
|
size: "1024x1024"
|
||||||
prompt: >-
|
prompt: >-
|
||||||
New York when the weather is {{ states("weather.home") }}"
|
New York when the weather is {{ states("weather.home") }}"
|
||||||
|
|
||||||
|
32
source/_integrations/osoenergy.markdown
Normal file
32
source/_integrations/osoenergy.markdown
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
---
|
||||||
|
title: OSO Energy
|
||||||
|
description: Instructions on how to integrate OSO Energy devices with Home Assistant.
|
||||||
|
ha_release: "2024.1"
|
||||||
|
ha_category:
|
||||||
|
- Sensor
|
||||||
|
- Water Heater
|
||||||
|
ha_iot_class: Cloud Polling
|
||||||
|
ha_codeowners:
|
||||||
|
- '@osohotwateriot'
|
||||||
|
ha_domain: osoenergy
|
||||||
|
ha_platforms:
|
||||||
|
- water_heater
|
||||||
|
ha_config_flow: true
|
||||||
|
ha_integration_type: integration
|
||||||
|
---
|
||||||
|
|
||||||
|
The OSO Energy integration for Home Assistant allows you to interact with supported devices and services offered by [OSO Energy](https://www.osoenergy.no)
|
||||||
|
|
||||||
|
This OSO Energy integration uses a subscription key, which a user can create for his account on the [OSO Energy website](https://portal.osoenergy.no/), to configure it within Home Assistant. Once configured Home Assistant will detect and add all OSO Energy devices.
|
||||||
|
|
||||||
|
{% include integrations/config_flow.md %}
|
||||||
|
|
||||||
|
## Platforms
|
||||||
|
|
||||||
|
### Water Heater
|
||||||
|
|
||||||
|
The OSO Energy water heater platform integrates your OSO Energy devices into Home Assistant.
|
||||||
|
|
||||||
|
The platform supports the following OSO Energy devices:
|
||||||
|
|
||||||
|
- Water Heaters
|
@ -27,8 +27,8 @@ There is currently support for the following device types within Home Assistant:
|
|||||||
|
|
||||||
## Polling interval
|
## Polling interval
|
||||||
|
|
||||||
By default, the integration will ping the device every 5 minutes.
|
By default, the integration will ping the device every 30 seconds.
|
||||||
If you wish to do a ping more frequently, you can disable the automatic refresh in the integration's system options (Enable polling for updates) and create your own automation with your desired frequency.
|
If you wish to do a ping at a different interval, you can disable the automatic refresh in the integration's system options (Enable polling for updates) and create your own automation with your desired frequency.
|
||||||
|
|
||||||
For more detailed steps on how to define a custom interval, follow the procedure below.
|
For more detailed steps on how to define a custom interval, follow the procedure below.
|
||||||
|
|
||||||
@ -36,10 +36,18 @@ For more detailed steps on how to define a custom interval, follow the procedure
|
|||||||
|
|
||||||
{% include common-tasks/define_custom_polling.md %}
|
{% include common-tasks/define_custom_polling.md %}
|
||||||
|
|
||||||
|
## Integration options
|
||||||
|
|
||||||
|
It is possible to change some behaviors through the integration options.
|
||||||
|
To change the settings, go to {% my integrations title="**Settings** > **Devices & Services**" %}. Select the **Ping** integration, then select **Configure**.
|
||||||
|
|
||||||
|
- **Ping count**: Number of echo requests to send to the target. The default is 5.
|
||||||
|
- **Consider home**: Number of seconds that must elapse before considering a disconnected device "not at home". The default is 180 seconds (3 minutes).
|
||||||
|
|
||||||
## Binary sensor
|
## Binary sensor
|
||||||
|
|
||||||
The `ping` binary sensor platform allows you to use `ping` to send ICMP echo requests. This way you can check if a given host is online and determine the round trip times from your Home Assistant instance to that system.
|
The `ping` binary sensor platform allows you to use `ping` to send ICMP echo requests. This way you can check if a given host is online and determine the round trip times from your Home Assistant instance to that system.
|
||||||
This sensor is enabled by default. The default polling interval is 5 minutes.
|
This sensor is enabled by default. The default polling interval is 30 seconds.
|
||||||
|
|
||||||
The sensor exposes the different round trip times in milliseconds measured by `ping` as attributes:
|
The sensor exposes the different round trip times in milliseconds measured by `ping` as attributes:
|
||||||
|
|
||||||
|
@ -8,6 +8,7 @@ ha_release: '2022.9'
|
|||||||
ha_config_flow: true
|
ha_config_flow: true
|
||||||
ha_codeowners:
|
ha_codeowners:
|
||||||
- '@balloob'
|
- '@balloob'
|
||||||
|
- '@Skaronator'
|
||||||
ha_domain: prusalink
|
ha_domain: prusalink
|
||||||
ha_integration_type: integration
|
ha_integration_type: integration
|
||||||
ha_platforms:
|
ha_platforms:
|
||||||
@ -17,16 +18,21 @@ ha_platforms:
|
|||||||
ha_dhcp: true
|
ha_dhcp: true
|
||||||
---
|
---
|
||||||
|
|
||||||
The PrusaLink integration allows you to monitor your [Prusa 3D printer](https://www.prusa3d.com) and its progress with your Home Assistant installation. This integration works with Prusa MINI and Prusa MK4.
|
The PrusaLink integration allows you to monitor your [Prusa 3D printer](https://www.prusa3d.com) and its progress with your Home Assistant installation. This integration works with Prusa MINI, Prusa MK3.9/MK4 and Prusa XL. It does not work with the older Raspberry Pi Prusa Link printers.
|
||||||
This integration requires PrusaLink v2. If you have the Prusa MINI, you need to run firmware 4.4.0 or later.
|
|
||||||
|
|
||||||
When adding the integration, you will be asked to provide a {% term host %} and an API key. These are the credentials you set up when setting up PrusaLink on your printer.
|
This integration has been updated to utilize the latest v1 API endpoints, which require firmware version 4.7.0 or later. If you own a Prusa Mini, please make sure your printer is running firmware 5.1.0 or a more recent version. Firmware versions 4.7.x and 5.0.x are not available for this model.
|
||||||
|
|
||||||
To obtain the host name and API key/password:
|
Firmware update guides can be found here:
|
||||||
|
|
||||||
|
- [Prusa Mini](https://help.prusa3d.com/article/firmware-updating-mini-mini_124784)
|
||||||
|
- [Prusa MK4/XL](https://help.prusa3d.com/article/how-to-update-firmware-mk4-xl_453086)
|
||||||
|
|
||||||
|
To obtain the hostname, username, and password:
|
||||||
|
|
||||||
- On your printer, navigate to **Settings** > **Network** > **PrusaLink**.
|
- On your printer, navigate to **Settings** > **Network** > **PrusaLink**.
|
||||||
- Find the device's **IP address**. Alternatively, you can look for the printer's IP address or hostname on your router.
|
- Find the device's **IP address**. Alternatively, you can look for the printer's IP address or hostname on your router.
|
||||||
- Depending on your model, the entry may not be called **API key**, but **Password**.
|
- Note that for some models, the username may not be visible, as it is hardcoded to `maker`.
|
||||||
|
- Depending on your model, the entry may not be called **Password**, but **API key**.
|
||||||
|
|
||||||
{% include integrations/config_flow.md %}
|
{% include integrations/config_flow.md %}
|
||||||
|
|
||||||
|
20
source/_integrations/psoklahoma.markdown
Normal file
20
source/_integrations/psoklahoma.markdown
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
---
|
||||||
|
title: Public Service Company of Oklahoma (PSO)
|
||||||
|
description: Get energy usage from Public Service Company of Oklahoma (PSO) using the Opower integration
|
||||||
|
ha_category:
|
||||||
|
- Energy
|
||||||
|
- Sensor
|
||||||
|
ha_release: 2024.1
|
||||||
|
ha_domain: psoklahoma
|
||||||
|
ha_integration_type: virtual
|
||||||
|
ha_supporting_domain: opower
|
||||||
|
ha_supporting_integration: Opower
|
||||||
|
ha_codeowners:
|
||||||
|
- '@tronikos'
|
||||||
|
ha_config_flow: true
|
||||||
|
ha_platforms:
|
||||||
|
- sensor
|
||||||
|
ha_iot_class: Cloud Polling
|
||||||
|
---
|
||||||
|
|
||||||
|
{% include integrations/supported_brand.md %}
|
@ -132,8 +132,8 @@ Services can also respond with data. Retrieving this data in your Python script
|
|||||||
|
|
||||||
```python
|
```python
|
||||||
# get_forecast.py
|
# get_forecast.py
|
||||||
service_data = {"type": "daily", "entity_id": "weather.YOUR_HOME"}
|
service_data = {"type": "daily", "entity_id": ["weather.YOUR_HOME", "weather.YOUR_SCHOOL"]}
|
||||||
current_forecast = hass.services.call("weather", "get_forecast", service_data, blocking=True, return_response=True)
|
current_forecast = hass.services.call("weather", "get_forecasts", service_data, blocking=True, return_response=True)
|
||||||
```
|
```
|
||||||
|
|
||||||
## Documenting your Python scripts
|
## Documenting your Python scripts
|
||||||
|
@ -9,6 +9,7 @@ ha_iot_class: Local Polling
|
|||||||
ha_domain: qbittorrent
|
ha_domain: qbittorrent
|
||||||
ha_codeowners:
|
ha_codeowners:
|
||||||
- '@geoffreylagaisse'
|
- '@geoffreylagaisse'
|
||||||
|
- '@finder39'
|
||||||
ha_platforms:
|
ha_platforms:
|
||||||
- sensor
|
- sensor
|
||||||
ha_integration_type: service
|
ha_integration_type: service
|
||||||
@ -27,5 +28,32 @@ This sensor requires the qBittorrent Web UI enabled. The [official reference](ht
|
|||||||
The qBittorrent integration will add the following sensors:
|
The qBittorrent integration will add the following sensors:
|
||||||
|
|
||||||
- `sensor.qbittorrent_status`: The status of qBittorrent - `up_down`, `seeding`, `downloading` or `idle`.
|
- `sensor.qbittorrent_status`: The status of qBittorrent - `up_down`, `seeding`, `downloading` or `idle`.
|
||||||
- `sensor.qbittorrent_up_speed`: The current total upload speed in kB/s.
|
- `sensor.qbittorrent_upload_speed`: The current total upload speed in kB/s.
|
||||||
- `sensor.qbittorrent_down_speed`: The current total download speed in kB/s.
|
- `sensor.qbittorrent_download_speed`: The current total download speed in kB/s.
|
||||||
|
- `sensor.qbittorrent_all_torrents`: The current total torrents in qBittorrent.
|
||||||
|
- `sensor.qbittorrent_active_torrents`: The current active torrents in qBittorrent.
|
||||||
|
- `sensor.qbittorrent_inactive_torrents`: The current inactive torrents in qBittorrent.
|
||||||
|
- `sensor.qbittorrent_paused_torrents`: The current paused torrents in qBittorrent.
|
||||||
|
|
||||||
|
## Services
|
||||||
|
|
||||||
|
### Service `qbittorrent.get_torrents`
|
||||||
|
|
||||||
|
This service populates [Response Data](/docs/scripts/service-calls#use-templates-to-handle-response-data)
|
||||||
|
with a dictionary of torrents based on the provided filter.
|
||||||
|
|
||||||
|
| Service data attribute | Optional | Description | Example |
|
||||||
|
| ---------------------- | -------- | ----------- | --------|
|
||||||
|
| `filter` | no | The type of torrents you want in the response | all, active, inactive, paused, downloading, seeding
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
service: qbittorrent.get_torrents
|
||||||
|
data:
|
||||||
|
filter: 'all'
|
||||||
|
response_variable: torrents
|
||||||
|
```
|
||||||
|
|
||||||
|
The response data contains the field `torrent_info` which contains a dictionary of torrents. The name of the torrents are the keys.
|
||||||
|
|
||||||
|
@ -17,12 +17,12 @@ The Radio Browser integration allows you to use the directory of
|
|||||||
radio stations collected on [Radio Browser](https://www.radio-browser.info)
|
radio stations collected on [Radio Browser](https://www.radio-browser.info)
|
||||||
in Home Assistant.
|
in Home Assistant.
|
||||||
|
|
||||||
All radio stations can be browsed and played via the Media panel in
|
{% include integrations/config_flow.md %}
|
||||||
Home Assistant.
|
|
||||||
|
|
||||||
Additionally, when creating automations, the "Play Media" action can be used
|
To start the Radio Browser, in Home Assistant, go to **Media** > **Radio Browser** and select the speaker.
|
||||||
to pick a station from the directory. This makes it possible to create
|

|
||||||
an automation that e.g., starts playing your favorite radio station on your
|
|
||||||
|
You can also use the Radio Browser in automations. When creating an automation, use the **Play Media** action to pick a station from the directory. This allows you for example to create
|
||||||
|
an automation that starts playing your favorite radio station on your
|
||||||
Cast devices.
|
Cast devices.
|
||||||
|
|
||||||
{% include integrations/config_flow.md %}
|
|
||||||
|
59
source/_integrations/refoss.markdown
Normal file
59
source/_integrations/refoss.markdown
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
---
|
||||||
|
title: Refoss
|
||||||
|
description: Integrate Refoss devices
|
||||||
|
ha_category:
|
||||||
|
- Switch
|
||||||
|
ha_release: 2024.1
|
||||||
|
ha_codeowners:
|
||||||
|
- '@ashionky'
|
||||||
|
ha_iot_class: Local Polling
|
||||||
|
ha_domain: refoss
|
||||||
|
featured: true
|
||||||
|
ha_config_flow: true
|
||||||
|
ha_platforms:
|
||||||
|
- switch
|
||||||
|
ha_integration_type: integration
|
||||||
|
---
|
||||||
|
|
||||||
|
Integrate Refoss devices into Home Assistant.
|
||||||
|
|
||||||
|
## Prerequisites
|
||||||
|
|
||||||
|
- The device needs to be connected to the local network first. There are two ways to connect devices to the local network:
|
||||||
|
- Using the Refoss app (download and install the Refoss app on Google Play) to connect devices to the local network.
|
||||||
|
- Using the Web page to connect devices to the local network.
|
||||||
|
- The computer/mobile phone is connected to the device factory Wi-Fi.
|
||||||
|
- In the browser, access the address 10.10.10.1, then select the local Wi-Fi needed for device configuration.
|
||||||
|
- The integration will occupy port: 9989.
|
||||||
|
{% include integrations/config_flow.md %}
|
||||||
|
|
||||||
|
### Discover device
|
||||||
|
|
||||||
|
- After integrating Refoss, it will start socket broadcast and Home Assistant will automatically discover Refoss devices under the current LAN.
|
||||||
|
|
||||||
|
## Entity naming
|
||||||
|
|
||||||
|
The integration uses the following strategy to name its entities:
|
||||||
|
|
||||||
|
- The entity name will be generated by `Device Name` and `Channel Number`.
|
||||||
|
|
||||||
|
Single channel device.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
|
||||||
|
| Device Name |Channel Number| Entity Name |
|
||||||
|
| ----------- | -----------|------------|
|
||||||
|
| `r10` | `0` | r10 |
|
||||||
|
|
||||||
|
Multi-channel device.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
|
||||||
|
| Device Name | Channel Number | Entity Name |
|
||||||
|
| ----------- |----------------|----------|
|
||||||
|
| `r10` | `0` | r10 |
|
||||||
|
| `r10` | `1` | r10-1 |
|
||||||
|
|
||||||
|
## Reset device
|
||||||
|
|
||||||
|
Long-press the button on the device to reset it.
|
@ -160,6 +160,7 @@ In some camera models, there is a delay of up to 5 seconds between the turn-off
|
|||||||
|
|
||||||
Depending on the supported features of the camera, switch entities are added for:
|
Depending on the supported features of the camera, switch entities are added for:
|
||||||
|
|
||||||
|
- Infrared lights in night mode
|
||||||
- Record audio
|
- Record audio
|
||||||
- Siren on event
|
- Siren on event
|
||||||
- Auto tracking
|
- Auto tracking
|
||||||
@ -173,6 +174,8 @@ Depending on the supported features of the camera, switch entities are added for
|
|||||||
- FTP upload
|
- FTP upload
|
||||||
- HDR*
|
- HDR*
|
||||||
|
|
||||||
|
When the **Infrared lights in night mode** entity is set to OFF, the infrared LEDs are always OFF. When the **Infrared lights in night mode** entity is set to ON, the infrared LEDs will be on when the camera is in night vision mode. For more information, see the **Day night mode** select entity.
|
||||||
|
|
||||||
For NVRs, a global switch for **Record**, **Push**, **Buzzer**, **Email**, and **FTP** will be available under the NVR device as well as a switch per channel of the NVR under the camera device. The respective feature will only be active for a given channel if both the global and that channel switch are enabled (as is also the case in the Reolink app/client).
|
For NVRs, a global switch for **Record**, **Push**, **Buzzer**, **Email**, and **FTP** will be available under the NVR device as well as a switch per channel of the NVR under the camera device. The respective feature will only be active for a given channel if both the global and that channel switch are enabled (as is also the case in the Reolink app/client).
|
||||||
|
|
||||||
**Push** notifications to a phone will only be provided if the following conditions are met:
|
**Push** notifications to a phone will only be provided if the following conditions are met:
|
||||||
@ -187,13 +190,10 @@ The Push-notification in the Reolink app is independent of the Home Assistant se
|
|||||||
Depending on the supported features of the camera, light entities are added for:
|
Depending on the supported features of the camera, light entities are added for:
|
||||||
|
|
||||||
- Floodlight
|
- Floodlight
|
||||||
- Infra red lights in night mode
|
|
||||||
- Status LED
|
- Status LED
|
||||||
|
|
||||||
When the **floodlight** entity is ON always ON, when OFF controlled based on the internal camera floodlight mode (Off, Auto, Schedule), see the **Floodlight mode** select entity.
|
When the **floodlight** entity is ON always ON, when OFF controlled based on the internal camera floodlight mode (Off, Auto, Schedule), see the **Floodlight mode** select entity.
|
||||||
|
|
||||||
When **IR light** entity is OFF always OFF, when ON IR LEDs will be on when the camera is in night vision mode, see the **Day night mode** select entity.
|
|
||||||
|
|
||||||
## Sensor entities
|
## Sensor entities
|
||||||
|
|
||||||
Depending on the supported features of the camera, the following sensor entities are added:
|
Depending on the supported features of the camera, the following sensor entities are added:
|
||||||
@ -238,6 +238,7 @@ The following models have been tested and confirmed to work:
|
|||||||
- [RLC-520A](https://reolink.com/product/rlc-520a/)
|
- [RLC-520A](https://reolink.com/product/rlc-520a/)
|
||||||
- RLC-522*
|
- RLC-522*
|
||||||
- [RLC-810A](https://reolink.com/product/rlc-810a/)
|
- [RLC-810A](https://reolink.com/product/rlc-810a/)
|
||||||
|
- [RLC-810WA](https://reolink.com/product/rlc-810wa/)
|
||||||
- [RLC-811A](https://reolink.com/product/rlc-811a/)
|
- [RLC-811A](https://reolink.com/product/rlc-811a/)
|
||||||
- [RLC-81PA](https://reolink.com/product/rlc-81pa/)
|
- [RLC-81PA](https://reolink.com/product/rlc-81pa/)
|
||||||
- [RLC-820A](https://reolink.com/product/rlc-820a/)
|
- [RLC-820A](https://reolink.com/product/rlc-820a/)
|
||||||
@ -248,6 +249,7 @@ The following models have been tested and confirmed to work:
|
|||||||
- [RLN8-410 NVR](https://reolink.com/product/rln8-410/)
|
- [RLN8-410 NVR](https://reolink.com/product/rln8-410/)
|
||||||
- [RLN16-410 NVR](https://reolink.com/product/rln16-410/)
|
- [RLN16-410 NVR](https://reolink.com/product/rln16-410/)
|
||||||
- [RLN36 NVR](https://reolink.com/product/rln36/)
|
- [RLN36 NVR](https://reolink.com/product/rln36/)
|
||||||
|
- [RLN12W NVR](https://reolink.com/product/rln12w/)
|
||||||
- [Reolink Duo WiFi](https://reolink.com/product/reolink-duo-wifi-v1/)
|
- [Reolink Duo WiFi](https://reolink.com/product/reolink-duo-wifi-v1/)
|
||||||
- [Reolink Duo 2 WiFi](https://reolink.com/product/reolink-duo-wifi/)
|
- [Reolink Duo 2 WiFi](https://reolink.com/product/reolink-duo-wifi/)
|
||||||
- Reolink Duo Floodlight ([PoE](https://reolink.com/product/reolink-duo-floodlight-poe/) and [Wi-Fi](https://reolink.com/product/reolink-duo-floodlight-wifi/))
|
- Reolink Duo Floodlight ([PoE](https://reolink.com/product/reolink-duo-floodlight-poe/) and [Wi-Fi](https://reolink.com/product/reolink-duo-floodlight-wifi/))
|
||||||
|
@ -12,8 +12,6 @@ The `mqtt` scene platform lets you control your MQTT enabled scenes.
|
|||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
To enable a MQTT scene in your installation, add the following to your `configuration.yaml` file:
|
To enable a MQTT scene in your installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
|
@ -5,7 +5,7 @@ ha_category:
|
|||||||
- Energy
|
- Energy
|
||||||
- Sensor
|
- Sensor
|
||||||
ha_release: 2024.1
|
ha_release: 2024.1
|
||||||
ha_domain: pse
|
ha_domain: scl
|
||||||
ha_integration_type: virtual
|
ha_integration_type: virtual
|
||||||
ha_supporting_domain: opower
|
ha_supporting_domain: opower
|
||||||
ha_supporting_integration: Opower
|
ha_supporting_integration: Opower
|
||||||
|
@ -12,8 +12,6 @@ The `mqtt` Select platform allows you to integrate devices that might expose con
|
|||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
To enable MQTT Select in your installation, add the following to your `configuration.yaml` file:
|
To enable MQTT Select in your installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@ -82,7 +80,7 @@ device:
|
|||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
connections:
|
connections:
|
||||||
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": ["mac", "02:5b:26:a8:dc:12"]`.'
|
description: 'A list of connections of the device to the outside world as a list of tuples `[connection_type, connection_identifier]`. For example the MAC address of a network interface: `"connections": [["mac", "02:5b:26:a8:dc:12"]]`.'
|
||||||
required: false
|
required: false
|
||||||
type: list
|
type: list
|
||||||
hw_version:
|
hw_version:
|
||||||
|
@ -12,8 +12,6 @@ This `mqtt` sensor platform uses the MQTT message payload as the sensor value. I
|
|||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
To use your MQTT sensor in your installation, add the following to your `configuration.yaml` file:
|
To use your MQTT sensor in your installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
|
@ -34,6 +34,7 @@ ha_platforms:
|
|||||||
- sensor
|
- sensor
|
||||||
- switch
|
- switch
|
||||||
- update
|
- update
|
||||||
|
- valve
|
||||||
ha_integration_type: device
|
ha_integration_type: device
|
||||||
ha_quality_scale: platinum
|
ha_quality_scale: platinum
|
||||||
---
|
---
|
||||||
@ -44,11 +45,11 @@ Integrate [Shelly devices](https://shelly.cloud) into Home Assistant.
|
|||||||
|
|
||||||
## Shelly device generations
|
## Shelly device generations
|
||||||
|
|
||||||
There are two generations of devices. Both generations are supported by this integration. There are some differences in how devices should be configured and in the naming of entities and devices between generations.
|
There are three generations of devices and all generations are supported by this integration. There are some differences in how devices should be configured and in the naming of entities and devices between generations.
|
||||||
|
|
||||||
## Shelly device configuration (generation 1)
|
## Shelly device configuration (generation 1)
|
||||||
|
|
||||||
Generation 1 devices use the `CoIoT` protocol to communicate with the integration. For Shelly firmware 1.10.0 or newer, `CoIoT` must be enabled in the device settings. Navigate to the local IP address of your Shelly device, **Internet & Security** >> **ADVANCED - DEVELOPER SETTINGS** and check the box **Enable CoIoT**.
|
Generation 1 devices use the `CoIoT` protocol to communicate with the integration. `CoIoT` must be enabled in the device settings. Navigate to the local IP address of your Shelly device, **Internet & Security** > **ADVANCED - DEVELOPER SETTINGS** and check the box **Enable CoIoT**.
|
||||||
|
|
||||||
We recommend using `unicast` for communication. To enable this, enter the local IP address of the Home Assistant server and port `5683` into the **CoIoT peer** field and push **SAVE** button. **This is mandatory for battery operated devices**. After changing the **CoIoT peer**, the Shelly device needs to be manually restarted.
|
We recommend using `unicast` for communication. To enable this, enter the local IP address of the Home Assistant server and port `5683` into the **CoIoT peer** field and push **SAVE** button. **This is mandatory for battery operated devices**. After changing the **CoIoT peer**, the Shelly device needs to be manually restarted.
|
||||||
|
|
||||||
@ -63,9 +64,9 @@ The list below will help you diagnose and fix the problem:
|
|||||||
- The missing push updates may be related to the WiFi network range. If using a WiFi network with several access points, enable **Internet & Security** >> **WiFi Client AP Roaming** option. Consider moving Shelly device closer to the WiFi access point. Consider adding another WiFi access point, which will improve the connection quality with the device.
|
- The missing push updates may be related to the WiFi network range. If using a WiFi network with several access points, enable **Internet & Security** >> **WiFi Client AP Roaming** option. Consider moving Shelly device closer to the WiFi access point. Consider adding another WiFi access point, which will improve the connection quality with the device.
|
||||||
- If you think your Shelly devices are working correctly and don't want to change your network/configuration, you can ignore the repair issue. Still, you must know you are giving up the best experience of using first-generation Shelly devices with Home Assistant.
|
- If you think your Shelly devices are working correctly and don't want to change your network/configuration, you can ignore the repair issue. Still, you must know you are giving up the best experience of using first-generation Shelly devices with Home Assistant.
|
||||||
|
|
||||||
## Shelly device configuration (generation 2)
|
## Shelly device configuration (generation 2 and 3)
|
||||||
|
|
||||||
Generation 2 devices use the `RPC` protocol to communicate with the integration. **Battery powered devices** need manual outbound WebSocket configuration, Navigate to the local IP address of your Shelly device, **Settings** >> **Connectivity** >> **Outbound WebSocket** and check the box **Enable Outbound WebSocket**, under server enter the following address:
|
Generation 2 and 3 devices use the `RPC` protocol to communicate with the integration. **Battery powered devices** need manual outbound WebSocket configuration, Navigate to the local IP address of your Shelly device, **Settings** >> **Connectivity** >> **Outbound WebSocket** and check the box **Enable Outbound WebSocket**, under server enter the following address:
|
||||||
|
|
||||||
`ws://` + `Home_Assistant_local_ip_address:Port` + `/api/shelly/ws` (for example: `ws://192.168.1.100:8123/api/shelly/ws`), click **Apply** to save the settings.
|
`ws://` + `Home_Assistant_local_ip_address:Port` + `/api/shelly/ws` (for example: `ws://192.168.1.100:8123/api/shelly/ws`), click **Apply** to save the settings.
|
||||||
|
|
||||||
@ -75,7 +76,7 @@ Integration is communicating directly with the device; cloud connection is not n
|
|||||||
|
|
||||||
## Bluetooth Support
|
## Bluetooth Support
|
||||||
|
|
||||||
Shelly generation 2 devices running firmware 0.12 or later can act as a Bluetooth proxy for advertisements. Active or passive listening can be enabled in the options flow.
|
Shelly generation 2 and 3 devices not battery-powered can act as a Bluetooth proxy for advertisements. Active or passive listening can be enabled in the options flow.
|
||||||
|
|
||||||
{% include integrations/option_flow.md %}
|
{% include integrations/option_flow.md %}
|
||||||
|
|
||||||
@ -105,7 +106,7 @@ Names are set from the device web page:
|
|||||||
- Channel name for single-channel devices can be set in **Settings** >> **CHANNEL NAME**
|
- Channel name for single-channel devices can be set in **Settings** >> **CHANNEL NAME**
|
||||||
- Channel name for multi-channel devices can be set in **Settings** >> **CHANNEL NAME** after selecting the channel, by clicking on the channel name.
|
- Channel name for multi-channel devices can be set in **Settings** >> **CHANNEL NAME** after selecting the channel, by clicking on the channel name.
|
||||||
|
|
||||||
## Entity naming (generation 2)
|
## Entity naming (generation 2 and 3)
|
||||||
|
|
||||||
The integration uses the following strategy to name its entities:
|
The integration uses the following strategy to name its entities:
|
||||||
|
|
||||||
@ -118,15 +119,15 @@ The integration uses the following strategy to name its entities:
|
|||||||
|
|
||||||
Depending on how a device's button type is configured, the integration will create binary sensors corresponding to those inputs. binary sensors are not created when the button type is `momentary` or `momentary_on_release`, for these types you need to use events for your automations.
|
Depending on how a device's button type is configured, the integration will create binary sensors corresponding to those inputs. binary sensors are not created when the button type is `momentary` or `momentary_on_release`, for these types you need to use events for your automations.
|
||||||
|
|
||||||
### Binary input sensors (generation 2)
|
### Binary input sensors (generation 2 and 3)
|
||||||
|
|
||||||
For generation 2 hardware it's possible to select if a device's input is connected to a button or a switch. Binary sensors are created only if the input mode is set to `switch`. When the input is of type `button` you need to use events for your automations.
|
For generation 2 and 3 hardware it's possible to select if a device's input is connected to a button or a switch. Binary sensors are created only if the input mode is set to `switch`. When the input is of type `button` you need to use events for your automations.
|
||||||
|
|
||||||
## Event entities (generation 1)
|
## Event entities (generation 1)
|
||||||
|
|
||||||
If the **BUTTON TYPE** of the switch connected to the device is set to `momentary` or `detached switch`, the integration creates an event entity for this switch. You can use this entity in your automations.
|
If the **BUTTON TYPE** of the switch connected to the device is set to `momentary` or `detached switch`, the integration creates an event entity for this switch. You can use this entity in your automations.
|
||||||
|
|
||||||
## Event entities (generation 2)
|
## Event entities (generation 2 and 3)
|
||||||
|
|
||||||
If the **Input Mode** of the switch connected to the device is set to `Button`, the integration creates an event entity for this switch. You can use this entity in your automations.
|
If the **Input Mode** of the switch connected to the device is set to `Button`, the integration creates an event entity for this switch. You can use this entity in your automations.
|
||||||
|
|
||||||
@ -213,7 +214,7 @@ You can also create automations using YAML, for example:
|
|||||||
| `SL` | `single_long` |
|
| `SL` | `single_long` |
|
||||||
| `LS` | `long_single` |
|
| `LS` | `long_single` |
|
||||||
|
|
||||||
Generation 2 devices use the values `btn_down`, `btn_up`, `single_push`, `double_push`, `triple_push` and `long_push` as `click_type`.
|
Generation 2 and 3 devices use the values `btn_down`, `btn_up`, `single_push`, `double_push`, `triple_push` and `long_push` as `click_type`.
|
||||||
|
|
||||||
<div class="note">
|
<div class="note">
|
||||||
|
|
||||||
@ -223,18 +224,12 @@ Not all devices support all input events. You can check on [Shelly API Reference
|
|||||||
|
|
||||||
## Appliance type (generation 1)
|
## Appliance type (generation 1)
|
||||||
|
|
||||||
Shelly device relays are added to Home Assistant by default as `switch` entities. A relay can be added as a `light` entity if the device uses firmware version 1.9.0 or newer and the **Settings** >> **APPLIANCE TYPE** value is set to `light`.
|
Shelly device relays are added to Home Assistant by default as `switch` entities. A relay can be added as a `light` entity if **Settings** >> **APPLIANCE TYPE** value is set to `light`.
|
||||||
|
|
||||||
## Consumption type (generation 2)
|
## Consumption type (generation 2 and 3)
|
||||||
|
|
||||||
Shelly device relays are added to Home Assistant by default as `switch` entities. A relay can be added as a `light` entity if **EXTERNAL CONSUMPTION TYPE** value is set to `light`.
|
Shelly device relays are added to Home Assistant by default as `switch` entities. A relay can be added as a `light` entity if **EXTERNAL CONSUMPTION TYPE** value is set to `light`.
|
||||||
|
|
||||||
<div class="note">
|
|
||||||
|
|
||||||
Firmware 1.0.0 or later is required.
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
## Light transition
|
## Light transition
|
||||||
|
|
||||||
Shelly lights supporting light transition:
|
Shelly lights supporting light transition:
|
||||||
@ -248,12 +243,6 @@ Shelly lights supporting light transition:
|
|||||||
|
|
||||||
<div class="note">
|
<div class="note">
|
||||||
|
|
||||||
Firmware 1.11 or later is required.
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="note">
|
|
||||||
|
|
||||||
The firmware limits the transition time to 5 seconds.
|
The firmware limits the transition time to 5 seconds.
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@ -293,7 +282,7 @@ As soon as you change the temperature, it gets enabled again.
|
|||||||
|
|
||||||
## Shelly Gas with Valve add-on
|
## Shelly Gas with Valve add-on
|
||||||
|
|
||||||
If you have Valve add-on connected to Shelly Gas, the integration will create two entities for the valve. The `switch` entity allows you to control the valve, the `sensor` entity shows exact states of the valve.
|
If you have Valve add-on connected to Shelly Gas, the integration will create three entities for the valve. The `switch` and `valve` entities allow you to control the valve, the `sensor` entity shows exact states of the valve. The `switch` entity is deprecated and will be removed in a future version of Home Assistant.
|
||||||
|
|
||||||
<div class="note">
|
<div class="note">
|
||||||
|
|
||||||
@ -320,10 +309,9 @@ Please check from the device Web UI that the configured server is reachable.
|
|||||||
|
|
||||||
## Known issues and limitations
|
## Known issues and limitations
|
||||||
|
|
||||||
- Only supports firmware 1.8 and later for generation 1 devices
|
- Only supports firmware 1.11 and later for generation 1 devices
|
||||||
- Only supports firmware 0.8 and later for generation 2 devices
|
- Only supports firmware 1.0 and later for generation 2 devices
|
||||||
- Generation 1 "Shelly 4Pro" and "Shelly Sense" are not supported (devices based on old CoAP v1 protocol)
|
- Generation 1 "Shelly 4Pro" and "Shelly Sense" are not supported (devices based on old CoAP v1 protocol)
|
||||||
- Before set up, battery-powered devices must be woken up by pressing the button on the device.
|
- Before set up, battery-powered devices must be woken up by pressing the button on the device.
|
||||||
- For battery-powered devices, the `update` platform entities only inform about the availability of firmware updates but are not able to trigger the update process.
|
- For battery-powered devices, the `update` platform entities only inform about the availability of firmware updates but are not able to trigger the update process.
|
||||||
- Using the `homeassistant.update_entity` service for an entity belonging to a battery-powered device is not possible because most of the time these devices are sleeping (are offline).
|
- Using the `homeassistant.update_entity` service for an entity belonging to a battery-powered device is not possible because most of the time these devices are sleeping (are offline).
|
||||||
- Frequency sensors for generation 2 energy monitoring devices are supported by firmware 1.0.0 beta 6 or later.
|
|
||||||
|
@ -18,8 +18,6 @@ When a `state_topic` is not available, the siren will work in optimistic mode. I
|
|||||||
|
|
||||||
Optimistic mode can be forced, even if the `state_topic` is available. Try to enable it, if experiencing incorrect operation.
|
Optimistic mode can be forced, even if the `state_topic` is available. Try to enable it, if experiencing incorrect operation.
|
||||||
|
|
||||||
<a id='new_format'></a>
|
|
||||||
|
|
||||||
To enable this siren in your installation, add the following to your `configuration.yaml` file:
|
To enable this siren in your installation, add the following to your `configuration.yaml` file:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
|
@ -31,7 +31,7 @@ ha_integration_type: integration
|
|||||||
|
|
||||||
The SleepIQ integration lets you integrate your SleepNumber Bed via [SleepIQ by SleepNumber](https://www.sleepnumber.com/pages/sleepiq-sleep-tracker).
|
The SleepIQ integration lets you integrate your SleepNumber Bed via [SleepIQ by SleepNumber](https://www.sleepnumber.com/pages/sleepiq-sleep-tracker).
|
||||||
|
|
||||||
There is currently support for the following platforms within Home Assistant:
|
There is currently support available for the following platforms within Home Assistant, depending on the bed's capabilities:
|
||||||
|
|
||||||
- Binary sensor - View occupancy of each side
|
- Binary sensor - View occupancy of each side
|
||||||
- Button - Calibrate the bed
|
- Button - Calibrate the bed
|
||||||
@ -40,6 +40,7 @@ There is currently support for the following platforms within Home Assistant:
|
|||||||
- Number - View/Set the actuator positions of the foundation
|
- Number - View/Set the actuator positions of the foundation
|
||||||
- Number - View/Set firmness for each side
|
- Number - View/Set firmness for each side
|
||||||
- Select - Choose a foundation preset position
|
- Select - Choose a foundation preset position
|
||||||
|
- Select/Number - Set a foot warmer mode and timeout
|
||||||
- Sensor - View pressure of each side
|
- Sensor - View pressure of each side
|
||||||
- Switch - Toggle Privacy mode
|
- Switch - Toggle Privacy mode
|
||||||
|
|
||||||
|
@ -35,7 +35,7 @@ Speaker-level controls are exposed as `number` or `switch` entities. Additionall
|
|||||||
|
|
||||||
- **All devices**: Alarms, Bass, Treble, Loudness, Crossfade, Status Light, Touch Controls
|
- **All devices**: Alarms, Bass, Treble, Loudness, Crossfade, Status Light, Touch Controls
|
||||||
- **Home theater devices**: Audio Delay ("Lip Sync"), Night Sound, Speech Enhancement, Surround Enabled, Surround Music Full Volume ("Full/Ambient"), Surround Level ("TV Level"), Music Surround Level
|
- **Home theater devices**: Audio Delay ("Lip Sync"), Night Sound, Speech Enhancement, Surround Enabled, Surround Music Full Volume ("Full/Ambient"), Surround Level ("TV Level"), Music Surround Level
|
||||||
- **When paired with a sub**: Subwoofer Enabled, Subwoofer Gain
|
- **When paired with a sub**: Subwoofer Enabled, Subwoofer Gain, Subwoofer Crossover Frequency (Sonos Amp only)
|
||||||
|
|
||||||
### Sensors
|
### Sensors
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@ to allow you to log in with your Spotify account.
|
|||||||
|
|
||||||
2. Log in to the [Spotify Developer Dashboard](https://developer.spotify.com/dashboard).
|
2. Log in to the [Spotify Developer Dashboard](https://developer.spotify.com/dashboard).
|
||||||
|
|
||||||
3. Click the [**Create app**](https://developer.spotify.com/dashboard/create) button in the top right.
|
3. Select the [**Create app**](https://developer.spotify.com/dashboard/create) button in the top right.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@ -57,22 +57,24 @@ to allow you to log in with your Spotify account.
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
5. Check the box to agree with the requirements and click the **Save** button
|
5. Select Web API.
|
||||||
|
|
||||||
|
6. Check the box to agree with the requirements and click the **Save** button
|
||||||
to confirm the application creation.
|
to confirm the application creation.
|
||||||
|
|
||||||
6. Spotify will now show the new application you have just created. Click on
|
7. Spotify will now show the new application you have just created. Select
|
||||||
the **Settings** button in the top right to configure it.
|
the **Settings** button in the top right to configure it.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
7. Before we can start configuring Home Assistant, we need to grab the application
|
8. Before we can start configuring Home Assistant, we need to grab the application
|
||||||
credentials Home Assistant needs.
|
credentials Home Assistant needs.
|
||||||
|
|
||||||
Click on the **View client secret** button to reveal the client secret.
|
Select on the **View client secret** button to reveal the client secret.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
8. The _"Client ID"_ and _"Client secret"_ are the two pieces of information
|
9. The _"Client ID"_ and _"Client secret"_ are the two pieces of information
|
||||||
that Home Assistant needs to communicate with Spotify and is what we
|
that Home Assistant needs to communicate with Spotify and is what we
|
||||||
call: Application credentials.
|
call: Application credentials.
|
||||||
|
|
||||||
|
@ -20,7 +20,11 @@ The Squeezebox integration allows you to control a [Logitech Squeezebox](https:/
|
|||||||
{% include integrations/config_flow.md %}
|
{% include integrations/config_flow.md %}
|
||||||
|
|
||||||
<div class='note'>
|
<div class='note'>
|
||||||
This platform uses the web interface of the Logitech Media Server to send commands. The default port of the web interface is 9000. It is the same port that you use to access the LMS through your web browser. Originally, this platform used the telnet interface, which defaults to 9090. If you previously specified the port in your configuration file, you will likely need to update it.
|
This platform uses the web interface of the Logitech Media Server (LMS) to send commands. The default port of the web interface is 9000. It is the same port that you use to access the LMS through your web browser.
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class='note'>
|
||||||
|
The integration now supports Logitech Media Servers behind an HTTPS reverse proxy. Please note that Logitech Media Server natively only supports HTTP traffic. Unless you have configured a reverse proxy, do not select the `https` option. If you have configured a reverse proxy, remember to update the port number.
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
The Logitech Transporter which have two digital inputs can be activated using a script. The following example turns on the Transporter and activates the toslink input interface:
|
The Logitech Transporter which have two digital inputs can be activated using a script. The following example turns on the Transporter and activates the toslink input interface:
|
||||||
|
@ -33,6 +33,7 @@ The following integrations are automatically discovered by the SSDP integration:
|
|||||||
- [Denon AVR](/integrations/denonavr/)
|
- [Denon AVR](/integrations/denonavr/)
|
||||||
- [Denon HEOS](/integrations/heos/)
|
- [Denon HEOS](/integrations/heos/)
|
||||||
- [DirecTV](/integrations/directv/)
|
- [DirecTV](/integrations/directv/)
|
||||||
|
- [Frontier Silicon](/integrations/frontier_silicon/)
|
||||||
- [Huawei LTE](/integrations/huawei_lte/)
|
- [Huawei LTE](/integrations/huawei_lte/)
|
||||||
- [Hyperion](/integrations/hyperion/)
|
- [Hyperion](/integrations/hyperion/)
|
||||||
- [Keenetic NDMS2 Router](/integrations/keenetic_ndms2/)
|
- [Keenetic NDMS2 Router](/integrations/keenetic_ndms2/)
|
||||||
|
@ -8,6 +8,7 @@ ha_category:
|
|||||||
- Presence detection
|
- Presence detection
|
||||||
- Sensor
|
- Sensor
|
||||||
- Switch
|
- Switch
|
||||||
|
- Button
|
||||||
ha_release: 0.103
|
ha_release: 0.103
|
||||||
ha_iot_class: Cloud Polling
|
ha_iot_class: Cloud Polling
|
||||||
ha_config_flow: true
|
ha_config_flow: true
|
||||||
@ -20,6 +21,7 @@ ha_platforms:
|
|||||||
- lock
|
- lock
|
||||||
- sensor
|
- sensor
|
||||||
- switch
|
- switch
|
||||||
|
- button
|
||||||
ha_integration_type: integration
|
ha_integration_type: integration
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -27,11 +29,12 @@ The `starline` integration lets you retrieve data of your [StarLine](https://www
|
|||||||
|
|
||||||
This integration provides the following platforms:
|
This integration provides the following platforms:
|
||||||
|
|
||||||
- Binary sensors: Hand brake, hood, trunk, alarm status and doors lock state.
|
- Binary sensors: Hand brake, hood, trunk, alarm status, doors lock state, handsfree, neutral and moving ban status.
|
||||||
- Device tracker: The location of your car.
|
- Device tracker: The location of your car.
|
||||||
- Lock: Control the lock of your car.
|
- Lock: Control the lock of your car.
|
||||||
- Sensors: Battery level, SIM card balance, GSM signal level, fuel volume, mileage, OBD errors, interior temperature and engine temperature.
|
- Sensors: Battery level, SIM card balance, GSM signal level, fuel volume, mileage, OBD errors, interior temperature and engine temperature.
|
||||||
- Switches: Start/stop engine, heater (webasto), additional channel and sound the horn.
|
- Switches: Start/stop engine, heater (webasto), additional channel, and service mode.
|
||||||
|
- Buttons: Sound the horn.
|
||||||
- Services: Update the state, set update frequency. More details can be found [here](#services).
|
- Services: Update the state, set update frequency. More details can be found [here](#services).
|
||||||
|
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user