Skip to content

Asynchronous library to retrieve data from PEGELONLINE

License

Notifications You must be signed in to change notification settings

mib1185/aiopegelonline

Repository files navigation

Test codecov Maintainability Library version Supported versions Downloads Formated with Black

aiopegelonline

Asynchronous library to retrieve data from PEGELONLINE.

⚠️ this is in early development state ⚠️

breaking changes may occure at every time

Requirements

  • Python >= 3.9
  • aiohttp

Installation

pip install aiopegelonline

Examples

Get all available measurement stations

import asyncio
import aiohttp
from aiopegelonline import PegelOnline


async def main():
    async with aiohttp.ClientSession() as session:
        pegelonline = PegelOnline(session)
        stations = await pegelonline.async_get_all_stations()
        for uuid, station in stations.items():
            print(f"uuid: {uuid} name: {station.name}")


if __name__ == "__main__":
    asyncio.run(main())

Get current measurement

import asyncio
import aiohttp
from aiopegelonline import PegelOnline


async def main():
    async with aiohttp.ClientSession() as session:
        pegelonline = PegelOnline(session)
        measurements = await pegelonline.async_get_station_measurements("70272185-b2b3-4178-96b8-43bea330dcae")

    for name, data in measurements.as_dict().items():
        if data is None:
            print(f"{name} not provided by measurement station")
        else:
            print(f"{name}: {data.value} {data.uom}")

if __name__ == "__main__":
    asyncio.run(main())

References


You like my work?

Buy Me A Coffee