项目作者: bieniu

项目描述 :
Python wrapper for getting air quality data from Nettigo Air Monitor devices
高级语言: Python
项目地址: git://github.com/bieniu/nettigo-air-monitor.git
创建时间: 2021-03-24T12:20:12Z
项目社区:https://github.com/bieniu/nettigo-air-monitor

开源协议:Apache License 2.0

下载


GitHub Release
PyPI
PyPI - Downloads
Buy me a coffee
PayPal_Me
Revolut.Me

nettigo-air-monitor

Python wrapper for getting air quality data from Nettigo Air Monitor devices.

How to use package

  1. """An example of using Nettigo Air Monitor package."""
  2. import asyncio
  3. import logging
  4. from aiohttp import ClientConnectorError, ClientError, ClientSession
  5. from nettigo_air_monitor import (
  6. ApiError,
  7. AuthFailedError,
  8. ConnectionOptions,
  9. InvalidSensorDataError,
  10. NettigoAirMonitor,
  11. )
  12. logging.basicConfig(level=logging.DEBUG)
  13. HOST = "nam"
  14. USERNAME = "user"
  15. PASSWORD = "password"
  16. async def main():
  17. """Run main function."""
  18. options = ConnectionOptions(host=HOST, username=USERNAME, password=PASSWORD)
  19. async with ClientSession() as websession:
  20. nam = await NettigoAirMonitor.create(websession, options)
  21. try:
  22. data = await nam.async_update()
  23. mac = await nam.async_get_mac_address()
  24. except (
  25. ApiError,
  26. AuthFailedError,
  27. ClientConnectorError,
  28. ClientError,
  29. InvalidSensorDataError,
  30. asyncio.TimeoutError,
  31. ) as error:
  32. print(f"Error: {error}")
  33. else:
  34. print(f"Auth enabled: {nam.auth_enabled}")
  35. print(f"Firmware: {nam.software_version}")
  36. print(f"MAC address: {mac}")
  37. print(f"Data: {data}")
  38. loop = asyncio.new_event_loop()
  39. loop.run_until_complete(main())
  40. loop.close()