Files
felhom.eu/documentation/audits/cc-creds-build-2026-10-17/harness/tuya_status.py
T

11 lines
813 B
Python

# Read-only Tuya cloud status per plug, keys from `sec run` env. Prints success, item count and switch state only.
import os, tinytuya
c = tinytuya.Cloud(apiRegion="eu", apiKey=os.environ["TUYA_ID"], apiSecret=os.environ["TUYA_SECRET"])
print("cloud token:", "ok" if getattr(c, "token", None) else "FAILED (%s)" % getattr(c, "error", "?"))
for name in ("TUYA_DEVICE_ID_N100", "TUYA_DEVICE_ID_HP"):
r = c.getstatus(os.environ[name])
ok = isinstance(r, dict) and r.get("success") is True
items = r.get("result", []) if ok else []
sw = [i.get("value") for i in items if i.get("code") == "switch_1"]
print("%s: %s, %d status items, switch_1=%s" % (name, "PASS" if ok else "FAIL code=%s msg=%s" % (r.get("code"), r.get("msg")) if isinstance(r, dict) else "FAIL", len(items), sw[0] if sw else "?"))