CueTimer has a TCP server that waits for a client connection on a default port (31601) and can be configured from the app settings. Once a connection is instantiated between the client and CueTimer it will continuously listen to the incoming messages from that client.
The commands should be sent as an ASCII string with $
as a termination char at
the end of it (e.g. FireNext$).
FireNext
CueNext
CueCurrent
Pause
Restart
Blackout
: Togglle blackout modeAddMinute
: Add 1 minute.SubMinute
: Subtract 1 minute.AddSpeed
: Increase speed by 5%.SubSpeed
: Decrease speed by 5%.Fullscreen
: Fullscreen modeNDI
: Togglle NDIMessage
: Togglle Message visibiltyClock
: Toggle clock screenMoveNextUp
: Move next indicator one row upMoveNextDown
: Move next indicator one row downFireTimerWithID
: Start a timer with its id, the id can be passed after#
, exampleFireTimerWithID#1$
, please note that#
can't be used in timer IDCueTimerWithID
: Move next indicator to a timer with its id, the id can be passed after#
, exampleCueTimerWithID#1$
, please note that#
can't be used in timer IDSTM
: Togglle Single timer modeSetDuration
: Set the duration of the active timer to the passed value, formathh:mm:ss
, exampleSetDuration#00:10:00$
AddXMinutes
: Add minutes to the active timer, exampleAddXMinutes#5$
will add 5 minutesSubXMinutes
: Subtract minutes from the active timer, exampleSubXMinutes#5$
will subtract 5 minutesInitList
: Clear the whole list & Create a new timer which has the properties of the Default new timerPreview
: Preview modePresenter
: Presenter mode
Fullscreen
,Preview
, andPresenter
commands accept additional parameter that can be passed after#
- accepted values are (
toggle
|on
|off
) - for backward backward compatibility, CueTimer also supports
undefined
and empty string as a value and they will act as toggle. - Examples:
Fullscreen#on$
Fullscreen#off$
Fullscreen#toggle$
,Fullscreen$
, andFullscreen#undefined$
will act as toggle
Once the client is connected to CueTimer it will continuously receive info every 200ms. This will be JSON string that has a $
as a termination char at the very end.
{
"h": "0",
"m": "31",
"s": "8",
"fg": "#FFFFFFFF",
"bg": "#FF696969",
"speed": "100",
"name": "",
"endTime": "22:12:37",
"Fullscreen": false,
"Preview": false,
"Presenter": false,
"NDI": false,
"Message": false,
"STM": false,
"Clock": false,
"Pause": false,
"Blackout": false,
"nextTimerName": "",
"nextTimerDuration": "01:00:00",
"scheduleOffset": "-00:05:01",
"scheduleOffsetStatus": "Ahead",
"timers": {
"1": {
"name": "",
"duration": "00:10:00",
"bg": "#000000"
},
"2": {
"name": "",
"duration": "01:00:00",
"bg": "#FF0000"
}
}
}$
h
: hoursm
: minutess
: secondsfg
: Foreground color in ARGB format (send #FF000000 if user clicked blackout)bg
: Background color in ARGB format (send #FF000000 if user clicked blackout)speed
: The percentage speedname
: Timer nameendTime
: in ["hh:mm:ss"] format. (send "" if it has no value).Fullscreen
: State of Fullscreen mode (Boolean)Preview
: State of Preview mode (Boolean)Presenter
: State of Presenter mode (Boolean)NDI
: State of (Boolean)Message
: State of Message visibility (Boolean)STM
: State of Single timer mode (Boolean)Clock
: State of Clock screen (Boolean)Pause
: State of pause button (Boolean)Blackout
: State of Blackout button (Boolean)nextTimerName
nextTimerDuration
scheduleOffset
: shows the difference between the end-time in the current red timer, and the next start-time in formathh:mm:ss
. It can be +ve or -vescheduleOffsetStatus
: These commands could be useful if you want to have specific behaviour when the show is delayed or ahead it can have one of the 3 valuesDelayed
,Ahead
,NA
timers
: name, duration & background of the timers in the list, please not that you will only receive data of timers having their IDs set to a value.