A python wrapper around Nibe Uplink REST API
Project description
Module
The module is an asyncio driven interface to nibe uplink public API. It is throttled to one http request every 4 seconds so try to make the most of your requests by batching requests.
Status
Example
def token_read():
return None
def token_write(token):
pass
async def run():
async with nibeuplink.Uplink(client_id = 'XXX',
client_secret = 'YYY',
redirect_uri = 'ZZZ',
access_data = token_read(),
access_data_write = token_write,
scope = 'READSYSTEM') as uplink:
if not uplink.access_data:
auth_uri = uplink.get_authorize_url()
print(auth_uri)
result = input('Enter full redirect url: ')
await uplink.get_access_token(uplink.get_code_from_url(result))
# Request all systems
print(uplink.get_systems())
# Request data for specific system
print(uplink.get_system(12345))
# Request data for parameters. Note request them in paralell using gather semantics
# that way, the module with batch up the requests into a single request to api
print(await asyncio.gather(uplink.get_parameter(12345, 11111),
uplink.get_parameter(12345, 22222)))
loop = asyncio.get_event_loop()
loop.run_until_complete (run())
Console
The module contains a commandline utility to test and request data from Nibe Uplink called nibeuplink, it will store token information in a file in the current directory called nibeuplink.json
Example
Help for utility
nibeuplink -h
Request all systems
nibeuplink --client_id 'XXX' --client_secret 'YYY' --redirect_uri 'ZZZ'
Request data for specific system
nibeuplink --client_id 'XXX' --client_secret 'YYY' --redirect_uri 'ZZZ' --system 12345
Request data for parameters
nibeuplink --client_id 'XXX' --client_secret 'YYY' --redirect_uri 'ZZZ' --system 12345 --parameter 11111 22222
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 nibeuplink-1.3.0.tar.gz.
File metadata
- Download URL: nibeuplink-1.3.0.tar.gz
- Upload date:
- Size: 14.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.10.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e10c3455e027a676572ab595ac253276a8b50f718080f48a7ad95063e6059f2c
|
|
| MD5 |
87a9eb071193e97e138e357675cccbf9
|
|
| BLAKE2b-256 |
494ee433ca8b079190698727b01b8f87dd4a68eed6ad3d8d3b619687b19423aa
|
File details
Details for the file nibeuplink-1.3.0-py3-none-any.whl.
File metadata
- Download URL: nibeuplink-1.3.0-py3-none-any.whl
- Upload date:
- Size: 16.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.10.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eaee27fb565e8531e75c16dc0c4fa9e901fcb908f053e06331d21dd82f3b2542
|
|
| MD5 |
6393d5e9973bbc59da4c51a8eeb144ed
|
|
| BLAKE2b-256 |
e345899f86a1d832e1abad517f656da899001d2d0a4748933df8c074dd6855b4
|