Zusi3 TCP Client library with async support and no deps
Project description
pyzusi3
Library to talk to Zusi3 without any specialized purpose.
Intentionally the message parameters are taken almost word-by-word from Zusi documentation to make using the lib easier. So be prepared for some mixing of code language (english) and zusi-lib language (german).
Examples
Minimal code example
import asyncio
async def print_state(client):
while True:
print(client.local_state)
asyncio.sleep(1)
tasks = []
async def main(ip, port):
client = ZusiClient(ip, port, "pyzusi3 demo", "1.0")
client.request_status(displays=[
messages.FAHRPULT_ANZEIGEN.GESCHWINDIGKEIT,
messages.FAHRPULT_ANZEIGEN.STATUS_SIFA
],
programdata=[
messages.PROGRAMMDATEN.ZUGDATEI,
messages.PROGRAMMDATEN.ZUGNUMMER
]
)
main_task = asyncio.create_task(client.connect())
tasks.append(main_task)
watch_task = asyncio.create_task(print_state(client))
tasks.append(watch_task)
if __name__ == "__main__":
run_loop = asyncio.new_event_loop()
run_loop.create_task(main(ZUSI_IP, ZUSI_PORT))
run_loop.run_forever()
Interaction simulation
PySide6 UI
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
pyzusi3-1.2.1.tar.gz
(89.4 kB
view details)
Built Distribution
pyzusi3-1.2.1-py3-none-any.whl
(36.6 kB
view details)
File details
Details for the file pyzusi3-1.2.1.tar.gz
.
File metadata
- Download URL: pyzusi3-1.2.1.tar.gz
- Upload date:
- Size: 89.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
925ee3581967a940253a6bf86df9fd0c377d42f3f15a6b8cf6654690f42e547e
|
|
MD5 |
30029fe2066802096d8d6bb13794b892
|
|
BLAKE2b-256 |
86a6c70136244ea937963abfed64426e6ea79f628b6f31a7c263f2fed9de03ec
|
File details
Details for the file pyzusi3-1.2.1-py3-none-any.whl
.
File metadata
- Download URL: pyzusi3-1.2.1-py3-none-any.whl
- Upload date:
- Size: 36.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
2bd50f6e03d3c5c009a2759cf32e5e27bb96de83b9858376609889cf0861d361
|
|
MD5 |
81c1af001ceeb153cc14a684d8c277e6
|
|
BLAKE2b-256 |
82673fe9e64d86d2eb71e28c76692ec2f8030344058b0b3cf0074e50256285eb
|