Python interface to the Combined Energy API
Project description
Python: Asynchronous client for Combined Energy API
Provides an async Python 3.8+ interface for the http://combined.energy/ monitoring platform API.
Note this API client is reverse engineered from observing requests being made
in the web-application. Please report any failures to read data, this is likely to occur for readings as I am only able to create entries for devices that I have.
Installation
Install from PyPI
python3 -m pip install combined-energy-api
Usage
import asyncio
from combined_energy import CombinedEnergy
from combined_energy.helpers import ReadingsIterator
async def main():
"""
Example using Combined Energy API client.
"""
async with CombinedEnergy(
mobile_or_email="user@example.com",
password="YOUR_COMBINED_ENERGY_PASSWORD",
installation_id=9999,
) as combined_energy:
status = await combined_energy.communication_status()
print(status)
# To generate a stream of readings use the iterator, this example fetches
# data in 5 minute increments
async for readings in ReadingsIterator(combined_energy, increment=300):
print(readings)
await asyncio.sleep(300)
asyncio.run(main())
Development Environment
You will need:
- Python 3.8+
- poetry
- pre-commit
Ensure pre-commit is installed into your git repository with pre-commit install
.
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
combined_energy_api-0.7.tar.gz
(18.7 kB
view hashes)
Built Distribution
Close
Hashes for combined_energy_api-0.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | db350473734185638b10235a4af29fb6aee5f374943ef77f1f1a636c95387dd8 |
|
MD5 | 75ab6d3624f9a131be193a9e23a48d6b |
|
BLAKE2b-256 | afc0d47b7a777243fe545f7b1b1db4e058366dadb9bc3d00ea1608c5f4bda743 |