python-oligo
[ES] Cliente Python (NO OFICIAL) para i-DE (Iberdrola distribución).
Instalación:
Requests support:
pip install oligo[requests]
Async support:
pip install oligo[asyncio]
Ejemplos:
Consultar consumo actual (Sync):
from oligo import Iber
connection = Iber()
connection.login("user", "password")
watt = connection.watthourmeter()
print(watt)
Consultar consumo actual (ASync):
import asyncio
from oligo.asyncio import AsyncIber
async def main():
connection = AsyncIber()
await connection.login("user", "password")
watt = await connection.watthourmeter()
print(watt)
await connection.close()
asyncio.run(main())
Consultar estado ICP interno (Sync):
from oligo import Iber
connection = Iber()
connection.login("user", "password")
status = connection.icpstatus()
print(status)
Consultar estado ICP interno (ASync):
import asyncio
from oligo.asyncio import AsyncIber
async def main():
connection = AsyncIber()
await connection.login("user", "password")
status = await connection.icpstatus()
print(status)
asyncio.run(main())
Obtener el consumo horario durante un periodo (Sync)
from oligo import Iber
from datetime import date, timedelta
connection = Iber()
connection.login("user", "password")
from_date = date.today() - timedelta(days=7)
until_date = date.today() - timedelta(days=1)
consumo = connection.consumption(from_date, until_date)
print(consumo[:10])
Obtener el consumo horario durante un periodo (ASync)
import asyncio
from oligo.asyncio import AsyncIber
from datetime import date, timedelta
async def main():
connection = AsyncIber()
await connection.login("user", "password")
from_date = date.today() - timedelta(days=7)
until_date = date.today() - timedelta(days=1)
consumo = await connection.consumption(from_date, until_date)
print(consumo[:10])
asyncio.run(main())
Los datos son el consumo por hora en Watt-horas. En este caso tendremos los dato de una semana, que son 7 por 24, 168 valores. Si sumamos y dividimos por 1000, tenemos el consumo de una semana en kWh.
Integraciones:
- Integración para Home Assistan: ad-ha/ide_api
[EN] Python client (UNOFFICIAL) for i-DE (Iberdrola distribución).
Install:
pip install oligo
Example:
Obtain current consumption (Sync):
from oligo import Iber
connection = Iber()
connection.login("user", "password")
watt = connection.watthourmeter()
print(watt)
Obtain current consumption (ASync):
import asyncio
from oligo.asyncio import AsyncIber
async def main():
connection = AsyncIber()
await connection.login("user", "password")
watt = await connection.watthourmeter()
print(watt)
asyncio.run(main())
Get ICP status (Sync):
from oligo import Iber
connection = Iber()
connection.login("user", "password")
status = connection.icpstatus()
print(status)
Get ICP status (ASync):
import asyncio
from oligo.asyncio import AsyncIber
async def main():
connection = AsyncIber()
await connection.login("user", "password")
status = await connection.icpstatus()
print(status)
asyncio.run(main())
Retrieve the hourly consumption during a time period (Sync)
from oligo import Iber
from datetime import date, timedelta
connection = Iber()
connection.login("user", "password")
from_date = date.today() - timedelta(days=7)
until_date = date.today() - timedelta(days=1)
consumo = connection.consumption(from_date, until_date)
print(consumo[:10])
Retrieve the hourly consumption during a time period (Async)
import asyncio
from oligo.asyncio import AsyncIber
from datetime import date, timedelta
async def main():
connection = AsyncIber()
await connection.login("user", "password")
from_date = date.today() - timedelta(days=7)
until_date = date.today() - timedelta(days=1)
consumo = await connection.consumption(from_date, until_date)
print(consumo[:10])
asyncio.run(main())
The values are the consumption in Watt-hours. In this case, we have the data of one week, which are 7 times 24, 168 values. If we sum and divide by 1000, we will have the total consumption from one week in kWh.