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
nibeuplink-1.0.2.tar.gz
(12.7 kB
view details)
File details
Details for the file nibeuplink-1.0.2.tar.gz
.
File metadata
- Download URL: nibeuplink-1.0.2.tar.gz
- Upload date:
- Size: 12.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 994bad58d7763d36eb9deea687eb9f0c1ff876dd4e7c69ad00a08714fdef86e5 |
|
MD5 | 94cd7f80baf0980ed946a0379ec8d1d5 |
|
BLAKE2b-256 | 7ccbf9d79fdef665fb9e6088b774244a3f063e84d29bfdf3b1a7a526e28f4361 |