{ "alert_webhook": "", "atem": { "host": "10.1.10.2", "library": "~/Library/Application Support/companion/modules/bmd-atem-*/node_modules/atem-connection", "node": "/Applications/Companion [0-9]*.app/Contents/Resources/node-runtimes/node22/bin/node", "reference": "atem-reference.xml", "source_folder": "~/Library/CloudStorage/GoogleDrive-media@waterschurch.org/Shared drives/Waters Creative/Production Team/Backup/NA/ATEM" }, "auto_fix": { "after_seconds": 20, "fixes": [ "hyperdeck", "tascam_reconnect", "midi_reconnect", "rtpmidi_start", "vista", "arena", "obs", "ableton", "translate", "dvs_prop", "dvs_tracks", "dvs_translation", "solo_afl", "atem_audio", "atem_camera", "atem_midi", "spotify_play" ], "max_tries": 2, "pause_after_network_seconds": 60, "restart_connections": true, "retry_seconds": 90, "while_muted": [ "spotify_play" ], "windows": [ { "days": [ "tue" ], "end": "22:00", "start": "14:00" }, { "days": [ "wed" ], "end": "21:00", "start": "09:00" }, { "days": [ "sun" ], "end": "14:00", "start": "06:30" } ] }, "companion": { "host": "127.0.0.1", "port": 8000 }, "dante_switches": [ "10.66.1.100", "10.66.1.102" ], "debounce_seconds": 3, "failover": { "after_seconds": 2, "note_seconds": 900, "windows": [ { "days": [ "sun" ], "end": "13:30", "start": "06:30" } ] }, "fixes": { "ableton": { "host": "tracks", "kind": "ssh", "label": "start Ableton if it is not running, with the set it last had open", "params": { "app": "Ableton Live 11 Suite", "host": "tracks", "restart": false }, "run": "pgrep -xq Live || { L=$(ls -td ~/Library/Preferences/Ableton/Live*/ | head -1); S=$(grep -a 'info: Loading document \"' \"${L}Log.txt\" | grep -v '/Templates/' | tail -1 | sed -E 's/^.*Loading document \"(.*)\"[^\"]*$/\\1/'); if [ -n \"$S\" ] && [ -f \"$S\" ]; then open -a 'Ableton Live 11 Suite' \"$S\"; else open -a 'Ableton Live 11 Suite'; fi; }", "short": "ABLETON", "template": "ableton" }, "ableton_restart": { "conn": "ableton", "host": "tracks", "kind": "ssh", "label": "restart Ableton on the Tracks Mac and reopen the set it had open (unsaved changes are lost; Live may ask to recover on the Tracks Mac)", "params": { "app": "Ableton Live 11 Suite", "host": "tracks", "restart": true, "wait_seconds": 15 }, "reconnect": true, "run": "L=$(ls -td ~/Library/Preferences/Ableton/Live*/ | head -1); S=$(grep -a 'info: Loading document \"' \"${L}Log.txt\" | grep -v '/Templates/' | tail -1 | sed -E 's/^.*Loading document \"(.*)\"[^\"]*$/\\1/'); pkill -TERM -x Live; i=0; while pgrep -xq Live && [ $i -lt 30 ]; do sleep 0.5; i=$((i+1)); done; pgrep -xq Live && pkill -KILL -x Live; sleep 1; if [ -n \"$S\" ] && [ -f \"$S\" ]; then open -a 'Ableton Live 11 Suite' \"$S\"; else open -a 'Ableton Live 11 Suite'; fi", "short": "ABLETON", "template": "ableton", "timeout": 60 }, "arena": { "host": "lighting", "kind": "ssh", "label": "start Resolume Arena on the Lighting PC if it is not running, then reconnect Companion", "params": { "exe": "Arena.exe", "host": "lighting", "task": "Start Arena" }, "reconnect": true, "run": "tasklist /NH /FI \"IMAGENAME eq Arena.exe\" | find /I \"Arena.exe\" >nul || (schtasks /Run /TN \"\\StatusPanel\\Start Arena\" >nul && ping -n 9 127.0.0.1 >nul && tasklist /NH /FI \"IMAGENAME eq Arena.exe\" | find /I \"Arena.exe\" >nul)", "short": "ARENA", "template": "win_start" }, "atem_audio": { "kind": "atem", "label": "set the switcher's audio inputs back to the restore file (Resi on input 16 on, the rest as saved)", "params": {}, "part": "audio", "short": "ATEM AUDIO", "template": "atem" }, "atem_camera": { "kind": "atem", "label": "set the cameras' settings back to the restore file (only what differs)", "params": {}, "part": "camera", "short": "ATEM CAMERA", "template": "atem" }, "atem_midi": { "kind": "local", "label": "turn off MIDI control in ATEM Software Control (quits and reopens the app; the switcher is not affected)", "params": {}, "restart_ok": true, "run": "was=$(pgrep -f \"ATEM Software Control.app/Contents/MacOS\"); pkill -TERM -f \"ATEM Software Control.app/Contents/MacOS\"; i=0; while pgrep -fq \"ATEM Software Control.app/Contents/MacOS\" && [ $i -lt 20 ]; do sleep 0.5; i=$((i+1)); done; defaults write \"com.blackmagic-design.ATEM Software Control\" midiEnabled -bool false; [ -z \"$was\" ] || open -g -a \"ATEM Software Control\"; [ \"$(defaults read \"com.blackmagic-design.ATEM Software Control\" midiEnabled)\" = 0 ]", "short": "ATEM MIDI", "template": "atem_midi_off" }, "bibleapp": { "host": "bibletv", "kind": "ssh", "label": "restart the Bible app on the Sanctuary TV PC (Windows: cmd.exe)", "params": { "exe": "Bible App.exe", "host": "bibletv", "task": "Start BibleApp" }, "run": "taskkill /F /T /IM \"Bible App.exe\" >nul 2>&1 & ping -n 3 127.0.0.1 >nul & schtasks /Run /TN \"\\StatusPanel\\Start BibleApp\" >nul && ping -n 9 127.0.0.1 >nul && tasklist /NH /FI \"IMAGENAME eq Bible App.exe\" | find /I \"Bible App.exe\" >nul", "short": "BIBLE APP", "template": "win_restart" }, "bridge": { "kind": "local", "label": "restart the Resi bridge", "params": { "labels": [ "org.waterschurch.resi-propresenter" ] }, "run": "launchctl kickstart -k gui/$(id -u)/org.waterschurch.resi-propresenter || launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/org.waterschurch.resi-propresenter.plist", "short": "BRIDGE", "template": "helpers" }, "caption_screen": { "kind": "local", "label": "restart the lobby caption screen (display app only)", "params": { "labels": [ "org.waterschurch.lobby-captions-display" ] }, "run": "launchctl kickstart -k gui/$(id -u)/org.waterschurch.lobby-captions-display || launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/org.waterschurch.lobby-captions-display.plist", "short": "CAPTION SCREEN", "template": "helpers" }, "captions": { "kind": "local", "label": "restart lobby captions (server and display)", "params": { "labels": [ "org.waterschurch.lobby-captions", "org.waterschurch.lobby-captions-display" ] }, "run": "s=0; { launchctl kickstart -k gui/$(id -u)/org.waterschurch.lobby-captions || launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/org.waterschurch.lobby-captions.plist; } || s=1; { launchctl kickstart -k gui/$(id -u)/org.waterschurch.lobby-captions-display || launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/org.waterschurch.lobby-captions-display.plist; } || s=1; exit $s", "short": "CAPTIONS", "template": "helpers" }, "digico_relay": { "kind": "local", "label": "restart the DiGiCo relay (Companion and the tablets to the FOH console)", "params": { "labels": [ "org.waterschurch.digico-relay" ] }, "run": "launchctl kickstart -k gui/$(id -u)/org.waterschurch.digico-relay || launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/org.waterschurch.digico-relay.plist", "short": "DIGICO", "template": "helpers" }, "dvs_ingest": { "kind": "local", "label": "restart Dante Virtual Soundcard on NA Ingest, then ProdCom (it keeps a dead DVS input otherwise)", "params": { "host": "ingest", "then_app": "/Applications/ProdCom.app", "then_process": "ProdCom" }, "run": "sudo -n /usr/local/sbin/status-panel-dvs-start && open -g -a 'Dante Virtual Soundcard' || exit 1; sleep 5; pkill -TERM -x ProdCom; i=0; while pgrep -xq ProdCom && [ $i -lt 20 ]; do sleep 0.5; i=$((i+1)); done; pgrep -xq ProdCom && pkill -KILL -x ProdCom; sleep 1; open -g /Applications/ProdCom.app", "short": "DVS", "template": "dvs" }, "dvs_prop": { "host": "prop", "kind": "ssh", "label": "restart Dante Virtual Soundcard on the ProPresenter Mac (its engine restarts; audio to and from that Mac drops for 5-10 s)", "params": { "host": "prop" }, "run": "sudo -n /usr/local/sbin/status-panel-dvs-start && open -g -a 'Dante Virtual Soundcard'", "short": "DVS", "template": "dvs" }, "dvs_tracks": { "host": "tracks", "kind": "ssh", "label": "restart Dante Virtual Soundcard on the Tracks Mac (its engine restarts; audio to and from that Mac drops for 5-10 s)", "params": { "host": "tracks" }, "run": "sudo -n /usr/local/sbin/status-panel-dvs-start && open -g -a 'Dante Virtual Soundcard'", "short": "DVS", "template": "dvs" }, "dvs_translation": { "host": "translation", "kind": "ssh", "label": "restart Dante Virtual Soundcard on NA Translation (its engine restarts; audio to and from that Mac drops for 5-10 s)", "params": { "host": "translation" }, "run": "sudo -n /usr/local/sbin/status-panel-dvs-start && open -g -a 'Dante Virtual Soundcard'", "short": "DVS", "template": "dvs" }, "hyperdeck": { "hung_note": "STILL OFFLINE\nHOLD AGAIN", "kind": "hyperdeck", "label": "turn Companion's connection to that HyperDeck off and on (what gets a restarted deck green); never reboots the deck", "params": {}, "short": "HYPERDECK", "template": "hyperdeck", "verify_seconds": 15 }, "midi_reconnect": { "kind": "midi_connect", "label": "reconnect the peer to the network MIDI session it dropped out of (like Connect in Audio MIDI Setup); the address is where it was last seen, else the check's \"address\"", "params": {}, "short": "RECONNECT", "template": "midi_connect" }, "obs": { "host": "livestream", "kind": "ssh", "label": "start OBS on the LiveStream PC if it is not running (wakes the PC if it is off), then reconnect Companion", "params": { "exe": "obs64.exe", "host": "livestream", "task": "Start OBS" }, "reconnect": true, "run": "tasklist /NH /FI \"IMAGENAME eq obs64.exe\" | find /I \"obs64.exe\" >nul || (schtasks /Run /TN \"\\StatusPanel\\Start OBS\" >nul && ping -n 9 127.0.0.1 >nul && tasklist /NH /FI \"IMAGENAME eq obs64.exe\" | find /I \"obs64.exe\" >nul)", "short": "OBS", "template": "win_start" }, "prodcom": { "kind": "local", "label": "restart ProdCom (transcription; lobby captions blank for 5-15 s)", "params": { "app": "/Applications/ProdCom.app", "background": true, "force": true, "host": "ingest", "process": "ProdCom", "wait_seconds": 10 }, "run": "pkill -TERM -x ProdCom; i=0; while pgrep -xq ProdCom && [ $i -lt 20 ]; do sleep 0.5; i=$((i+1)); done; pgrep -xq ProdCom && pkill -KILL -x ProdCom; sleep 1; open -g /Applications/ProdCom.app", "short": "PRODCOM", "template": "mac_restart" }, "proddash": { "kind": "local", "label": "restart ProdDash (its launcher stops its server cleanly)", "params": { "app": "/Applications/ProdDash.app", "background": true, "force": false, "host": "ingest", "process": "ProdDash", "wait_seconds": 10 }, "run": "pkill -TERM -x ProdDash; i=0; while pgrep -xq ProdDash && [ $i -lt 20 ]; do sleep 0.5; i=$((i+1)); done; open -g /Applications/ProdDash.app", "short": "PRODDASH", "template": "mac_restart" }, "propresenter": { "host": "prop", "kind": "ssh", "label": "restart ProPresenter (newest installed)", "params": { "app": "$APP", "force": true, "host": "prop", "newest_of": "/Applications/ProPresenter*.app", "process": "ProPresenter", "wait_seconds": 10 }, "run": "APP=$(ls -d /Applications/ProPresenter*.app | sort -V | tail -1); pkill -TERM -x ProPresenter; i=0; while pgrep -xq ProPresenter && [ $i -lt 20 ]; do sleep 0.5; i=$((i+1)); done; pgrep -xq ProPresenter && pkill -KILL -x ProPresenter; sleep 1; open \"$APP\"", "short": "PROPRES", "template": "mac_restart" }, "ready_copy_tracks": { "action": "copy_tracks", "kind": "ready", "label": "copy this weekend's Ableton project to the locations that do not have it yet", "never_auto": true, "short": "COPY" }, "ready_led_cross": { "action": "led_cross", "kind": "ready", "label": "put Resolume back on the Service deck, then look at the columns again", "short": "CROSS" }, "ready_lineup": { "action": "lineup_sync", "kind": "ready", "label": "re-sync the Band Lineup board from Planning Center", "short": "LINEUP" }, "ready_ltc": { "action": "ltc_to_pco", "kind": "ready", "label": "write each song's timecode from the tracks into its LTC note in Planning Center", "short": "LTC" }, "ready_recheck": { "action": "recheck", "kind": "ready", "label": "look at this weekend's checklist again now", "short": "CHECK" }, "rtpmidi_start": { "host": "lighting", "kind": "ssh", "label": "start rtpMIDI on the Lighting PC if it is not running (service, then tray app). A running rtpMIDI is never restarted: that drops every session.", "params": { "exe": "rtpMIDI.exe", "host": "lighting", "service": "rtpMIDIService", "task": "Start rtpMIDI" }, "run": "(sc query rtpMIDIService | find \"RUNNING\" >nul || net start rtpMIDIService) && (tasklist /NH /FI \"IMAGENAME eq rtpMIDI.exe\" | find /I \"rtpMIDI.exe\" >nul || schtasks /Run /TN \"\\StatusPanel\\Start rtpMIDI\")", "short": "RTPMIDI", "template": "win_service" }, "solo_afl": { "host": "studiob", "kind": "ssh", "label": "set Pro Tools on the Studio B Mac Studio back to Solo Mode AFL + Latch (clicks Options > Solo Mode)", "params": { "host": "studiob" }, "run": "touch \"$HOME/Library/Application Support/status-panel/solo-mode.fix\"; sleep 3; ! grep -q '\"bad\":true' \"$HOME/Library/Application Support/status-panel/solo-mode.json\"", "short": "PT SOLO", "template": "solo_afl" }, "spotify_play": { "kind": "spotify", "label": "play the Christian EDM 2026 playlist in Spotify on NA Ingest (opens Spotify if it is closed)", "params": {}, "short": "SPOTIFY", "template": "spotify" }, "stream_foh_backup": { "col": 5, "failover": true, "kind": "companion_press", "label": "press the FOH Backup button in Companion (page 4, row 0, column 5): the stream audio comes from the FOH DiGiCo (DMI-2 63/64) and the X32 takes snippet 8", "page": 4, "params": { "button": "FOH Backup", "col": 5, "page": 4, "row": 0 }, "row": 0, "short": "FOH BACKUP", "template": "companion_press", "undo": "stream_studio_b" }, "stream_studio_b": { "col": 6, "kind": "companion_press", "label": "press the Studio B button in Companion (page 4, row 0, column 6): the stream audio comes from Studio B (RedNet TNX 63/64) and the X32 takes snippet 1", "page": 4, "params": { "button": "Studio B", "col": 6, "page": 4, "row": 0 }, "row": 0, "short": "STUDIO B", "template": "companion_press" }, "tascam_power": { "conn": "tascam", "kind": "local", "label": "power-cycle the Tascam through its smart plug when its control port does not answer (off 45 s, on, wait for it to come back), then reconnect Companion; its Dante card only comes back from the unit's own power button; never while a HyperDeck is recording", "params": { "address": "10.1.11.74", "dante": "STUDIO-B-Tascam", "outlet": "tascam", "wait_seconds": 45 }, "reconnect": true, "run": "/usr/bin/python3 \"$HOME/Library/Application Support/status-panel/settings/outlet.py\" cycle tascam --ping 10.1.11.74 --dante STUDIO-B-Tascam --wait 45", "short": "TASCAM PWR", "template": "outlet_cycle", "timeout": 300 }, "tascam_reconnect": { "conn": "tascam", "hung_note": "HUNG - POWER\nCYCLE IT", "kind": "reconnect", "label": "reconnect Companion to the Tascam; if it still does not answer but pings, its control port has hung: power-cycle it at the rack", "params": {}, "short": "TASCAM", "template": "reconnect", "verify_seconds": 20 }, "translate": { "host": "translation", "kind": "ssh", "label": "start Church Translate if it is not running", "params": { "app": "Church Translate", "host": "translation", "process": "Church Translate" }, "run": "pgrep -xq 'Church Translate' || open -a 'Church Translate'", "short": "TRANSLATE", "template": "mac_start" }, "translate_restart": { "host": "translation", "kind": "ssh", "label": "restart Church Translate on NA Translation (and its translation server)", "params": { "app": "Church Translate", "force": true, "host": "translation", "process": "Church Translate", "stop_children": true, "wait_seconds": 15 }, "run": "pg=$(ps -o pgid= -p \"$(pgrep -x 'Church Translate' | head -1)\" 2>/dev/null | tr -d ' '); pkill -TERM -x 'Church Translate'; i=0; while pgrep -xq 'Church Translate' && [ $i -lt 30 ]; do sleep 0.5; i=$((i+1)); done; pgrep -xq 'Church Translate' && pkill -KILL -x 'Church Translate'; [ -n \"$pg\" ] && [ \"$pg\" != \"$(ps -o pgid= -p $$ | tr -d ' ')\" ] && kill -KILL -- -\"$pg\" 2>/dev/null; sleep 1; open -a 'Church Translate'", "short": "TRANSLATE", "template": "mac_restart", "timeout": 60 }, "vista": { "host": "lighting", "kind": "ssh", "label": "start Vista on the Lighting PC if it is not running (a running Vista is never closed)", "params": { "exe": "Vista.exe", "host": "lighting", "task": "Start Vista" }, "run": "tasklist /NH /FI \"IMAGENAME eq Vista.exe\" | find /I \"Vista.exe\" >nul || (schtasks /Run /TN \"\\StatusPanel\\Start Vista\" >nul && ping -n 9 127.0.0.1 >nul && tasklist /NH /FI \"IMAGENAME eq Vista.exe\" | find /I \"Vista.exe\" >nul)", "short": "VISTA", "template": "win_start" } }, "flap": { "count": 3, "window_seconds": 600 }, "gear": {}, "hosts": { "bibletv": { "manual_done": { "wifi_power": { "by": "Chris", "on": "2026-10-11" } }, "name": "Bible TV PC", "notes": "Wi-Fi only; Ethernet recommended. Wi-Fi power saving is off.", "os": "windows", "pingable": false, "role": "the Bible app on the sanctuary TV", "runs": [ { "kind": "sshd" }, { "at_logon": true, "exe": "Bible App.exe", "kind": "task", "name": "Start BibleApp" }, { "kind": "web", "name": "the Bible app's web page", "url": "http://10.6.7.13:8080/" } ], "ssh": "media@10.6.7.13" }, "ingest": { "name": "NA Ingest", "networks": [ { "iface": "en0", "use": "LAN" }, { "iface": "en1", "use": "LAN" }, { "iface": "en17", "use": "Dante" }, { "iface": "en20", "use": "Netgear management" } ], "os": "mac", "role": "the watchdog, Companion, the settings page, lobby captions, transcription", "runs": [ { "kind": "launchagent", "label": "org.waterschurch.status-panel", "name": "the watchdog" }, { "kind": "launchagent", "label": "org.waterschurch.status-settings", "name": "the settings page" }, { "http": "http://127.0.0.1:8000/api/connections", "kind": "app", "name": "Companion 5.0.7", "process": "Companion" }, { "kind": "app", "name": "Companion Satellite", "process": "Companion Satellite", "watched": false }, { "kind": "launchagent", "label": "org.waterschurch.resi-propresenter", "name": "the Resi bridge" }, { "kind": "launchagent", "label": "org.waterschurch.lobby-captions", "name": "lobby captions" }, { "kind": "launchagent", "label": "org.waterschurch.lobby-captions-display", "name": "the caption screen" }, { "http": "http://127.0.0.1:24480/api/v1/ping", "kind": "app", "name": "ProdCom (transcription)", "process": "ProdCom" }, { "http": "http://127.0.0.1:24500/", "kind": "app", "name": "ProdDash", "process": "ProdDash" }, { "kind": "app", "name": "Spotify", "process": "Spotify" }, { "kind": "app", "name": "ATEM Software Control", "process": "ATEM Software Control" }, { "dante_name": "STUDIO-A-Ingest", "kind": "daemon", "name": "Dante Virtual Soundcard", "process": "DanteVirtualSoundcard" }, { "kind": "helper_dvs", "name": "the DVS helper" }, { "kind": "folder", "name": "Google Drive (the saved switcher files)", "path": "~/Library/CloudStorage/GoogleDrive-media@waterschurch.org/Shared drives/Waters Creative/Production Team/Backup/NA/ATEM" }, { "kind": "launchagent", "label": "org.waterschurch.checklist-build-runner", "name": "Gitea runner (not the panel)", "watched": false }, { "kind": "launchagent", "label": "org.waterschurch.checklist-drive-backup", "name": "checklist backup (not the panel)", "watched": false }, { "kind": "launchagent", "label": "org.waterschurch.checklist-weekly-health", "name": "checklist health (not the panel)", "watched": false }, { "kind": "disabled", "label": "org.waterschurch.translate", "name": "Church Translate (must NOT run here)" } ], "self": true }, "lighting": { "manual_done": { "public_profile": { "by": "Chris", "on": "2026-10-08" }, "vista_autoload": { "by": "Chris", "on": "2026-10-08" } }, "name": "Lighting PC", "notes": "Keep the network profile on Public: rtpMIDI's Bonjour rules only allow Public.", "os": "windows", "pingable": false, "role": "Vista, Resolume Arena, rtpMIDI", "runs": [ { "kind": "sshd" }, { "exe": "Vista.exe", "kind": "task", "name": "Start Vista" }, { "exe": "Arena.exe", "kind": "task", "name": "Start Arena" }, { "exe": "rtpMIDI.exe", "kind": "task", "name": "Start rtpMIDI" }, { "kind": "service", "name": "rtpMIDIService" }, { "kind": "midi_session", "name": "Lighting PC", "peer_of": "NA Ingest" }, { "kind": "artnet", "name": "Vista Art-Net", "source": "10.1.10.206" } ], "ssh": "media@10.1.10.206" }, "livestream": { "mac": "6c:24:08:d7:fb:57", "manual_done": { "bios_wol": { "by": "Chris", "on": "2026-10-08" } }, "name": "LiveStream PC", "os": "windows", "role": "OBS (YouTube)", "runs": [ { "kind": "sshd" }, { "args": "--disable-shutdown-check", "elevated": true, "exe": "obs64.exe", "kind": "task", "name": "Start OBS" } ], "ssh": "media@10.1.9.126", "wake_broadcast": "10.1.255.255" }, "prop": { "name": "ProPresenter Mac", "os": "mac", "role": "ProPresenter, its stage and Prop TV pages, Dante sound card", "runs": [ { "kind": "sshd" }, { "http": "http://10.1.14.225:1025/", "kind": "app", "name": "ProPresenter (newest installed)", "process": "ProPresenter" }, { "dante_name": "NA-ProPresenter-Mac", "kind": "daemon", "name": "Dante Virtual Soundcard", "process": "DanteVirtualSoundcard" }, { "kind": "helper_dvs", "name": "the DVS helper" }, { "kind": "midi_session", "name": "NA ProP" } ], "ssh": "napropresenter@10.1.14.225" }, "studiob": { "name": "Studio B Mac Studio", "os": "mac", "role": "Pro Tools", "runs": [ { "kind": "sshd" }, { "kind": "app", "name": "Pro Tools", "process": "Pro Tools" }, { "kind": "helper_solo", "label": "org.waterschurch.status-panel.solo-mode", "name": "the Pro Tools solo-mode helper" }, { "kind": "midi_session", "name": "Studio B Mac Studio", "peer_of": "NA Tracks" } ], "ssh": "studiob@10.1.13.175" }, "tracks": { "name": "Tracks Mac", "os": "mac", "role": "Ableton (tracks and FX lighting cues), Dante sound card", "runs": [ { "kind": "sshd" }, { "kind": "app", "name": "Ableton Live 11 Suite", "process": "Live" }, { "dante_name": "NA-Tracks", "kind": "daemon", "name": "Dante Virtual Soundcard", "process": "DanteVirtualSoundcard" }, { "kind": "helper_dvs", "name": "the DVS helper" }, { "kind": "midi_session", "name": "NA Tracks" } ], "ssh": "waterschurchmedia@10.1.3.227" }, "translation": { "name": "NA Translation", "os": "mac", "role": "Church Translate, Dante sound card", "runs": [ { "kind": "sshd" }, { "kind": "app", "name": "Church Translate", "process": "Church Translate" }, { "kind": "launchagent", "label": "org.waterschurch.translate.engine", "name": "the translation engine", "watched": false }, { "dante_name": "NA-Translation", "kind": "daemon", "name": "Dante Virtual Soundcard", "process": "DanteVirtualSoundcard" }, { "kind": "helper_dvs", "name": "the DVS helper" } ], "ssh": "studio@10.1.7.39" } }, "nav_hold_ms": 1000, "nav_keys": [ "pagenum" ], "nav_tap_page": 1, "network": { "burst_connections": 4, "burst_groups": 3, "burst_window_seconds": 10, "gateway": "10.1.0.1", "interface": "en0", "remember_seconds": 300 }, "page": 19, "page_hold_ms": 2000, "page_name": "19\\nStatus", "ready": { "due": [ { "days": [ "tue" ], "end": "22:00", "start": "14:00" }, { "days": [ "wed" ], "end": "19:00", "start": "09:00" }, { "days": [ "sun" ], "end": "14:00", "start": "05:00" } ], "folder_format": "{date} {loc} Project", "interval_seconds": 120, "lighting_track": "LIGHTING CUES", "lineup_skip_positions": [], "lineup_teams": [ "Band", "Communication" ], "lineup_url": "http://127.0.0.1:24500/api/modules/band-lineup", "locations": [ "AB", "SC" ], "ltc_note": "LTC", "ltc_track": "LTC", "mic_positions": { "MC": "MC", "Speaker": "TIM" }, "pco_credentials": "~/Library/Application Support/ProdDash/modules.json", "pco_module": "pco-plan", "pco_service_type": "275974", "projects": "~/Library/CloudStorage/GoogleDrive-media@waterschurch.org/Shared drives/Waters Creative/Ableton/Projects", "prop_bundle_folder": "~/Library/CloudStorage/GoogleDrive-media@waterschurch.org/Shared drives/Location Assets/ProPresenter", "prop_bundle_host": "prop", "prop_bundle_pattern": "*.probundle", "prop_lists": [ { "kind": "count", "match": "announcement", "short": "MC" }, { "kind": "names", "match": "baptism", "short": "BAPTISM" }, { "kind": "names", "match": "dedication", "short": "DEDICATION" } ], "prop_url": "http://10.1.14.225:1025", "remote_timeout": 90, "reset_day": "mon", "resolume_deck": "Service", "prop_host": "prop", "resolume_url": "http://10.1.10.206:8080", "site_folder": "NA", "skip_songs": [], "tracks_host": "tracks", "vocal_positions": [ "Vocalist", "[Leader]" ] }, "ready_page": { "back_pos": [ 3, 0 ], "keys": [ { "checks": [ { "fix": "ready_recheck", "item": "tracks", "type": "ready" } ], "id": "rd_tracks", "label": "TRACKS", "pos": [ 0, 1 ] }, { "checks": [ { "fix": "ready_recheck", "item": "mix_foh", "type": "ready" } ], "id": "rd_foh", "label": "FOH MIX", "pos": [ 0, 2 ] }, { "checks": [ { "item": "mix_boh", "type": "ready_manual" } ], "id": "rd_boh", "label": "BOH MIX", "pos": [ 0, 3 ] }, { "checks": [ { "fix": "ready_recheck", "item": "lights", "type": "ready" } ], "id": "rd_lights", "label": "LIGHTS", "pos": [ 0, 4 ] }, { "checks": [ { "address": "10.1.10.206:5004", "fix": "midi_reconnect", "host": "tracks", "peer": "Lighting PC", "session": "NA Tracks", "tag": "FX LIGHTS", "type": "midi_peer" }, { "address": "10.1.13.140:5004", "fix": "midi_reconnect", "host": "tracks", "peer": "SuperRack-LiveBox", "session": "NA Tracks", "tag": "TRK LIVEBOX", "type": "midi_peer" }, { "address": "\tStudio B Mac Studio\tlocal.", "fix": "midi_reconnect", "host": "tracks", "peer": "Studio B Mac Studio", "session": "NA Tracks", "tag": "TRK STUDIO B", "type": "midi_peer" }, { "cmd": "pgrep -xq Live", "fix": "ableton", "host": "tracks", "msg": "ABLETON NOT RUNNING", "params": { "host": "tracks", "process": "Live" }, "template": "mac_program", "type": "remote" } ], "id": "rd_midi", "label": "MIDI", "pos": [ 0, 5 ] }, { "checks": [ { "fix": "ready_recheck", "item": "prop", "type": "ready" } ], "id": "rd_prop", "label": "PROP", "pos": [ 1, 1 ] }, { "checks": [ { "fix": "ready_ltc", "item": "timecode", "type": "ready" } ], "id": "rd_timecode", "label": "TIMECODE", "pos": [ 1, 2 ] }, { "checks": [ { "fix": "ready_recheck", "item": "backgrounds", "type": "ready" } ], "id": "rd_bg", "label": "BKGDS", "pos": [ 1, 3 ] }, { "checks": [ { "fix": "ready_led_cross", "item": "led_cross", "type": "ready" } ], "id": "rd_cross", "label": "LED CROSS", "pos": [ 1, 4 ] }, { "checks": [ { "fix": "ready_lineup", "item": "lineup", "type": "ready" } ], "id": "rd_lineup", "label": "LINEUP TV", "pos": [ 2, 1 ] }, { "checks": [ { "fix": "ready_copy_tracks", "item": "track_bundle", "type": "ready" } ], "id": "rd_trk_out", "label": "TRACKS OUT", "pos": [ 3, 1 ] }, { "checks": [ { "fix": "ready_recheck", "item": "prop_bundle", "type": "ready" } ], "id": "rd_prop_out", "label": "PROP OUT", "pos": [ 3, 2 ] }, { "id": "rd_all", "kind": "ready", "label": "READY", "pos": [ 3, 7 ] } ], "page": 24, "page_name": "24\\nReady" }, "restart_page": { "back_pos": [ 2, 6 ], "jump_pos": [ 2, 6 ], "keys": [ { "fix": "dvs_prop", "id": "rs_dvs_prop", "label": "DVS PROP", "pos": [ 0, 1 ] }, { "fix": "dvs_tracks", "id": "rs_dvs_tracks", "label": "DVS TRACKS", "pos": [ 0, 2 ] }, { "fix": "dvs_translation", "id": "rs_dvs_transl", "label": "DVS TRANSL", "pos": [ 0, 3 ] }, { "fix": "dvs_ingest", "id": "rs_dvs_ingest", "label": "DVS INGEST", "pos": [ 0, 4 ] }, { "fix": "propresenter", "id": "rs_propres", "label": "PROPRESENTER", "pos": [ 1, 1 ] }, { "fix": "ableton_restart", "id": "rs_ableton", "label": "ABLETON", "pos": [ 1, 2 ], "watch": [ "ableton", "conn:ableton" ] }, { "fix": "translate_restart", "id": "rs_translate", "label": "TRANSLATE", "pos": [ 1, 3 ], "watch": [ "translate" ] }, { "fix": "spotify_play", "id": "rs_spotify", "label": "SPOTIFY", "pos": [ 1, 4 ] }, { "fix": "prodcom", "id": "rs_prodcom", "label": "PRODCOM", "pos": [ 2, 1 ] }, { "fix": "proddash", "id": "rs_proddash", "label": "PRODDASH", "pos": [ 2, 2 ] }, { "fix": "captions", "id": "rs_captions", "label": "CAPTIONS", "pos": [ 2, 3 ], "watch": [ "caption_screen" ] }, { "fix": "bridge", "id": "rs_bridge", "label": "BRIDGE", "pos": [ 2, 4 ] }, { "fix": "tascam_reconnect", "id": "rs_tascam", "label": "TASCAM", "pos": [ 3, 1 ], "watch": [ "conn:tascam" ] } ], "page": 20, "page_name": "20\\nRestart" }, "service_windows": [ { "days": [ "mon", "tue", "wed", "thu", "fri", "sat", "sun" ], "end": "23:59", "start": "00:00" } ], "site": { "editing_code": "7381", "id": "na", "ingest_hostname": "na-ingest.local", "ingest_ips": [ "10.1.1.1", "10.6.3.222" ], "ingest_name": "NA Ingest", "live_services": [], "name": "North Attleboro" }, "spotify": { "name": "Christian EDM 2026", "open_wait": 8, "play_wait": 3, "playlist": "spotify:playlist:2uTpJVYQLFnKF1WnSOuco8" }, "ssh_key": "~/.ssh/id_status_panel", "tiles": [ { "id": "all", "kind": "master", "label": "ALL", "pos": [ 0, 1 ] }, { "id": "rec", "label": "REC", "members": [ "hd1", "hd2", "hd3", "hd4", "hd5", "hd6", "tascam" ], "pos": [ 0, 2 ] }, { "id": "audio", "label": "AUDIO", "members": [ "x32", "digico", "dante", "stb_audio" ], "pos": [ 0, 3 ] }, { "id": "rf", "label": "RF", "members": [ "axient1", "axient2", "ulxd", "psm1", "psm2", "psm3" ], "pos": [ 0, 4 ] }, { "id": "show", "label": "SHOW", "members": [ "midi", "apps", "vista", "spotify" ], "pos": [ 0, 5 ] }, { "id": "video", "label": "VIDEO", "members": [ "atem", "led", "arena" ], "pos": [ 0, 6 ] }, { "id": "stream", "label": "STREAM", "members": [ "obs", "resi" ], "pos": [ 0, 7 ] }, { "checks": [ { "conn": "HyperDeck_1", "fix": { "conn": "hyperdeck" }, "type": "hyperdeck" } ], "hold_always": "hyperdeck", "id": "hd1", "label": "HD1", "pos": [ 1, 1 ] }, { "checks": [ { "conn": "HyperDeck_2", "fix": { "conn": "hyperdeck" }, "optional": true, "type": "hyperdeck" } ], "hold_always": "hyperdeck", "id": "hd2", "label": "HD2", "pos": [ 1, 2 ] }, { "checks": [ { "conn": "HyperDeck_3", "fix": { "conn": "hyperdeck" }, "type": "hyperdeck" } ], "hold_always": "hyperdeck", "id": "hd3", "label": "HD3", "pos": [ 1, 3 ] }, { "checks": [ { "conn": "HyperDeck_4", "fix": { "conn": "hyperdeck" }, "optional": true, "type": "hyperdeck" } ], "hold_always": "hyperdeck", "id": "hd4", "label": "HD4", "pos": [ 1, 4 ] }, { "checks": [ { "conn": "HyperDeck_5", "fix": { "conn": "hyperdeck" }, "type": "hyperdeck" } ], "hold_always": "hyperdeck", "id": "hd5", "label": "HD5", "pos": [ 1, 5 ] }, { "checks": [ { "conn": "HyperDeck_6", "fix": { "conn": "hyperdeck" }, "type": "hyperdeck" } ], "hold_always": "hyperdeck", "id": "hd6", "label": "HD6", "pos": [ 1, 6 ] }, { "checks": [ { "conn": "tascam", "fix": "tascam_reconnect", "type": "tascam" }, { "conn": "tascam", "fix": "tascam_power", "host": "10.1.11.74", "name": "TASCAM", "type": "ping" } ], "hold_always": "tascam_reconnect", "id": "tascam", "label": "TASCAM", "pos": [ 1, 7 ] }, { "checks": [ { "conn": "x32", "type": "conn" } ], "id": "x32", "label": "X32", "pos": [ 2, 1 ] }, { "checks": [ { "conn": "DiGiCo_FOH", "tag": "DIGICO", "type": "conn" }, { "fix": "digico_relay", "label": "org.waterschurch.digico-relay", "name": "RELAY", "type": "launchd" }, { "host": "10.1.60.100", "name": "DIGICO", "type": "ping" } ], "id": "digico", "label": "DIGICO" }, { "checks": [ { "debounce_seconds": 1, "failures": 2, "fix": "stream_foh_backup", "host": "10.1.13.175", "interval_seconds": 1, "name": "STUDIO B", "type": "ping" }, { "cmd": "pgrep -xq 'Pro Tools'", "debounce_seconds": 1, "fix": "stream_foh_backup", "host": "studiob", "interval_seconds": 2, "msg": "PRO TOOLS NOT RUNNING", "params": { "host": "studiob", "process": "Pro Tools" }, "template": "mac_program", "type": "remote" }, { "conn": "audinate-dantecontroller", "devices": { "STUDIO-B-RedNet-TNX": "STB TNX" }, "fix": { "STUDIO-B-RedNet-TNX": "stream_foh_backup" }, "type": "dante" } ], "id": "stb_audio", "label": "STB AUDIO" }, { "checks": [ { "conn": "audinate-dantecontroller", "devices": { "BOH-AD4Q-A": "AD4Q-A", "BOH-AD4Q-B": "AD4Q-B", "BOH-DQ-Rack": "DQ RACK", "BOH-WING": "WING", "FOH-DiGiCo-DMI-1": "DMI-1", "FOH-DiGiCo-DMI-2": "DMI-2", "FOH-SuperRack-LiveBox": "SUPERRACK", "NA-ProPresenter-Mac": "PROP MAC", "NA-Tracks": "TRACKS", "NA-Translation": "TRANSL", "STUDIO-A-Ingest": "INGEST", "STUDIO-A-Resi-AJA-SDI": "RESI AJA", "STUDIO-A-X32": "STA X32", "STUDIO-B-MON": "STB MON", "STUDIO-B-RedNet-TNX": "STB TNX", "STUDIO-B-SOLO-MON": "STB SOLO", "STUDIO-B-TB": "STB TB", "STUDIO-B-TB-MON": "STB TB MON", "STUDIO-B-Tascam": "STB TASCAM" }, "fix": { "*": "dante-auto", "NA-ProPresenter-Mac": "dvs_prop", "NA-Tracks": "dvs_tracks", "NA-Translation": "dvs_translation", "STUDIO-A-Ingest": "dvs_ingest" }, "type": "dante" } ], "id": "dante", "label": "DANTE", "pos": [ 2, 2 ] }, { "checks": [ { "address": "10.1.10.206:5004", "fix": "midi_reconnect", "peer": "Lighting PC", "session": "NA Ingest", "tag": "LIGHT PC", "type": "midi_peer" }, { "address": "10.1.13.140:5004", "fix": "midi_reconnect", "peer": "SuperRack-LiveBox", "session": "NA Ingest", "tag": "SUPERRACK", "type": "midi_peer" }, { "address": "10.1.10.206:5004", "fix": "midi_reconnect", "host": "tracks", "peer": "Lighting PC", "session": "NA Tracks", "tag": "FX LIGHTS", "type": "midi_peer" }, { "address": "10.1.13.140:5004", "fix": "midi_reconnect", "host": "tracks", "peer": "SuperRack-LiveBox", "session": "NA Tracks", "tag": "TRK LIVEBOX", "type": "midi_peer" }, { "address": "\tStudio B Mac Studio\tlocal.", "fix": "midi_reconnect", "host": "tracks", "peer": "Studio B Mac Studio", "session": "NA Tracks", "tag": "TRK STUDIO B", "type": "midi_peer" }, { "address": "10.1.10.206:5004", "fix": "midi_reconnect", "host": "prop", "peer": "Lighting PC", "session": "NA ProP", "tag": "PROP LIGHTS", "type": "midi_peer" }, { "conn": "lighting-midi", "tag": "COMPANION MIDI", "type": "conn" }, { "fix": "rtpmidi_start", "instance": "Lighting PC", "name": "LIGHT PC MIDI", "type": "mdns" }, { "instance": "NA Tracks", "name": "TRACKS MIDI", "type": "mdns" }, { "name": "TRACKS IN", "source": "Network NA Ingest Listen", "type": "midi_rx" } ], "id": "midi", "label": "MIDI", "pos": [ 2, 3 ] }, { "checks": [ { "fix": "spotify_play", "type": "spotify" } ], "hold_always": "spotify_play", "id": "spotify", "label": "SPOTIFY" }, { "id": "ready", "kind": "ready", "label": "READY", "pos": [ 2, 7 ] }, { "checks": [ { "fix": "vista", "max_silence_seconds": 5, "source": "10.1.10.206", "type": "artnet" } ], "id": "vista", "label": "VISTA", "pos": [ 2, 5 ] }, { "checks": [ { "conn": "Propresenter-API", "fix": "propresenter", "ignore_warning": true, "tag": "PROPRES", "type": "conn" }, { "cmd": "pgrep -xq ProPresenter", "fix": "propresenter", "host": "prop", "msg": "PROPRES NOT RUNNING", "params": { "host": "prop", "process": "ProPresenter" }, "template": "mac_program", "type": "remote" }, { "conn": "ableton", "tag": "ABLETON", "type": "conn" }, { "cmd": "pgrep -xq Live", "fix": "ableton", "host": "tracks", "msg": "ABLETON NOT RUNNING", "params": { "host": "tracks", "process": "Live" }, "template": "mac_program", "type": "remote" }, { "cmd": "pgrep -xq 'Church Translate'", "fix": "translate", "host": "translation", "msg": "TRANSLATE NOT RUNNING", "params": { "host": "translation", "process": "Church Translate" }, "template": "mac_program", "type": "remote" }, { "host": "10.1.3.227", "name": "TRACKS MAC", "type": "ping" }, { "fix": "propresenter", "interval_seconds": 5, "msg": "PROP TV DOWN", "type": "http", "url": "http://10.1.14.225:1025/" }, { "fix": "bibleapp", "interval_seconds": 5, "msg": "BIBLE APP DOWN", "type": "http", "url": "http://10.6.7.13:8080/" }, { "conn": "BibleTV", "tag": "BIBLE OSC", "type": "conn" }, { "cmd": "! grep -q '\"bad\":true' \"$HOME/Library/Application Support/status-panel/solo-mode.json\"", "fix": "solo_afl", "host": "studiob", "msg": "PT SOLO NOT AFL", "params": { "host": "studiob" }, "template": "helper_flag", "type": "remote" }, { "cmd": "f=\"$HOME/Library/Application Support/status-panel/solo-mode.json\"; [ $(( $(date +%s) - $(stat -f %m \"$f\") )) -lt 20 ] && grep -q '\"trusted\":true' \"$f\"", "host": "studiob", "msg": "PT SOLO CHECK OFF", "params": { "host": "studiob" }, "template": "helper_fresh", "type": "remote" } ], "id": "apps", "label": "APPS", "pos": [ 2, 4 ] }, { "id": "service", "kind": "service", "label": "ALARMS", "pos": [ 3, 0 ] }, { "checks": [ { "conn": "ATEM", "type": "conn" }, { "fix": "atem_audio", "msg": "ATEM AUDIO WRONG", "part": "audio", "type": "atem" }, { "fix": "atem_camera", "msg": "ATEM CAMERA WRONG", "part": "camera", "type": "atem" }, { "domain": "com.blackmagic-design.ATEM Software Control", "fix": "atem_midi", "key": "midiEnabled", "msg": "ATEM SW MIDI ON", "type": "pref", "want": "0" } ], "id": "atem", "label": "ATEM", "pos": [ 3, 1 ] }, { "checks": [ { "conn": "OBS-Youtube", "fix": "obs", "service_only": true, "type": "conn" } ], "id": "obs", "label": "OBS", "pos": [ 3, 2 ] }, { "checks": [ { "conn": "RESI_Decoder", "tag": "DECODER", "type": "conn" }, { "host": "10.1.10.203", "name": "DECODER", "type": "ping" }, { "host": "10.1.10.202", "name": "ENCODER", "type": "ping" }, { "interval_seconds": 10, "msg": "ENCODER WEB DOWN", "type": "http", "url": "http://10.1.10.202/" }, { "conn": "resi-studio-cues", "type": "conn" }, { "name": "CLOUD", "type": "http", "url": "https://central.resi.io/" } ], "id": "resi", "label": "RESI", "pos": [ 3, 3 ] }, { "id": "net", "kind": "network", "label": "NET", "pos": [ 3, 4 ] }, { "checks": [ { "fix": "bridge", "label": "org.waterschurch.resi-propresenter", "name": "BRIDGE", "type": "launchd" }, { "fix": "captions", "label": "org.waterschurch.lobby-captions", "name": "CAPTIONS", "type": "launchd" }, { "fix": "caption_screen", "label": "org.waterschurch.lobby-captions-display", "name": "CAPTION SCREEN", "type": "launchd" }, { "fix": "prodcom", "interval_seconds": 5, "msg": "PRODCOM DOWN", "type": "http", "url": "http://127.0.0.1:24480/api/v1/ping" }, { "fix": "proddash", "match": "/Applications/ProdDash.app/Contents/MacOS/ProdDash", "name": "PRODDASH", "type": "process" }, { "fix": "proddash", "interval_seconds": 10, "msg": "PRODDASH DOWN", "type": "http", "url": "http://127.0.0.1:24500/" }, { "err_gb": 8, "path": "/", "type": "disk", "warn_gb": 25 } ], "id": "ingest", "label": "INGEST", "pos": [ 3, 5 ] }, { "checks": [ { "conn": "VX1000", "tag": "VX1000", "type": "conn" }, { "conn": "UHDJr", "tag": "UHDJR", "type": "conn" }, { "host": "10.1.14.116", "name": "VX1000", "type": "ping" }, { "host": "10.1.14.115", "name": "UHDJR", "type": "ping" } ], "id": "led", "label": "LED", "pos": [ 3, 6 ] }, { "checks": [ { "conn": "arena", "fix": "arena", "type": "conn" } ], "id": "arena", "label": "ARENA", "pos": [ 3, 7 ] }, { "checks": [ { "channels": 4, "conn": "Axient_1", "type": "shure" }, { "conn": "Axient_1", "host": "10.1.1.101", "name": "AXIENT 1", "type": "ping" } ], "id": "axient1", "label": "AXIENT 1" }, { "checks": [ { "channels": 4, "conn": "Axient_2", "type": "shure" }, { "conn": "Axient_2", "host": "10.1.1.102", "name": "AXIENT 2", "type": "ping" } ], "id": "axient2", "label": "AXIENT 2" }, { "checks": [ { "channels": 1, "conn": "ULXD-4", "type": "shure" }, { "conn": "ULXD-4", "host": "10.1.1.106", "name": "ULXD", "type": "ping" } ], "id": "ulxd", "label": "ULXD" }, { "checks": [ { "channels": 2, "conn": "PSM_1", "type": "psm" }, { "conn": "PSM_1", "host": "10.1.1.103", "name": "PSM 1", "type": "ping" } ], "id": "psm1", "label": "PSM 1" }, { "checks": [ { "channels": 2, "conn": "PSM_2", "type": "psm" }, { "conn": "PSM_2", "host": "10.1.1.104", "name": "PSM 2", "type": "ping" } ], "id": "psm2", "label": "PSM 2" }, { "checks": [ { "channels": 2, "conn": "PSM_3", "type": "psm" }, { "conn": "PSM_3", "host": "10.1.1.105", "name": "PSM 3", "type": "ping" } ], "id": "psm3", "label": "PSM 3" } ], "timing": { "alert_after_seconds": 30, "fix_cooldown_seconds": 60 }, "variables": { "command": "sp_cmd", "heartbeat": "sp_hb", "state": "sp_state" } }