Files
xteink-web-emulator/scripts/qmp-qom.py
T
2026-07-19 19:23:51 -04:00

27 lines
705 B
Python
Executable File

#!/usr/bin/env python3
# Exercise the button/ADC QOM interface: qmp-qom.py <sock> get|set <path> <prop> [value]
import json
import socket
import sys
sock = socket.socket(socket.AF_UNIX)
sock.connect(sys.argv[1])
f = sock.makefile("rw")
json.loads(f.readline())
def cmd(command):
f.write(json.dumps(command) + "\n")
f.flush()
return json.loads(f.readline())
cmd({"execute": "qmp_capabilities"})
op, path, prop = sys.argv[2], sys.argv[3], sys.argv[4]
if op == "set":
print(cmd({"execute": "qom-set", "arguments": {
"path": path, "property": prop, "value": int(sys.argv[5])}}))
else:
print(cmd({"execute": "qom-get", "arguments": {
"path": path, "property": prop}}))