Summary
The Interactive Technologies CueServer 2 is a DMX lighting controller that executes CueScript commands via UDP, HTTP (CGI API), and serial interfaces. This spec covers the CueScript protocol over UDP (port 52737), the HTTP CGI API, and serial CueScript — though serial configuration details are not available in the source excerpt.
Transport
protocols:
- udp
- http
- serial
addressing:
port: 52737 # UDP port for CueScript Protocol
multicast_group: 239.255.204.2
# UNRESOLVED: HTTP port number not stated in source
# UNRESOLVED: HTTP base URL / path prefix not stated (CGI paths like /exe.cgi, /get.cgi, /pcmd.cgi, /set.cgi inferred from endpoint names)
serial:
baud_rate: null # UNRESOLVED: serial config not in source excerpt
data_bits: null # UNRESOLVED
parity: null # UNRESOLVED
stop_bits: null # UNRESOLVED
flow_control: null # UNRESOLVED
auth:
type: none # inferred: no auth procedure in source
Traits
traits:
- powerable # inferred: Reboot command present
- levelable # inferred: At command for channel levels
- queryable # inferred: get.cgi queries return state
- routable # inferred: DMX input/output routing commands present
Actions
actions:
- id: cue_go
label: Cue Go
kind: action
description: "Execute (go) a cue. Syntax: Cue <number> Go (shorthand: Q<n>G)"
params:
- name: cue_number
type: integer
description: Cue number to execute
examples:
- "Cue 1 Go"
- "Q1G"
- id: macro_run
label: Macro Run
kind: action
description: "Run a macro. Syntax: Macro <number> (shorthand: M<n>)"
params:
- name: macro_number
type: integer
description: Macro number to run
examples:
- "Macro 7"
- "M7"
- id: channel_at
label: Channel At Level
kind: action
description: "Set channel(s) to a level. Syntax: Channel <range> At <level> (shorthand: C<range>A<level>)"
params:
- name: channels
type: string
description: "Channel selection (e.g. '1>10' for range)"
- name: level
type: string
description: "Level value (e.g. FL for full)"
examples:
- "Channel 1>10 At FL"
- "C1>10AFL"
- id: button_on
label: Button On
kind: action
description: "Turn a button on. Syntax: Button <number> On"
params:
- name: button_number
type: integer
description: Button number
- id: button_off
label: Button Off
kind: action
description: "Turn a button off. Syntax: Button <number> Off"
params:
- name: button_number
type: integer
description: Button number
- id: reboot
label: Reboot
kind: action
description: Reboot the CueServer device
params: []
- id: playback_clear
label: Playback Clear
kind: action
description: "Clear a playback. Syntax: Playback <number> Clear"
params:
- name: playback_number
type: integer
description: Playback number
- id: exe_cgi
label: Execute CGI Command
kind: action
description: "Send CueScript command via HTTP exe.cgi endpoint"
params:
- name: command
type: string
description: CueScript command string
# UNRESOLVED: the following action commands are listed in source but syntax/params not fully documented:
# Assert, Assign (=), Audio, Clear, Disable, Enable, Fade, Follow, Input, Join,
# Length, Link, Lock, Log, Off, Offset, On, Park, Preset, Press, Random,
# Record, Record Cue, Record Group, Record Preset, Record Stream, Record Stop,
# Release, Remainder, Reset, Return, Set, SMPTE, Stack, Start, Stop, Toggle,
# Unpark, Update, Update Cue, Update Group, Update Preset, Update Stream,
# Update Stop, Unlock, Wait, Write, Zone
- id: assert
label: Assert
kind: action
description: "Assert command. Asserts a condition or state on the selection."
params:
- name: selection
type: string
description: Target selection
- name: params
type: string
description: UNRESOLVED
- id: assign
label: Assign
kind: action
description: "Assign (=) command. Assigns a value to a variable or property."
params:
- name: target
type: string
description: Target variable or property
- name: value
type: string
description: Value to assign
- id: audio
label: Audio
kind: action
description: "Audio command. Controls audio properties or playback on the CueServer."
params:
- name: params
type: string
description: UNRESOLVED
- id: clear
label: Clear
kind: action
description: "Clear command. Clears the current selection or a named object."
params:
- name: selection
type: string
description: Target to clear
- id: disable
label: Disable
kind: action
description: "Disable command. Disables a selected object or feature."
params:
- name: selection
type: string
description: Target to disable
- id: enable
label: Enable
kind: action
description: "Enable command. Enables a selected object or feature."
params:
- name: selection
type: string
description: Target to enable
- id: fade
label: Fade
kind: action
description: "Fade command. Fades a selection to a level over a duration."
params:
- name: selection
type: string
description: Target selection
- name: params
type: string
description: UNRESOLVED
- id: follow
label: Follow
kind: action
description: "Follow command. Causes the selection to follow another object."
params:
- name: selection
type: string
description: Target selection
- name: params
type: string
description: UNRESOLVED
- id: go
label: Go
kind: action
description: "Go command. Executes the current or named cue."
params:
- name: selection
type: string
description: UNRESOLVED
- id: input
label: Input
kind: action
description: "Input command. Controls or configures an input source."
params:
- name: params
type: string
description: UNRESOLVED
- id: join
label: Join
kind: action
description: "Join command. Joins a selection to a group or playback."
params:
- name: selection
type: string
description: Target selection
- name: params
type: string
description: UNRESOLVED
- id: length
label: Length
kind: action
description: "Length command. Sets the fade length (time) for a selection."
params:
- name: selection
type: string
description: Target selection
- name: time
type: string
description: UNRESOLVED
- id: link
label: Link
kind: action
description: "Link command. Links a selection to another object."
params:
- name: selection
type: string
description: Target selection
- name: params
type: string
description: UNRESOLVED
- id: lock
label: Lock
kind: action
description: "Lock command. Locks a selection such as a playback or channel."
params:
- name: selection
type: string
description: Target selection
- id: log
label: Log
kind: action
description: "Log command. Writes a message to the system log."
params:
- name: message
type: string
description: UNRESOLVED
- id: off
label: Off
kind: action
description: "Off command. Turns off a selection such as a channel, playback, or button."
params:
- name: selection
type: string
description: Target selection
- id: offset
label: Offset
kind: action
description: "Offset command. Offsets a level or value for a selection."
params:
- name: selection
type: string
description: Target selection
- name: value
type: string
description: UNRESOLVED
- id: on
label: On
kind: action
description: "On command. Turns on a selection such as a channel, playback, or button."
params:
- name: selection
type: string
description: Target selection
- id: park
label: Park
kind: action
description: "Park command. Parks (holds) a channel or selection at its current level."
params:
- name: selection
type: string
description: Target selection
- id: preset
label: Preset
kind: action
description: "Preset command. Recalls or applies a preset to a selection."
params:
- name: preset_number
type: integer
description: Preset number
- name: selection
type: string
description: UNRESOLVED
- id: press
label: Press
kind: action
description: "Press command. Simulates a button press."
params:
- name: button_number
type: integer
description: Button number
- id: random
label: Random
kind: action
description: "Random command. Generates or applies a random value to a selection."
params:
- name: params
type: string
description: UNRESOLVED
- id: record
label: Record
kind: action
description: "Record command. Records the current state to a cue or object."
params:
- name: params
type: string
description: UNRESOLVED
- id: record_cue
label: Record Cue
kind: action
description: "Record Cue command. Records the current state to a specific cue."
params:
- name: cue_number
type: integer
description: Cue number
- id: record_group
label: Record Group
kind: action
description: "Record Group command. Records the current state to a group."
params:
- name: group_number
type: integer
description: Group number
- id: record_preset
label: Record Preset
kind: action
description: "Record Preset command. Records the current state to a preset."
params:
- name: preset_number
type: integer
description: Preset number
- id: record_stream
label: Record Stream
kind: action
description: "Record Stream command. Starts recording a live DMX stream."
params:
- name: params
type: string
description: UNRESOLVED
- id: record_stop
label: Record Stop
kind: action
description: "Record Stop command. Stops an active recording."
params: []
- id: release
label: Release
kind: action
description: "Release command. Releases a selection from control."
params:
- name: selection
type: string
description: Target selection
- id: remainder
label: Remainder
kind: action
description: "Remainder command. Applies an action to the remainder of a selection."
params:
- name: params
type: string
description: UNRESOLVED
- id: reset
label: Reset
kind: action
description: "Reset command. Resets a selection to its default state."
params:
- name: selection
type: string
description: UNRESOLVED
- id: return
label: Return
kind: action
description: "Return command. Returns from a subroutine or macro call."
params: []
- id: set
label: Set
kind: action
description: "Set command. Sets a property or variable to a value."
params:
- name: target
type: string
description: Property or variable name
- name: value
type: string
description: UNRESOLVED
- id: smpte
label: SMPTE
kind: action
description: "SMPTE command. Synchronizes or triggers actions based on SMPTE timecode."
params:
- name: params
type: string
description: UNRESOLVED
- id: stack
label: Stack
kind: action
description: "Stack command. Controls cue stack behavior."
params:
- name: params
type: string
description: UNRESOLVED
- id: start
label: Start
kind: action
description: "Start command. Starts a playback, effect, or process."
params:
- name: selection
type: string
description: Target selection
- id: stop
label: Stop
kind: action
description: "Stop command. Stops a playback, effect, or process."
params:
- name: selection
type: string
description: Target selection
- id: toggle
label: Toggle
kind: action
description: "Toggle command. Toggles the state of a selection."
params:
- name: selection
type: string
description: Target selection
- id: unpark
label: Unpark
kind: action
description: "Unpark command. Releases a parked channel or selection."
params:
- name: selection
type: string
description: Target selection
- id: update
label: Update
kind: action
description: "Update command. Updates a cue or object with the current state."
params:
- name: params
type: string
description: UNRESOLVED
- id: update_cue
label: Update Cue
kind: action
description: "Update Cue command. Updates a specific cue with the current state."
params:
- name: cue_number
type: integer
description: Cue number
- id: update_group
label: Update Group
kind: action
description: "Update Group command. Updates a group with the current state."
params:
- name: group_number
type: integer
description: Group number
- id: update_preset
label: Update Preset
kind: action
description: "Update Preset command. Updates a preset with the current state."
params:
- name: preset_number
type: integer
description: Preset number
- id: update_stream
label: Update Stream
kind: action
description: "Update Stream command. Updates a recording stream."
params:
- name: params
type: string
description: UNRESOLVED
- id: update_stop
label: Update Stop
kind: action
description: "Update Stop command. Stops updating a stream."
params: []
- id: unlock
label: Unlock
kind: action
description: "Unlock command. Unlocks a previously locked selection."
params:
- name: selection
type: string
description: Target selection
- id: wait
label: Wait
kind: action
description: "Wait command. Pauses execution for a specified duration."
params:
- name: duration
type: number
description: Duration in seconds
- id: write
label: Write
kind: action
description: "Write command. Writes data to an output or file."
params:
- name: params
type: string
description: UNRESOLVED
- id: zone
label: Zone
kind: action
description: "Zone command. Selects or controls a zone."
params:
- name: zone_number
type: integer
description: Zone number
- id: break
label: Break
kind: action
description: "Break command. Exits the current loop or conditional block."
params: []
- id: if_then_else
label: If..Then..Else
kind: action
description: "Conditional logic command. Executes commands based on a condition."
params:
- name: condition
type: string
description: Condition expression
- name: then_command
type: string
description: Command to execute if condition is true
- name: else_command
type: string
description: UNRESOLVED
- id: pcmd_cgi
label: Execute pcmd.cgi Command
kind: action
description: "Send a CueScript command via HTTP pcmd.cgi endpoint."
params:
- name: command
type: string
description: CueScript command string
Feedbacks
feedbacks:
- id: button_values
type: object
description: "Button values (get.cgi?bv)"
- id: dmx_output
type: object
description: "DMX output data (get.cgi?out)"
- id: dmx_input
type: object
description: "DMX input data (get.cgi?in)"
- id: playback_info
type: object
description: "Playback info (get.cgi?pi)"
- id: playback_values
type: object
description: "Playback values (get.cgi?p*)"
- id: system_status
type: object
description: "System status (get.cgi?ss)"
- id: system_log
type: object
description: "System log (get.cgi?log)"
- id: network_info
type: object
description: "Network info (get.cgi?net)"
- id: cue_stack_info
type: object
description: "Cue stack info (get.cgi?csi)"
- id: zone_data
type: object
description: "Zone data (get.cgi?zones)"
- id: variables
type: object
description: "System variables (get.cgi?var)"
- id: ping
type: object
description: "Ping response (get.cgi?ping)"
# UNRESOLVED: response formats for get.cgi endpoints not documented in source excerpt
# Additional get.cgi endpoints without format details: cc, cpu, ecc, epi, fed,
# grp, hdi, pzi, rs, ti, ts
Variables
variables:
- id: audio_properties
type: object
description: "Audio properties (set.cgi?audio)"
- id: lcd_properties
type: object
description: "LCD properties (set.cgi?lcd)"
- id: network_properties
type: object
description: "Network properties (set.cgi?net)"
- id: time_properties
type: object
description: "Time properties (set.cgi?time)"
- id: station_color_properties
type: object
description: "Station color properties (set.cgi?stcol)"
# UNRESOLVED: set.cgi parameter names/types not documented in source excerpt
Events
# UNRESOLVED: no unsolicited event/notification details in source excerpt
Macros
# The CueServer has a built-in Macro command (Macro <number>), and CueScript
# supports sequencing with semicolons (e.g. "Button 1 On; Wait 3.5; Button 1 Off").
# UNRESOLVED: macro definition format and stored macro structure not documented in source excerpt
Safety
confirmation_required_for: []
interlocks: []
# UNRESOLVED: no safety warnings or interlock procedures in source excerpt
Notes
- CueScript commands can be abbreviated (e.g.
Q1GforCue 1 Go,M7forMacro 7,C1>10AFLforChannel 1>10 At FL). - Multiple commands can be chained with semicolons:
Button 1 On; Wait 3.5; Button 1 Off. - Conditional logic is supported via
If..Then..Else. - UDP packets can be sent unicast to the CueServer IP or multicast to 239.255.204.2.
- The device also speaks sACN, Art-Net, and KiNET for DMX-over-Ethernet; these are lighting transport protocols, not control interfaces.
- CueStation Protocol is referenced but not documented in the source excerpt.
Provenance
source_domains:
- docs.interactive-online.com
source_urls:
- https://docs.interactive-online.com/cs2/1.0/en/topic/cuescript-protocol
- https://docs.interactive-online.com/cs2/1.0/en/topic/cgi-api
- https://docs.interactive-online.com/cs2/1.0/en/topic/command-syntax
- https://docs.interactive-online.com/cs2/1.0/en/topic/serial-ports
retrieved_at: 2026-05-04T10:35:50.950Z
last_checked_at: 2026-06-02T22:08:24.396Z
Verification Summary
verdict: verified
checked_at: 2026-06-02T22:08:24.396Z
matched_actions: 60
action_count: 60
confidence: medium
summary: "All 60 spec actions traced to source (dip-safe re-verify). (18 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "serial port configuration (baud rate, data bits, parity, stop bits) not included in source excerpt"
- "HTTP port number and base URL not stated in source"
- "detailed command syntax for most CueScript commands not in source excerpt"
- "KiNET, sACN, Art-Net, CueStation protocol details not in source excerpt"
- "HTTP port number not stated in source"
- "HTTP base URL / path prefix not stated (CGI paths like /exe.cgi, /get.cgi, /pcmd.cgi, /set.cgi inferred from endpoint names)"
- "serial config not in source excerpt"
- "the following action commands are listed in source but syntax/params not fully documented:"
- "response formats for get.cgi endpoints not documented in source excerpt"
- "set.cgi parameter names/types not documented in source excerpt"
- "no unsolicited event/notification details in source excerpt"
- "macro definition format and stored macro structure not documented in source excerpt"
- "no safety warnings or interlock procedures in source excerpt"
- "serial port configuration not in source excerpt"
- "HTTP CGI API full URL patterns and response formats not in source excerpt"
- "effect properties, system variables list not in source excerpt"
- "KiNET and CueStation protocol details not in source excerpt"
- "Ethernet port numbers table referenced but not included in excerpt"
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0