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.5.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.5-py3-none-any.whl (25.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pytewke-0.5.5.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.5.tar.gz
Algorithm Hash digest
SHA256 877c98c27a1187a3c891b3d10780f9fa4ae1eae8d6d970c92f33975847ed9cc1
MD5 7ecee02def0ac37cd347eb91291fbcdb
BLAKE2b-256 a7831dcd3814337383531d99c42a94327dd090b0597f5c425a87c269b4e286a2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pytewke-0.5.5-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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 7e6f8ecaca97eef990c0cff1ba0afcf64eb523d1246709e993a07e197947c2e5
MD5 cf411dec6a1b17709104015e61a80546
BLAKE2b-256 281c926810e885dbf19fcad8cc86008675cd19adaef23574441e09ce3f49aece

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