-
-
Notifications
You must be signed in to change notification settings - Fork 7.7k
Add Leneda integration documentation #38994
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
It seems that this PR is targeted against an incorrect branch. Documentation updates which apply to our current stable release should target the |
✅ Deploy Preview for home-assistant-docs ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
Warning Rate limit exceeded@c0ffeeca7 has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 3 minutes and 29 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughA new documentation file for the Leneda integration has been added. This file describes how to connect Home Assistant to the Leneda Luxembourg Energy Platform for monitoring energy consumption and production, outlines setup steps, supported features, data update intervals, dashboard integration, troubleshooting, and removal instructions. Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant HomeAssistant
participant LenedaAPI
User->>HomeAssistant: Add Leneda integration
HomeAssistant->>User: Request Energy ID, API Key, Metering Point IDs
User->>HomeAssistant: Provide credentials and IDs
HomeAssistant->>LenedaAPI: Authenticate and fetch available OBIS codes
LenedaAPI-->>HomeAssistant: Return OBIS codes and metering data
HomeAssistant->>User: Allow selection of OBIS codes (auto/manual)
User->>HomeAssistant: Confirm selection
HomeAssistant->>LenedaAPI: Fetch hourly data (with 1-day delay)
LenedaAPI-->>HomeAssistant: Return historical energy data
HomeAssistant->>User: Display sensors and statistics in dashboard
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (8)
source/_integrations/leneda.markdown (8)
30-39
: Verify configuration snippet indentation.
Ensure that thedescription:
lines in theconfiguration_basic
block are indented by two spaces to match Home Assistant documentation conventions.{% configuration_basic %} API Key: - description: Your API key + description: Your API key Energy ID: - description: Your Energy ID + description: Your Energy ID Metering Point ID: - description: The identifier for the electricity or gas meter you want to access + description: The identifier for the electricity or gas meter you want to access {% endconfiguration_basic %}
80-96
: Markdown formatting: ensure blank lines around headings and lists.
To comply with markdownlint rules (MD022 & MD032), insert blank lines before and after each list and ensure headings are surrounded by blank lines. For example, add a blank line between the "#### Electricity Consumption" heading and its list.🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
80-80: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below(MD022, blanks-around-headings)
81-81: Lists should be surrounded by blank lines
null(MD032, blanks-around-lists)
86-86: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below(MD022, blanks-around-headings)
87-87: Lists should be surrounded by blank lines
null(MD032, blanks-around-lists)
92-92: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below(MD022, blanks-around-headings)
93-93: Lists should be surrounded by blank lines
null(MD032, blanks-around-lists)
103-107
: Hyphenate compound adjective.
Change "Accurate long term statistics" to "Accurate long-term statistics" to correct the compound adjective.-### Accurate long term statistics +### Accurate long-term statistics🧰 Tools
🪛 LanguageTool
[uncategorized] ~103-~103: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...orical data for analysis. ### Accurate long term statistics Despite the one-day lag, th...(EN_COMPOUND_ADJECTIVE_INTERNAL)
113-117
: Ensure blank line before numbered list.
Add a blank line between the sentence ending with ":" and the numbered steps to satisfy markdownlint’s requirement for lists to be surrounded by blank lines.-... to the energy dashboard: +... to the energy dashboard: + 1. Navigate to...🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
114-114: Lists should be surrounded by blank lines
null(MD032, blanks-around-lists)
118-120
: Format OBIS codes as inline code.
For clarity and consistency, render OBIS codes using backticks:-For electricity consumption, the relevant OBIS code is 1-1:1.29.0 (measured active consumption). +For electricity consumption, the relevant OBIS code is `1-1:1.29.0` (measured active consumption). -For electricity production, the relevant OBIS code is 1-1:2.29.0 (measured active production). +For electricity production, the relevant OBIS code is `1-1:2.29.0` (measured active production).
127-127
: Consistent verb usage.
Consider replacing "Check if you can access the [Leneda web app]" with "Verify access to the [Leneda web app]" for a more formal tone.-3. Check if you can access the [Leneda web app](https://app.leneda.eu) +3. Verify access to the [Leneda web app](https://app.leneda.eu)
131-134
: Stronger wording.
Replace "make sure" with "ensure" for consistency and formality.-please make sure that you can access the API +please ensure that you can access the API🧰 Tools
🪛 LanguageTool
[style] ~133-~133: Consider using a different verb to strengthen your wording.
Context: ...gging in or accessing your data, please make sure that you can access the API from the in...(MAKE_SURE_ENSURE)
136-137
: Consistent verb usage.
Change "check" to "verify" to match the more formal language elsewhere.-please first check that you can see your gas consumption +please first verify that you can see your gas consumption🧰 Tools
🪛 LanguageTool
[style] ~137-~137: Try using a more formal synonym for ‘check’.
Context: ... for gas but don't see it, please first check that you can see your gas consumption i...(VERIFY)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
source/_integrations/leneda.markdown
(1 hunks)
🧰 Additional context used
🪛 LanguageTool
source/_integrations/leneda.markdown
[uncategorized] ~103-~103: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...orical data for analysis. ### Accurate long term statistics Despite the one-day lag, th...
(EN_COMPOUND_ADJECTIVE_INTERNAL)
[uncategorized] ~111-~111: Possible missing comma found.
Context: ...l to select the statistics, and not the sensors for use with the energy dashboard. To ...
(AI_HYDRA_LEO_MISSING_COMMA)
[style] ~133-~133: Consider using a different verb to strengthen your wording.
Context: ...gging in or accessing your data, please make sure that you can access the API from the in...
(MAKE_SURE_ENSURE)
[style] ~137-~137: Try using a more formal synonym for ‘check’.
Context: ... for gas but don't see it, please first check that you can see your gas consumption i...
(VERIFY)
🪛 markdownlint-cli2 (0.17.2)
source/_integrations/leneda.markdown
25-25: Lists should be surrounded by blank lines
null
(MD032, blanks-around-lists)
80-80: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below
(MD022, blanks-around-headings)
81-81: Lists should be surrounded by blank lines
null
(MD032, blanks-around-lists)
86-86: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below
(MD022, blanks-around-headings)
87-87: Lists should be surrounded by blank lines
null
(MD032, blanks-around-lists)
92-92: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below
(MD022, blanks-around-headings)
93-93: Lists should be surrounded by blank lines
null
(MD032, blanks-around-lists)
114-114: Lists should be surrounded by blank lines
null
(MD032, blanks-around-lists)
⏰ Context from checks skipped due to timeout of 90000ms (3)
- GitHub Check: Redirect rules - home-assistant-docs
- GitHub Check: Header rules - home-assistant-docs
- GitHub Check: Pages changed - home-assistant-docs
🔇 Additional comments (8)
source/_integrations/leneda.markdown (8)
1-16
: Front matter validation completed.
The YAML front matter contains all required Home Assistant documentation keys (title, description, ha_category, ha_release, etc.) and appears correctly formatted.
18-21
: Introduction clarity.
The introduction clearly describes the integration’s purpose and includes a functional link to the Leneda platform. No changes needed.
24-29
: Prerequisites list formatting.
The prerequisites bullets correctly outline necessary items with valid sub-bullets. Content and indentation are clear.🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
25-25: Lists should be surrounded by blank lines
null(MD032, blanks-around-lists)
41-54
: Additional metering points instructions.
The steps for adding extra metering points—both reusing an existing Energy ID and creating a new one—are clearly laid out and user-friendly.
55-56
: Clarify NOTE formatting.
The note about OBIS-code access rights is valuable. Verify that the{% note -%}
tag syntax matches other Home Assistant docs for consistency.
57-69
: Sensor setup options.
The documentation succinctly presents automatic probing versus manual sensor selection, including a warning about unknown data. Well done.
107-108
: Emphasize delay caveat.
The bolded warning correctly alerts users to the API’s one-day lag. This clear emphasis is appropriate.
139-146
: Removal instructions clarity.
The removal section follows Home Assistant standards and clearly instructs users to revoke API keys after removing the integration.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (10)
source/_integrations/leneda.markdown (10)
23-28
: Surround lists with blank lines for readabilityMarkdown lists should be preceded and followed by a blank line to improve parsing and readability.
Apply this diff to add blank lines before the prerequisites list and after it:@@ line 23 -Before setting up the integration, you need: + -Before setting up the integration, you need: - - An Energy ID and API key from your Leneda platform account + - An Energy ID and API key from your Leneda platform account - Learn how to create an Energy ID [here](https://leneda.eu/en/docs/what-is-energyid.html) - Generate your API key by following this [guide](https://leneda.eu/en/docs/how-to-generate-and-manage-api-keys.html) - Your metering point ID(s) - unique identifiers for your energy meters +🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
24-24: Lists should be surrounded by blank lines
null(MD032, blanks-around-lists)
45-47
: Fix unordered list indentation (Option 1 sub-items)The nested list items under Option 1 are indented by 3 spaces; the expected indent is 2 spaces. Update as follows:
@@ line 45-47 - - Go through the configuration steps again. - - Choose **Add using existing Energy ID**. - - Enter the new metering point ID. + - Go through the configuration steps again. + - Choose **Add using existing Energy ID**. + - Enter the new metering point ID.🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
45-45: Unordered list indentation
Expected: 2; Actual: 3(MD007, ul-indent)
46-46: Unordered list indentation
Expected: 2; Actual: 3(MD007, ul-indent)
47-47: Unordered list indentation
Expected: 2; Actual: 3(MD007, ul-indent)
50-52
: Fix unordered list indentation (Option 2 sub-items)Similarly, adjust indentation for the Option 2 sub-list to 2 spaces:
@@ line 50-52 - - Go through the configuration steps again. - - Choose **Add with new Energy ID**. - - Enter the new API token, Energy ID, and metering point ID. + - Go through the configuration steps again. + - Choose **Add with new Energy ID**. + - Enter the new API token, Energy ID, and metering point ID.🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
50-50: Unordered list indentation
Expected: 2; Actual: 3(MD007, ul-indent)
51-51: Unordered list indentation
Expected: 2; Actual: 3(MD007, ul-indent)
52-52: Unordered list indentation
Expected: 2; Actual: 3(MD007, ul-indent)
64-67
: Fix unordered list indentation (Automatic probing)The nested list items under Option 1 in the sensors setup section should be indented by 2 spaces:
@@ line 64-67 - - The integration scans all OBIS codes for your metering point. - - The integration shows which codes return data from Leneda. - - You can modify the pre-selected sensors before completing setup. + - The integration scans all OBIS codes for your metering point. + - The integration shows which codes return data from Leneda. + - You can modify the pre-selected sensors before completing setup.🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
65-65: Unordered list indentation
Expected: 2; Actual: 3(MD007, ul-indent)
66-66: Unordered list indentation
Expected: 2; Actual: 3(MD007, ul-indent)
67-67: Unordered list indentation
Expected: 2; Actual: 3(MD007, ul-indent)
70-72
: Fix unordered list indentation (Manual setup)Adjust the nested list under Option 2 in the sensors setup section to 2 spaces:
@@ line 70-72 - - Skips the automatic probing process. - - Manually select the OBIS codes you want to monitor. + - Skips the automatic probing process. + - Manually select the OBIS codes you want to monitor.🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
70-70: Unordered list indentation
Expected: 2; Actual: 3(MD007, ul-indent)
71-71: Unordered list indentation
Expected: 2; Actual: 3(MD007, ul-indent)
105-105
: Hyphenate compound adjective in headingUse a hyphen for “long-term” in the heading to match body text and standard English usage:
@@ line 105 -### Accurate long term statistics +### Accurate long-term statistics🧰 Tools
🪛 LanguageTool
[uncategorized] ~105-~105: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...orical data for analysis. ### Accurate long term statistics Despite the one-day lag, th...(EN_COMPOUND_ADJECTIVE_INTERNAL)
113-113
: Remove unnecessary commaThe comma in “select the statistics, and not the sensors” is not needed and interrupts flow. Use:
@@ line 113 -You must therefore be careful to select the statistics, and not the sensors for use with the energy dashboard. +You must therefore be careful to select the statistics and not the sensors for use with the energy dashboard.🧰 Tools
🪛 LanguageTool
[uncategorized] ~113-~113: Possible missing comma found.
Context: ...l to select the statistics, and not the sensors for use with the energy dashboard. ###...(AI_HYDRA_LEO_MISSING_COMMA)
115-116
: Add blank line before numbered listLists should be surrounded by blank lines. Insert a blank line after the heading:
@@ line 115 -### Adding the Leneda statistics to the energy dashboard +### Adding the Leneda statistics to the energy dashboard +🧰 Tools
🪛 markdownlint-cli2 (0.17.2)
115-115: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below(MD022, blanks-around-headings)
116-116: Lists should be surrounded by blank lines
null(MD032, blanks-around-lists)
134-134
: Use “ensure” instead of “make sure” for tone consistencyPrefer “ensure” in documentation for a more formal tone:
@@ line 134 -If you have trouble logging in or accessing your data, please make sure that you can access the API from the internet connection used by your Home Assistant instance. +If you have trouble logging in or accessing your data, please ensure that you can access the API from the internet connection used by your Home Assistant instance.🧰 Tools
🪛 LanguageTool
[style] ~134-~134: Consider using a different verb to strengthen your wording.
Context: ...gging in or accessing your data, please make sure that you can access the API from the in...(MAKE_SURE_ENSURE)
138-138
: Use “verify” instead of “check”For consistency and formality, replace “check” with “verify”:
@@ line 138 -If you expect consumption data for gas but don't see it, please first check that you can see your gas consumption in the [Leneda web app](https://app.leneda.eu). +If you expect consumption data for gas but don't see it, please first verify that you can see your gas consumption in the [Leneda web app](https://app.leneda.eu).🧰 Tools
🪛 LanguageTool
[style] ~138-~138: Try using a more formal synonym for ‘check’.
Context: ... for gas but don't see it, please first check that you can see your gas consumption i...(VERIFY)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
source/_integrations/leneda.markdown
(1 hunks)
🧰 Additional context used
🪛 LanguageTool
source/_integrations/leneda.markdown
[uncategorized] ~105-~105: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...orical data for analysis. ### Accurate long term statistics Despite the one-day lag, th...
(EN_COMPOUND_ADJECTIVE_INTERNAL)
[uncategorized] ~113-~113: Possible missing comma found.
Context: ...l to select the statistics, and not the sensors for use with the energy dashboard. ###...
(AI_HYDRA_LEO_MISSING_COMMA)
[style] ~134-~134: Consider using a different verb to strengthen your wording.
Context: ...gging in or accessing your data, please make sure that you can access the API from the in...
(MAKE_SURE_ENSURE)
[style] ~138-~138: Try using a more formal synonym for ‘check’.
Context: ... for gas but don't see it, please first check that you can see your gas consumption i...
(VERIFY)
🪛 markdownlint-cli2 (0.17.2)
source/_integrations/leneda.markdown
24-24: Lists should be surrounded by blank lines
null
(MD032, blanks-around-lists)
45-45: Unordered list indentation
Expected: 2; Actual: 3
(MD007, ul-indent)
46-46: Unordered list indentation
Expected: 2; Actual: 3
(MD007, ul-indent)
47-47: Unordered list indentation
Expected: 2; Actual: 3
(MD007, ul-indent)
50-50: Unordered list indentation
Expected: 2; Actual: 3
(MD007, ul-indent)
51-51: Unordered list indentation
Expected: 2; Actual: 3
(MD007, ul-indent)
52-52: Unordered list indentation
Expected: 2; Actual: 3
(MD007, ul-indent)
65-65: Unordered list indentation
Expected: 2; Actual: 3
(MD007, ul-indent)
66-66: Unordered list indentation
Expected: 2; Actual: 3
(MD007, ul-indent)
67-67: Unordered list indentation
Expected: 2; Actual: 3
(MD007, ul-indent)
70-70: Unordered list indentation
Expected: 2; Actual: 3
(MD007, ul-indent)
71-71: Unordered list indentation
Expected: 2; Actual: 3
(MD007, ul-indent)
115-115: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below
(MD022, blanks-around-head 8000 ings)
116-116: Lists should be surrounded by blank lines
null
(MD032, blanks-around-lists)
⏰ Context from checks skipped due to timeout of 90000ms (3)
- GitHub Check: Redirect rules - home-assistant-docs
- GitHub Check: Header rules - home-assistant-docs
- GitHub Check: Pages changed - home-assistant-docs
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very nice first docs! Thank you, @fedus 👍
Thanks @c0ffeeca7 for your swift review and for the commits. I went over your fixes and will keep them in mind for future work 😄 |
New PR: #39347 |
Proposed change
This PR introduces documentation for the upcoming Leneda integration. The Leneda integration allows to connect HomeAssistant to the Leneda Luxembourg Energy Platform (www.leneda.eu)
Type of change
current
branch).current
branch).next
branch).next
branch).Additional information
Checklist
current
branch.next
branch.Summary by CodeRabbit
Summary by CodeRabbit