HID-IO Python Library
Project description
hidio Client Python Library
HID-IO Client Side Library for Python
Getting
pip install hidio
Overview
This is a convenience Python library for the HID-IO daemon which handles automatic reconnection if the server goes down for any reason. The library also handles the HID-IO authentication procedure (key negotiation and TLS wrapping).
Usage
import asyncio
import sys
import hidio.client
# Optional callbacks
class MyHIDIOClient(hidio.client.HIDIOClient):
async def on_connect(self, cap):
print("Connected!")
print("Connected API Call", await cap.alive().a_wait())
async def on_disconnect(self):
print("Disconnected!")
async def main():
client = MyHIDIOClient('Python example.py')
# Connect the client to the server using a background task
# This will automatically reconnect
tasks = [asyncio.gather(*[client.connect(auth=hidio.client.HIDIOClient.AUTH_BASIC)], return_exceptions=True)]
while client.retry_connection_status():
if client.capability_hidioserver():
try:
print("API Call", await asyncio.wait_for(
client.capability_hidioserver().alive().a_wait(),
timeout=2.0
))
print("API Call", await asyncio.wait_for(
client.capability_authenticated().nodes().a_wait(),
timeout=2.0
))
except asyncio.TimeoutError:
print("Alive timeout.")
continue
await asyncio.sleep(5)
try:
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
except KeyboardInterrupt:
print("Ctrl+C detected, exiting...")
sys.exit(1)
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
hidio-0.1.0b1.tar.gz
(11.3 kB
view details)
Built Distribution
hidio-0.1.0b1-py3-none-any.whl
(28.2 kB
view details)
File details
Details for the file hidio-0.1.0b1.tar.gz
.
File metadata
- Download URL: hidio-0.1.0b1.tar.gz
- Upload date:
- Size: 11.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.22.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 68a835685cf6391172d4a00efd7ec49ed169656500a0dafe3ee5ab236e6ed8f2 |
|
MD5 | 223fc361d234327a991e28bb08467b77 |
|
BLAKE2b-256 | 10b0ab433b1682520546cf88416350c2b57d7e101032ec981db54ddd0f357f52 |
File details
Details for the file hidio-0.1.0b1-py3-none-any.whl
.
File metadata
- Download URL: hidio-0.1.0b1-py3-none-any.whl
- Upload date:
- Size: 28.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.22.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 21e2a0874aa6b807d0ecf2795dfb130df7881abdb1d91aef0e09f75a14b61e6d |
|
MD5 | 4949949ab4608a4cc7682431e30f303b |
|
BLAKE2b-256 | 8446f9c0ba89d3819fa0d09ef86276154dfb9f5c2f180acbb6373dd7acc0a6ca |