Patrick Kelley 8fd444092b initial
2025-05-07 15:35:15 -04:00

30 lines
727 B
Python

# ping.py
import sys
import broker
# Setup endpoint and connect to Zeek.
with (
broker.Endpoint() as ep,
ep.make_subscriber("/topic/test") as sub,
ep.make_status_subscriber(True) as ss,
):
ep.peer("127.0.0.1", 9999)
# Wait until connection is established.
st = ss.get()
if not (type(st) == broker.Status and st.code() == broker.SC.PeerAdded):
print("could not connect")
sys.exit(0)
for n in range(5):
# Send event "ping(n)".
ping = broker.zeek.Event("ping", n)
ep.publish("/topic/test", ping)
# Wait for "pong" reply event.
(t, d) = sub.get()
pong = broker.zeek.Event(d)
print(f"received {pong.name()}{pong.args()}")