generated from ludeeus/integration_blueprint
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
2d39f4a
commit ef736e3
Showing
7 changed files
with
147 additions
and
113 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,48 +1,62 @@ | ||
# Notice | ||
|
||
The component and platforms in this repository are not meant to be used by a | ||
user, but as a "blueprint" that custom component developers can build | ||
upon, to make more awesome stuff. | ||
|
||
HAVE FUN! 😎 | ||
|
||
## Why? | ||
|
||
This is simple, by having custom_components look (README + structure) the same | ||
it is easier for developers to help each other and for users to start using them. | ||
|
||
If you are a developer and you want to add things to this "blueprint" that you think more | ||
developers will have use for, please open a PR to add it :) | ||
|
||
## What? | ||
|
||
This repository contains multiple files, here is a overview: | ||
|
||
| File | Purpose | Documentation | | ||
| ------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | | ||
| `.devcontainer.json` | Used for development/testing with Visual Studio Code. | [Documentation](https://code.visualstudio.com/docs/remote/containers) | | ||
| `.github/ISSUE_TEMPLATE/*.yml` | Templates for the issue tracker | [Documentation](https://help.github.com/en/github/building-a-strong-community/configuring-issue-templates-for-your-repository) | | ||
| `.vscode/tasks.json` | Tasks for the devcontainer. | [Documentation](https://code.visualstudio.com/docs/editor/tasks) | | ||
| `custom_components/integration_blueprint/*` | Integration files, this is where everything happens. | [Documentation](https://developers.home-assistant.io/docs/creating_component_index) | | ||
| `CONTRIBUTING.md` | Guidelines on how to contribute. | [Documentation](https://help.github.com/en/github/building-a-strong-community/setting-guidelines-for-repository-contributors) | | ||
| `LICENSE` | The license file for the project. | [Documentation](https://help.github.com/en/github/creating-cloning-and-archiving-repositories/licensing-a-repository) | | ||
| `README.md` | The file you are reading now, should contain info about the integration, installation and configuration instructions. | [Documentation](https://help.github.com/en/github/writing-on-github/basic-writing-and-formatting-syntax) | | ||
| `requirements.txt` | Python packages used for development/lint/testing this integration. | [Documentation](https://pip.pypa.io/en/stable/user_guide/#requirements-files) | | ||
|
||
## How? | ||
|
||
1. Create a new repository in GitHub, using this repository as a template by clicking the "Use this template" button in the GitHub UI. | ||
1. Open your new repository in Visual Studio Code devcontainer (Preferably with the "`Dev Containers: Clone Repository in Named Container Volume...`" option). | ||
1. Rename all instances of the `integration_blueprint` to `custom_components/<your_integration_domain>` (e.g. `custom_components/awesome_integration`). | ||
1. Rename all instances of the `Anglian Water` to `<Your Integration Name>` (e.g. `Awesome Integration`). | ||
1. Run the `scripts/develop` to start HA and test out your new integration. | ||
|
||
## Next steps | ||
|
||
These are some next steps you may want to look into: | ||
|
||
- Add tests to your integration, [`pytest-homeassistant-custom-component`](https://github.com/MatthewFlamm/pytest-homeassistant-custom-component) can help you get started. | ||
- Add brand images (logo/icon) to https://github.com/home-assistant/brands. | ||
- Create your first release. | ||
- Share your integration on the [Home Assistant Forum](https://community.home-assistant.io/). | ||
- Submit your integration to the [HACS](https://hacs.xyz/docs/publish/start). | ||
# Anglian Water | ||
|
||
[![GitHub Release][releases-shield]][releases] | ||
[![GitHub Activity][commits-shield]][commits] | ||
[![License][license-shield]](LICENSE) | ||
|
||
![Project Maintenance][maintenance-shield] | ||
[![BuyMeCoffee][buymecoffeebadge]][buymecoffee] | ||
|
||
[![Discord][discord-shield]][discord] | ||
[![Community Forum][forum-shield]][forum] | ||
|
||
_Integration to integrate with [haanglianwater][haanglianwater]._ | ||
|
||
**This integration will set up the following platforms.** | ||
|
||
| Platform | Description | | ||
| -------- | ---------------------------------------------- | | ||
| `sensor` | Show the previous day water usage information. | | ||
|
||
This integration will also collect the past year worth of smart meter readings from your dashboard and import them into a statistic for use with your energy dashboard. | ||
|
||
## Installation | ||
|
||
1. Using the tool of choice open the directory (folder) for your HA configuration (where you find `configuration.yaml`). | ||
1. If you do not have a `custom_components` directory (folder) there, you need to create it. | ||
1. In the `custom_components` directory (folder) create a new folder called `anglian_water`. | ||
1. Download _all_ the files from the `custom_components/anglian_water/` directory (folder) in this repository. | ||
1. Place the files you downloaded in the new directory (folder) you created. | ||
1. Restart Home Assistant | ||
1. In the HA UI go to "Configuration" -> "Integrations" click "+" and search for "Anglian Water" | ||
|
||
## Configuration is done in the UI | ||
|
||
<!----> | ||
|
||
You should generally leave the Device ID field blank, the integration will generate this automatically after clicking submit. | ||
|
||
Note, during first sign in, the integration needs to "register" Home Assistant as a mobile device to your Anglian Water account, to configure the access token and device IDs correctly a number of requests must be sent in a specific order. Enabling debug mode you will see it makes two requests to "register_device", a request to "get_dashboard_details" and finally a request to "get_bills_payments". | ||
|
||
If the integration does not send the above queries in that order, the API to retrieve usage details continues to stay locked and this integration will not work. The integration does not store or process the data returned from the APIs for these extra endpoints, they are simply used to replicate the calls the mobile app creates. | ||
|
||
## Contributions are welcome! | ||
|
||
If you want to contribute to this please read the [Contribution guidelines](CONTRIBUTING.md) | ||
|
||
--- | ||
|
||
[haanglianwater]: https://github.com/pantherale0/haanglianwater | ||
[buymecoffee]: https://www.buymeacoffee.com/pantherale0 | ||
[buymecoffeebadge]: https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg?style=for-the-badge | ||
[commits-shield]: https://img.shields.io/github/commit-activity/y/pantherale0/haanglianwater.svg?style=for-the-badge | ||
[commits]: https://github.com/pantherale0/haanglianwater/commits/main | ||
[discord]: https://discord.gg/Qa5fW2R | ||
[discord-shield]: https://img.shields.io/discord/330944238910963714.svg?style=for-the-badge | ||
[exampleimg]: example.png | ||
[forum-shield]: https://img.shields.io/badge/community-forum-brightgreen.svg?style=for-the-badge | ||
[forum]: https://community.home-assistant.io/ | ||
[license-shield]: https://img.shields.io/github/license/pantherale0/haanglianwater.svg?style=for-the-badge | ||
[maintenance-shield]: https://img.shields.io/badge/maintainer-Joakim%20Sørensen%20%40pantherale0-blue.svg?style=for-the-badge | ||
[releases-shield]: https://img.shields.io/github/release/pantherale0/haanglianwater.svg?style=for-the-badge | ||
[releases]: https://github.com/pantherale0/haanglianwater/releases |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -13,7 +13,7 @@ | |
"anglian_water" | ||
], | ||
"requirements": [ | ||
"pyanglianwater==0.1.0" | ||
"pyanglianwater==0.1.1" | ||
], | ||
"version": "0.0.0" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,4 +2,4 @@ colorlog==6.7.0 | |
homeassistant==2023.8.0 | ||
pip>=21.0,<23.2 | ||
ruff==0.0.292 | ||
pyanglianwater==0.1.0 | ||
pyanglianwater==0.1.1 |