How To

Web Remote Commands

The web remote communicates over WebSocket (default port 8082). Messages are JSON.

#Commands sent from the remote to CueStudio 2

### Transport

  • {"cmd":"go"}: fire GO
  • {"cmd":"stop"}: stop active cue
  • {"cmd":"pause"}: pause
  • {"cmd":"resume"}: resume
  • {"cmd":"panic"}: PANIC

### Selection

  • {"cmd":"selectNext"}: move armed cue down
  • {"cmd":"selectPrevious"}: move armed cue up

### Cue navigation

  • {"cmd":"goto","cueNumber":"5"}: go to and fire cue 5
  • {"cmd":"load","cueNumber":"5"}: arm cue 5 without firing
  • {"cmd":"hotkey","key":"A"}: fire the cue assigned to hotkey A

### Show state

  • {"cmd":"showmode","enabled":true}: set Show Mode on or off
  • {"cmd":"masterVolume","value":0.85}; set grand master volume (0.0–1.0)

### Per-cue adjustments (while playing)

  • {"cmd":"cueVolume","cueId":"<uuid>","value":0.75}; set a cue's volume
  • {"cmd":"editNote","cueId":"<uuid>","notes":"text"}; update a cue's notes

### Multi-list

  • {"cmd":"selectList","listId":"<uuid>"}: switch the active cue list
  • {"cmd":"queryCuelist"}: request a full cue list snapshot

#Messages sent from CueStudio 2 to all connected remotes

### State snapshots (sent on connect and on every change) A cuelist message is broadcast whenever the show state changes: {"type":"cuelist","cues":[...],"showMode":false,"masterVolume":1.0, "activeCueId":"...","selectedCueId":"...","lists":[...],"activeListId":"..."}

### Live updates

  • {"type":"status","cueId":"...","cueNumber":"3","cueName":"Thunder","status":"playing"}
  • {"type":"progress","cueId":"...","elapsed":12.5,"remaining":47.2,"progress":0.21}
  • {"type":"armed","cueId":"...","cueNumber":"5","cueName":"Thunder"}
  • {"type":"showMode","enabled":true}
  • {"type":"masterVolume","value":0.85}
  • {"type":"heartbeat","timestamp":<unix_ms>}

#HTTP endpoint

A snapshot of the current cue list is also available as a plain HTTP GET request to the same address (the web remote page is served at the root URL).