- the inserted administrator check split the header comment, leaving '} for ... run ONCE' as code: WS and SC
join.ps1 failed to parse (Windows' parser: Missing opening '(' after keyword 'for'); now after the whole line
- site.admin_ips / admin_keys (laptop 10.6.7.38, fixed in UniFi) go into every PC script's firewall rule and key
files, and into the Mac join line, so running a set-up again never shuts the laptop out
- scripts verified by Windows' own PowerShell parser on the NA Lighting PC
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
704 lines
18 KiB
JSON
704 lines
18 KiB
JSON
{
|
|
"site": {
|
|
"id": "sc",
|
|
"name": "Southcoast",
|
|
"ingest_name": "SC ProPresenter",
|
|
"ingest_hostname": "SC-ProPresenter-423.local",
|
|
"ingest_ips": [
|
|
"10.5.2.60",
|
|
"192.168.2.1",
|
|
"169.254.161.214",
|
|
"169.254.108.73"
|
|
],
|
|
"contacts": "",
|
|
"live_services": [],
|
|
"editing_code": "5690",
|
|
"admin_ips": [
|
|
"10.6.7.38"
|
|
],
|
|
"admin_keys": [
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPKCGDLncJQfNPpoZUy/5BQWGNtyaU1/xKXwHQWx3ETa christian-laptop@waters"
|
|
]
|
|
},
|
|
"companion": {
|
|
"host": "127.0.0.1",
|
|
"port": 8000
|
|
},
|
|
"page": 19,
|
|
"page_name": "19\\nStatus",
|
|
"page_hold_ms": 2000,
|
|
"variables": {
|
|
"state": "sp_state",
|
|
"heartbeat": "sp_hb",
|
|
"command": "sp_cmd"
|
|
},
|
|
"timing": {
|
|
"fix_cooldown_seconds": 60,
|
|
"alert_after_seconds": 30
|
|
},
|
|
"auto_fix": {
|
|
"after_seconds": 20,
|
|
"max_tries": 2,
|
|
"retry_seconds": 90,
|
|
"pause_after_network_seconds": 60,
|
|
"restart_connections": true,
|
|
"windows": [
|
|
{
|
|
"days": [
|
|
"tue"
|
|
],
|
|
"start": "14:00",
|
|
"end": "22:00"
|
|
},
|
|
{
|
|
"days": [
|
|
"wed"
|
|
],
|
|
"start": "09:00",
|
|
"end": "21:00"
|
|
},
|
|
{
|
|
"days": [
|
|
"sun"
|
|
],
|
|
"start": "05:00",
|
|
"end": "14:00"
|
|
}
|
|
],
|
|
"fixes": [
|
|
"propresenter_ingest",
|
|
"prop_port_propresenter_api",
|
|
"hyperdeck",
|
|
"midi_reconnect",
|
|
"ableton_sc_tracks_new",
|
|
"superrack_sc_foh",
|
|
"x32edit_sc_foh",
|
|
"vista_desktop_cucshqg",
|
|
"rtpmidi_desktop_cucshqg"
|
|
]
|
|
},
|
|
"tiles": [
|
|
{
|
|
"id": "all",
|
|
"label": "ALL",
|
|
"pos": [
|
|
0,
|
|
1
|
|
],
|
|
"kind": "master"
|
|
},
|
|
{
|
|
"id": "service",
|
|
"label": "ALARMS",
|
|
"pos": [
|
|
3,
|
|
0
|
|
],
|
|
"kind": "service"
|
|
},
|
|
{
|
|
"id": "net",
|
|
"label": "NET",
|
|
"pos": [
|
|
3,
|
|
7
|
|
],
|
|
"kind": "network"
|
|
},
|
|
{
|
|
"id": "hd",
|
|
"label": "HD",
|
|
"checks": [
|
|
{
|
|
"type": "hyperdeck",
|
|
"conn": "hyperdeck",
|
|
"fix": {
|
|
"conn": "hyperdeck"
|
|
}
|
|
}
|
|
],
|
|
"pos": [
|
|
0,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"id": "foh_x32",
|
|
"label": "FOH X32",
|
|
"checks": [
|
|
{
|
|
"type": "conn",
|
|
"conn": "FOH_X32"
|
|
}
|
|
],
|
|
"pos": [
|
|
0,
|
|
3
|
|
]
|
|
},
|
|
{
|
|
"id": "iem_x32",
|
|
"label": "IEM X32",
|
|
"checks": [
|
|
{
|
|
"type": "conn",
|
|
"conn": "IEM_X32"
|
|
}
|
|
],
|
|
"pos": [
|
|
0,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"id": "prop",
|
|
"label": "PROP",
|
|
"checks": [
|
|
{
|
|
"type": "conn",
|
|
"conn": "Propresenter-API",
|
|
"fix": "prop_port_propresenter_api",
|
|
"ignore_warning": true
|
|
},
|
|
{
|
|
"type": "process",
|
|
"match": "/Applications/ProPresenter[^/]*\\.app/Contents/MacOS/ProPresenter$",
|
|
"name": "PROP",
|
|
"fix": "propresenter_ingest"
|
|
}
|
|
],
|
|
"pos": [
|
|
0,
|
|
5
|
|
]
|
|
},
|
|
{
|
|
"id": "atem",
|
|
"label": "ATEM",
|
|
"checks": [
|
|
{
|
|
"type": "conn",
|
|
"conn": "atem"
|
|
}
|
|
],
|
|
"pos": [
|
|
0,
|
|
6
|
|
]
|
|
},
|
|
{
|
|
"id": "resi",
|
|
"label": "RESI",
|
|
"checks": [
|
|
{
|
|
"type": "conn",
|
|
"conn": "resi"
|
|
},
|
|
{
|
|
"type": "ping",
|
|
"conn": "resi"
|
|
}
|
|
],
|
|
"pos": [
|
|
0,
|
|
7
|
|
]
|
|
},
|
|
{
|
|
"id": "midi",
|
|
"label": "MIDI",
|
|
"checks": [
|
|
{
|
|
"type": "conn",
|
|
"conn": "Midi-Lighting"
|
|
},
|
|
{
|
|
"type": "midi_peer",
|
|
"session": "ProPresenter",
|
|
"peer": "Lighting",
|
|
"address": "10.5.1.168:5004",
|
|
"fix": "midi_reconnect",
|
|
"tag": "PROP LIGHTS"
|
|
},
|
|
{
|
|
"type": "midi_peer",
|
|
"session": "SC Tracks NEW",
|
|
"peer": "SC FOH Mac mini",
|
|
"address": "10.5.2.96:5004",
|
|
"fix": "midi_reconnect",
|
|
"tag": "FOH TRACKS",
|
|
"host": "sc_tracks_new"
|
|
},
|
|
{
|
|
"type": "midi_peer",
|
|
"session": "SC Tracks NEW",
|
|
"peer": "Lighting",
|
|
"address": "10.5.1.168:5004",
|
|
"fix": "midi_reconnect",
|
|
"tag": "TRACKS LIGHTS",
|
|
"host": "sc_tracks_new"
|
|
},
|
|
{
|
|
"type": "remote",
|
|
"template": "win_program",
|
|
"params": {
|
|
"host": "desktop_cucshqg",
|
|
"exe": "rtpMIDI.exe"
|
|
},
|
|
"msg": "RTPMIDI NOT RUNNING",
|
|
"fix": "rtpmidi_desktop_cucshqg",
|
|
"host": "desktop_cucshqg",
|
|
"cmd": "tasklist /NH /FI \"IMAGENAME eq rtpMIDI.exe\" | find /I \"rtpMIDI.exe\" >nul"
|
|
},
|
|
{
|
|
"type": "midi_wired",
|
|
"nets": [
|
|
"10.5.0.0/16"
|
|
],
|
|
"fix": "midi_reconnect"
|
|
}
|
|
],
|
|
"pos": [
|
|
1,
|
|
1
|
|
]
|
|
},
|
|
{
|
|
"id": "ableton",
|
|
"label": "ABLETON",
|
|
"checks": [
|
|
{
|
|
"type": "remote",
|
|
"template": "mac_program",
|
|
"params": {
|
|
"host": "sc_tracks_new",
|
|
"process": "Live"
|
|
},
|
|
"msg": "ABLETON NOT RUNNING",
|
|
"fix": "ableton_sc_tracks_new",
|
|
"host": "sc_tracks_new",
|
|
"cmd": "pgrep -xq Live"
|
|
}
|
|
],
|
|
"pos": [
|
|
1,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"id": "autofix",
|
|
"label": "AUTO-FIX",
|
|
"kind": "autofix",
|
|
"pos": [
|
|
3,
|
|
1
|
|
]
|
|
},
|
|
{
|
|
"id": "lights",
|
|
"label": "LIGHTS",
|
|
"kind": "bypass",
|
|
"pos": [
|
|
1,
|
|
3
|
|
],
|
|
"bypass": {
|
|
"peers": [
|
|
"Lighting"
|
|
],
|
|
"hosts": [
|
|
"",
|
|
"sc_tracks_new"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"id": "superrack",
|
|
"label": "SUPERRACK",
|
|
"checks": [
|
|
{
|
|
"type": "remote",
|
|
"template": "mac_program",
|
|
"params": {
|
|
"host": "sc_foh",
|
|
"process": "SuperRack SoundGrid"
|
|
},
|
|
"msg": "SUPERRACK NOT RUNNING",
|
|
"fix": "superrack_sc_foh",
|
|
"host": "sc_foh",
|
|
"cmd": "pgrep -xq 'SuperRack SoundGrid'"
|
|
},
|
|
{
|
|
"type": "remote",
|
|
"template": "soundgrid",
|
|
"params": {
|
|
"host": "sc_foh"
|
|
},
|
|
"msg": "SOUNDGRID LOST",
|
|
"host": "sc_foh",
|
|
"cmd": "lsof -nP -iTCP -sTCP:ESTABLISHED -a -c SuperRack 2>/dev/null | grep -q ':19000 (ESTABLISHED)'"
|
|
}
|
|
],
|
|
"pos": [
|
|
1,
|
|
4
|
|
]
|
|
},
|
|
{
|
|
"id": "x32_edit",
|
|
"label": "X32 EDIT",
|
|
"checks": [
|
|
{
|
|
"type": "remote",
|
|
"template": "mac_program",
|
|
"params": {
|
|
"host": "sc_foh",
|
|
"process": "X32-Edit"
|
|
},
|
|
"msg": "X32 EDIT NOT RUNNING",
|
|
"fix": "x32edit_sc_foh",
|
|
"host": "sc_foh",
|
|
"cmd": "pgrep -xq X32-Edit"
|
|
}
|
|
],
|
|
"pos": [
|
|
1,
|
|
5
|
|
]
|
|
},
|
|
{
|
|
"id": "vista",
|
|
"label": "VISTA",
|
|
"checks": [
|
|
{
|
|
"type": "remote",
|
|
"template": "win_program",
|
|
"params": {
|
|
"host": "desktop_cucshqg",
|
|
"exe": "Vista.exe"
|
|
},
|
|
"msg": "VISTA NOT RUNNING",
|
|
"fix": "vista_desktop_cucshqg",
|
|
"host": "desktop_cucshqg",
|
|
"cmd": "tasklist /NH /FI \"IMAGENAME eq Vista.exe\" | find /I \"Vista.exe\" >nul"
|
|
}
|
|
],
|
|
"pos": [
|
|
1,
|
|
6
|
|
]
|
|
}
|
|
],
|
|
"fixes": {
|
|
"propresenter_ingest": {
|
|
"template": "mac_start",
|
|
"params": {
|
|
"host": "ingest",
|
|
"process": "ProPresenter",
|
|
"app": "$APP",
|
|
"newest_of": "/Applications/ProPresenter*.app"
|
|
},
|
|
"label": "start ProPresenter on this Mac if it is not running",
|
|
"short": "PROP",
|
|
"kind": "local",
|
|
"run": "pgrep -xq ProPresenter || { APP=$(for a in /Applications/ProPresenter*.app; do [ -d \"$a\" ] && printf '%s|%s\\n' \"$(defaults read \"$a/Contents/Info\" CFBundleShortVersionString 2>/dev/null)\" \"$a\"; done | sort -t '|' -k1,1V | tail -1 | cut -d '|' -f2-); open \"$APP\"; }"
|
|
},
|
|
"restart_propresenter_ingest": {
|
|
"template": "mac_restart",
|
|
"params": {
|
|
"host": "ingest",
|
|
"process": "ProPresenter",
|
|
"app": "$APP",
|
|
"wait_seconds": 10,
|
|
"force": true,
|
|
"background": false,
|
|
"stop_children": false,
|
|
"newest_of": "/Applications/ProPresenter*.app"
|
|
},
|
|
"label": "restart ProPresenter on this Mac (closes it first)",
|
|
"short": "PROP",
|
|
"kind": "local",
|
|
"run": "APP=$(for a in /Applications/ProPresenter*.app; do [ -d \"$a\" ] && printf '%s|%s\\n' \"$(defaults read \"$a/Contents/Info\" CFBundleShortVersionString 2>/dev/null)\" \"$a\"; done | sort -t '|' -k1,1V | tail -1 | cut -d '|' -f2-); 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\""
|
|
},
|
|
"prop_port_propresenter_api": {
|
|
"kind": "propresenter_port",
|
|
"template": "propresenter_port",
|
|
"params": {},
|
|
"conn": "Propresenter-API",
|
|
"short": "PROP PORT",
|
|
"label": "find ProPresenter's network port and reconnect Companion's Propresenter-API to it"
|
|
},
|
|
"hyperdeck": {
|
|
"kind": "hyperdeck",
|
|
"template": "hyperdeck",
|
|
"params": {},
|
|
"short": "HYPERDECK",
|
|
"verify_seconds": 15,
|
|
"hung_note": "STILL OFFLINE\nHOLD AGAIN",
|
|
"label": "turn Companion's connection to that HyperDeck off and on (what gets a restarted deck green); never reboots the deck"
|
|
},
|
|
"midi_reconnect": {
|
|
"kind": "midi_connect",
|
|
"template": "midi_connect",
|
|
"params": {},
|
|
"short": "RECONNECT",
|
|
"label": "reconnect the peer to the network MIDI session it dropped out of (like Connect in Audio MIDI Setup), at its wired address"
|
|
},
|
|
"ableton_sc_tracks_new": {
|
|
"template": "ableton",
|
|
"params": {
|
|
"host": "sc_tracks_new",
|
|
"app": "Ableton Live 11 Suite",
|
|
"restart": false,
|
|
"wait_seconds": 15
|
|
},
|
|
"label": "start Ableton on SC Tracks NEW if it is not running",
|
|
"short": "ABLETON",
|
|
"kind": "ssh",
|
|
"host": "sc_tracks_new",
|
|
"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; }"
|
|
},
|
|
"restart_ableton_sc_tracks_new": {
|
|
"template": "ableton",
|
|
"params": {
|
|
"host": "sc_tracks_new",
|
|
"app": "Ableton Live 11 Suite",
|
|
"restart": true,
|
|
"wait_seconds": 15
|
|
},
|
|
"label": "restart Ableton on SC Tracks NEW (closes it first)",
|
|
"short": "ABLETON",
|
|
"kind": "ssh",
|
|
"host": "sc_tracks_new",
|
|
"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"
|
|
},
|
|
"superrack_sc_foh": {
|
|
"template": "mac_start",
|
|
"params": {
|
|
"host": "sc_foh",
|
|
"process": "SuperRack SoundGrid",
|
|
"app": "/Applications/Waves/SuperRack SoundGrid/SuperRack SoundGrid.app"
|
|
},
|
|
"label": "start SuperRack on SC FOH if it is not running",
|
|
"short": "SUPERRACK",
|
|
"kind": "ssh",
|
|
"host": "sc_foh",
|
|
"run": "pgrep -xq 'SuperRack SoundGrid' || open '/Applications/Waves/SuperRack SoundGrid/SuperRack SoundGrid.app'"
|
|
},
|
|
"restart_superrack_sc_foh": {
|
|
"template": "mac_restart",
|
|
"params": {
|
|
"host": "sc_foh",
|
|
"process": "SuperRack SoundGrid",
|
|
"app": "/Applications/Waves/SuperRack SoundGrid/SuperRack SoundGrid.app",
|
|
"wait_seconds": 10,
|
|
"force": true,
|
|
"background": false,
|
|
"stop_children": false,
|
|
"newest_of": ""
|
|
},
|
|
"label": "restart SuperRack on SC FOH (closes it first)",
|
|
"short": "SUPERRACK",
|
|
"kind": "ssh",
|
|
"host": "sc_foh",
|
|
"run": "pkill -TERM -x 'SuperRack SoundGrid'; i=0; while pgrep -xq 'SuperRack SoundGrid' && [ $i -lt 20 ]; do sleep 0.5; i=$((i+1)); done; pgrep -xq 'SuperRack SoundGrid' && pkill -KILL -x 'SuperRack SoundGrid'; sleep 1; open '/Applications/Waves/SuperRack SoundGrid/SuperRack SoundGrid.app'"
|
|
},
|
|
"x32edit_sc_foh": {
|
|
"template": "mac_start",
|
|
"params": {
|
|
"host": "sc_foh",
|
|
"process": "X32-Edit",
|
|
"app": "/Applications/X32-Edit.app"
|
|
},
|
|
"label": "start X32-Edit on SC FOH if it is not running",
|
|
"short": "X32 EDIT",
|
|
"kind": "ssh",
|
|
"host": "sc_foh",
|
|
"run": "pgrep -xq X32-Edit || open /Applications/X32-Edit.app"
|
|
},
|
|
"vista_desktop_cucshqg": {
|
|
"template": "win_start",
|
|
"params": {
|
|
"host": "desktop_cucshqg",
|
|
"task": "Start Vista",
|
|
"exe": "Vista.exe"
|
|
},
|
|
"label": "start Vista on SC Lighting PC if it is not running",
|
|
"short": "VISTA",
|
|
"kind": "ssh",
|
|
"host": "desktop_cucshqg",
|
|
"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)"
|
|
},
|
|
"restart_vista_desktop_cucshqg": {
|
|
"template": "win_restart",
|
|
"params": {
|
|
"host": "desktop_cucshqg",
|
|
"task": "Start Vista",
|
|
"exe": "Vista.exe"
|
|
},
|
|
"label": "restart Vista on SC Lighting PC (closes it first)",
|
|
"short": "VISTA",
|
|
"kind": "ssh",
|
|
"host": "desktop_cucshqg",
|
|
"run": "taskkill /F /T /IM \"Vista.exe\" >nul 2>&1 & ping -n 3 127.0.0.1 >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"
|
|
},
|
|
"rtpmidi_desktop_cucshqg": {
|
|
"template": "win_start",
|
|
"params": {
|
|
"host": "desktop_cucshqg",
|
|
"task": "Start rtpMIDI",
|
|
"exe": "rtpMIDI.exe"
|
|
},
|
|
"label": "start rtpMIDI on SC Lighting PC if it is not running",
|
|
"short": "RTPMIDI",
|
|
"kind": "ssh",
|
|
"host": "desktop_cucshqg",
|
|
"run": "tasklist /NH /FI \"IMAGENAME eq rtpMIDI.exe\" | find /I \"rtpMIDI.exe\" >nul || (schtasks /Run /TN \"\\StatusPanel\\Start rtpMIDI\" >nul && ping -n 9 127.0.0.1 >nul && tasklist /NH /FI \"IMAGENAME eq rtpMIDI.exe\" | find /I \"rtpMIDI.exe\" >nul)"
|
|
}
|
|
},
|
|
"hosts": {
|
|
"ingest": {
|
|
"self": true,
|
|
"name": "SC ProPresenter",
|
|
"role": "the watchdog, Companion, the settings page",
|
|
"os": "mac",
|
|
"networks": [],
|
|
"runs": [
|
|
{
|
|
"kind": "launchagent",
|
|
"label": "org.waterschurch.status-panel",
|
|
"name": "the watchdog"
|
|
},
|
|
{
|
|
"kind": "launchagent",
|
|
"label": "org.waterschurch.status-settings",
|
|
"name": "the settings page"
|
|
},
|
|
{
|
|
"kind": "app",
|
|
"process": "Companion",
|
|
"name": "Companion",
|
|
"http": "http://127.0.0.1:8000/api/connections"
|
|
}
|
|
]
|
|
},
|
|
"sc_tracks_new": {
|
|
"name": "SC Tracks NEW",
|
|
"os": "mac",
|
|
"ssh": "tracks@10.5.3.72",
|
|
"role": "found by auto-setup",
|
|
"runs": [
|
|
{
|
|
"kind": "sshd"
|
|
}
|
|
]
|
|
},
|
|
"sc_foh": {
|
|
"name": "SC FOH",
|
|
"os": "mac",
|
|
"ssh": "media@10.5.2.96",
|
|
"role": "found by auto-setup",
|
|
"runs": [
|
|
{
|
|
"kind": "sshd"
|
|
}
|
|
]
|
|
},
|
|
"desktop_cucshqg": {
|
|
"name": "SC Lighting PC",
|
|
"os": "windows",
|
|
"ssh": "Lighting@10.5.1.168",
|
|
"role": "found by auto-setup",
|
|
"runs": [
|
|
{
|
|
"kind": "sshd"
|
|
}
|
|
],
|
|
"mac": "40:a8:f0:69:ce:c9"
|
|
}
|
|
},
|
|
"gear": {},
|
|
"debounce_seconds": 3,
|
|
"network": {
|
|
"interface": "en11",
|
|
"gateway": "10.5.0.1",
|
|
"burst_connections": 4,
|
|
"burst_groups": 3,
|
|
"burst_window_seconds": 10,
|
|
"remember_seconds": 300
|
|
},
|
|
"nav_keys": [
|
|
"pagenum"
|
|
],
|
|
"nav_hold_ms": 1000,
|
|
"nav_tap_page": 1,
|
|
"discover": {
|
|
"auto": true
|
|
},
|
|
"restart_page": {
|
|
"page": 20,
|
|
"page_name": "20\\nRestart",
|
|
"jump_pos": [
|
|
3,
|
|
6
|
|
],
|
|
"back_pos": [
|
|
3,
|
|
0
|
|
],
|
|
"keys": [
|
|
{
|
|
"id": "rs_prop",
|
|
"label": "PROP",
|
|
"fix": "restart_propresenter_ingest",
|
|
"pos": [
|
|
0,
|
|
1
|
|
]
|
|
},
|
|
{
|
|
"id": "rs_ableton",
|
|
"label": "ABLETON",
|
|
"fix": "restart_ableton_sc_tracks_new",
|
|
"pos": [
|
|
0,
|
|
2
|
|
]
|
|
},
|
|
{
|
|
"id": "rs_superrack",
|
|
"label": "SUPERRACK",
|
|
"fix": "restart_superrack_sc_foh",
|
|
"pos": [
|
|
0,
|
|
3
|
|
]
|
|
},
|
|
{
|
|
"id": "rs_vista",
|
|
"label": "VISTA",
|
|
"fix": "restart_vista_desktop_cucshqg",
|
|
"pos": [
|
|
0,
|
|
4
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"service_windows": [
|
|
{
|
|
"days": [
|
|
"mon",
|
|
"tue",
|
|
"wed",
|
|
"thu",
|
|
"fri",
|
|
"sat",
|
|
"sun"
|
|
],
|
|
"start": "00:00",
|
|
"end": "23:59"
|
|
}
|
|
]
|
|
}
|