Home Assistant Client library for Carbon Intensity API - Adds work by jfparis and alanmcgore to expose additional forecasts and percentage renewables
Project description
carbonintensityforked
Simple Carbon Intensity UK API Library
The purpose of this library is to retrieve information from Carbon Intensity UK
The client connects asynchronously to the API, retrieving information about the current level of CO2 generating energy in the current period.
It uses aiohttp to communicate with the API asynchronously. This decision has been based mainly on the premise that the library will be used in the context of Home Assistant integration.
In addition it calculates when is the next 24 hours lowest level comparing values of the CO2 forecast levels.
This version also adds in a regional low carbon generation percentage, which is calculated as nuclear + wind + solar + biomass + hydro as well as the work by @jfparis to implement optimal windows/forecasts.
.2 Adds a regional fossil fuel generation percentage which calculates as gas + coal generation from the current window.
Example
Retrieve regional and national information based on postcode SW1 for the next 24 hours starting now:
client = Client("SW1")
response = await client.async_get_data()
data = response["data"]
Note: Time in UTC
Data format
An example of the function output can be found below:
{
"data":
{
"current_period_from": "2020-05-20T10:00+00:00",
"current_period_to": "2020-05-20T10:30+00:00",
"current_period_forecast":300,
"current_period_index": "high",
"current_period_national_forecast":230,
"current_period_national_index": "moderate",
"current_low_carbon_percentage": 23,
"current_fossil_fuel_percentage": 65,
"lowest_period_from":"2020-05-21T14:00+00:00",
"lowest_period_to":"2020-05-21T14:30+00:00",
"lowest_period_forecast": 168,
"lowest_period_index": "moderate",
"optimal_window_from" : "2020-05-20T10:00+00:00",
"optimal_window_to" : "2020-05-20T10:30+00:00",
"optimal_window_forecast" : 121,
"optimal_window_index" : "low",
"optimal_window_48_from" : "2020-05-20T10:00+00:00",
"optimal_window_48_to" : "2020-05-20T10:30+00:00",
"optimal_window_48_forecast" : 130,
"optimal_window_48_index" : "low",
"unit": "gCO2/kWh",
"forecast": [{"from":"2020-05-20T10:00+00:00","to": "2020-05-20T11:00+00:00", "intensity": 162, "index": 0, "optimal": False}],
"postcode": "SW1"
}
}
Install carbonintensity
python3 -m pip install -U carbonintensity-forked
Licenses
This work is based on the following:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file carbonintensityforked-0.0.2.tar.gz.
File metadata
- Download URL: carbonintensityforked-0.0.2.tar.gz
- Upload date:
- Size: 5.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bad0b8ed52f920715f7bccdefc57e0f87bfc62ce7eea244e077b85cfadf32b7f
|
|
| MD5 |
531535cb2a0461ee1068c3dead3e639b
|
|
| BLAKE2b-256 |
7976926723456316fe9ce8fb18ae484d9f7340bcc739a9977605279e646453f5
|
File details
Details for the file carbonintensityforked-0.0.2-py3-none-any.whl.
File metadata
- Download URL: carbonintensityforked-0.0.2-py3-none-any.whl
- Upload date:
- Size: 6.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c977b243736028038ec19f44b0c2b71c407a556945c6f7a6fce253fea68da67d
|
|
| MD5 |
1ac935d28fea27959da6bd5c18d80e9b
|
|
| BLAKE2b-256 |
e6e8324ce69277d7ec36c65500176036d6d4e5eadf58e5cc4546cb3ee9fcf4b5
|