You can use the websocket to react to button presses. Here is a small example in python. Has no error handling etc but works:
import websocket
import _thread
import time
import rel
import json
def on_message(ws, message):
jmsg = json.loads(message)
id = jmsg['id']
buttonevent = jmsg['state']['buttonevent']
match id:
case '18':
print("sensor 18")
match buttonevent:
case 1002:
print("short press on")
case 2002:
print("short press off")
case _:
print("sensor not handled")
def on_error(ws, error):
print(error)
def on_close(ws, close_status_code, close_msg):
print("### closed ###")
def on_open(ws):
print("Opened connection")
if __name__ == "__main__":
websocket.enableTrace(True)
ws = websocket.WebSocketApp("ws://192.168.42.22:8088",
on_open=on_open,
on_message=on_message,
on_error=on_error,
on_close=on_close)
ws.run_forever(dispatcher=rel, reconnect=5)
rel.signal(2, rel.abort)
rel.dispatch()