Skip to main content

A Python client for LAN communications with Tewke devices

Project description

ci

pytewke

A Python client for local CoAP communications with Tewke devices

This library is under development

Usage

Install

pip install pytewke

Examples

Discovering Scenes and Targets

import asyncio
from pprint import pprint

from pytewke import Tap
from pytewke.error import PyTewkeDiscoveryError


async def test_device():
    """Test Tap Panel device."""
    # Replace with your device's IP address
    host = "w.x.y.z"

    try:
        async with Tap(host) as tap:
            print("Targets:")
            targets = await tap.get_targets()
            pprint(targets)

            print("Scenes:")
            scenes = await tap.get_scenes()
            pprint(scenes)
    except PyTewkeDiscoveryError as err:
        print(f"Error connecting to {host}, error: {repr(err)}")


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

Example script

The repository includes an example script to quickly try it out.

Uncomment the relevant lines in example.py to run different examples like discovering resources, reading config, observing state, etc.

python3 example.py

Note: if you have not installed pytewke but have cloned the library instead, you will need to add the src folder to your PYTHONPATH:

PYTHONPATH="${PYTHONPATH}:/path/to/pytewke/src" python3 example.py

Development

Requirements

  • aiocoap
  • cbor2
  • pydantic

Note: Python versions older than 3.12 have not been tested.

Development requirements

Run the following command inside this folder

pip install .[dev]

Note: You will need to add the src folder to your PYTHONPATH when using the example script or while running tests.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pytewke-0.5.6.tar.gz (17.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pytewke-0.5.6-py3-none-any.whl (25.2 kB view details)

Uploaded Python 3

File details

Details for the file pytewke-0.5.6.tar.gz.

File metadata

  • Download URL: pytewke-0.5.6.tar.gz
  • Upload date:
  • Size: 17.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for pytewke-0.5.6.tar.gz
Algorithm Hash digest
SHA256 12909981353f551ba4af6bb18e6fc5206e3259fc23fc45c87bd0d6d45e50a166
MD5 b77f7d9fb5fc15bb930ddce853b41fd7
BLAKE2b-256 94e69e999e31c32a01d692dacd54d8be33337205c37eb48cb569e06eb132a09d

See more details on using hashes here.

File details

Details for the file pytewke-0.5.6-py3-none-any.whl.

File metadata

  • Download URL: pytewke-0.5.6-py3-none-any.whl
  • Upload date:
  • Size: 25.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for pytewke-0.5.6-py3-none-any.whl
Algorithm Hash digest
SHA256 64f2d0c0525b3ad738815aff4e7d6d6a11f49554d5c3db6c399ae2233e0451b1
MD5 38d3b917aa59651762d51b34881487a7
BLAKE2b-256 115dd800aa11f35d09138f1d10cfce9be4cbdf22b8ba8fb20b436a6472ab5514

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page