Skip to main content

Async Python client for ETA Touch RESTful Webservices

Project description

py-etatouch-restful

Async Python client for ETA Touch RESTful Webservices.

The ETA documentation exposes the webservices at http://<eta-ip>:8080:

  • GET /user/api: read the API version.
  • GET /user/menu: read the menu tree.
  • GET /user/var/<uri>: read a single variable.
  • POST /user/var/<uri>: set a writable variable.
  • GET/PUT/DELETE /user/vars: manage temporary variable sets.
  • GET /user/errors: read active errors.
  • GET /user/varinfo/<uri>: read variable metadata and valid values.

Installation

python -m pip install py-etatouch-restful

Example

import asyncio

from etatouch_restful import EtaTouchClient


async def main() -> None:
    async with EtaTouchClient("192.168.1.50") as client:
        api_version = await client.get_api_version()
        value = await client.get_variable("112/10021/0/0/12112")
        print(api_version, value.str_value, value.native_value)


asyncio.run(main())

Development

python -m pip install -e ".[test,build]"
ruff check .
pytest
python -m build
twine check dist/*

Notes

ETA variable URIs are device-specific. For an ETA PU15, discover them through /user/menu and inspect writable values through /user/varinfo/<uri>.

Repository Setup

Empfohlene GitHub-Repo-Einstellungen:

  • Repository-Name: py-etatouch-restful
  • Default Branch: main
  • Develop Branch: develop
  • PyPI-Paketname: py-etatouch-restful

Initialer Push in ein leeres Repo:

git init
git add .
git commit -m "Initial py-etatouch-restful scaffold"
git branch -M main
git remote add origin https://github.com/<user>/py-etatouch-restful.git
git push -u origin main
git switch -c develop
git push -u origin develop

Release Notes

Releases are published from GitHub Releases through PyPI Trusted Publishing. See RELEASE.md.

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

py_etatouch_restful-0.1.0.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

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

py_etatouch_restful-0.1.0-py3-none-any.whl (8.1 kB view details)

Uploaded Python 3

File details

Details for the file py_etatouch_restful-0.1.0.tar.gz.

File metadata

  • Download URL: py_etatouch_restful-0.1.0.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for py_etatouch_restful-0.1.0.tar.gz
Algorithm Hash digest
SHA256 65e2d9f0194f8c6a57f63d4442fa0888eca08c60d16d85c087e91263be76317b
MD5 05aee82f2a109c0724e49f78eb392385
BLAKE2b-256 11b3d4e344296e546ffaef4c721a45d3f74ab89b4c4822f6da1c2288e61b9bb3

See more details on using hashes here.

Provenance

The following attestation bundles were made for py_etatouch_restful-0.1.0.tar.gz:

Publisher: publish.yml on Lechtob/py-etatouch-restful

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file py_etatouch_restful-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for py_etatouch_restful-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d410f472a2ba466583e4f98d4b4ef4659005007a7b4591ac29883e3abc20bcdb
MD5 55807467bbbde26f1d5d67a3a0b6d626
BLAKE2b-256 a70469f55e9f381ccb7b7bbb0a7d0b6d58f9facaf4c020cbf4db7af73a3b24f2

See more details on using hashes here.

Provenance

The following attestation bundles were made for py_etatouch_restful-0.1.0-py3-none-any.whl:

Publisher: publish.yml on Lechtob/py-etatouch-restful

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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