False alarms between services at NA: RESI AUDIO SILENT only while recording; TRACKS MIDI waits 2 min

2026-10-25 09:00 between services NA showed 2 DOWN while everything was fine: the Resi send is quiet
between services (the silence check now judges only while a HyperDeck records), and the NA Tracks
Bonjour advert blips for 10-70 s (24 times on record) while the real MIDI links stay up (its check now
waits 120 s). Applied on NA between services together with the queued RESI VOX.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-25 09:06:55 -04:00
co-authored by Claude Opus 5.5
parent b6221e0d63
commit c471ac2c92
5 changed files with 24 additions and 14 deletions
+3 -3
View File
@@ -3471,13 +3471,13 @@ ATEM_WATCHER = None
def check_atem(chk, snap, ctx):
"""chk["part"] "audio" or "camera": the switcher must match the restore file. "silence": a metered input
(Resi) has had no audio at all for a while; only in auto-fix's hours or while a
HyperDeck records - at 4 AM the console may simply be off."""
(Resi) has had no audio at all for a while; only while a HyperDeck records (a service is on): between services
the Resi send is quiet on purpose (2026-10-25 09:00, a false alarm at NA)."""
a = snap.atem
if not a or not a.get("connected") or ctx["now"] - a.get("time", 0) > 30:
return [(chk["part"], Result(OK))] # watcher not reporting: no verdict
diffs = a.get(chk["part"]) or []
if chk["part"] == "silence" and diffs and not (ctx.get("any_recording") or in_windows(ctx.get("autofix_windows") or [], ctx["now"])):
if chk["part"] == "silence" and diffs and not ctx.get("any_recording"):
return [(chk["part"], Result(OK))]
if diffs:
return [(chk["part"], Result(ERR, chk["msg"], info="; ".join(diffs[:3]), named=True))]