Skip to content

GoXLR script functions

Functions for C# (Cb.Call) and Python (cb.call). See Script functions for how to use them.

goxlr.command

Sends a raw command to the GoXLR Utility. For advanced users who know the GoXLR Utility's command names.

Value What to put in
command The command, like {"SetFXEnabled": true}. You can also give it as JSON text.
serial Optional. The serial number of the GoXLR to send it to. Leave it out for your main GoXLR.

Gives back: true when done.

var answer = await Cb.Call("goxlr.command", new { command = new { SetFXEnabled = true } });
answer = cb.call("goxlr.command", command={"SetFXEnabled": True})

goxlr.connect

Starts connecting to the GoXLR Utility. It does not wait: Cuebot keeps trying in the background until it works.

Gives back: true once connecting has started (not when it is connected).

var answer = await Cb.Call("goxlr.connect");
answer = cb.call("goxlr.connect")

goxlr.disconnect

Disconnects Cuebot from the GoXLR Utility.

Gives back: true when done.

var answer = await Cb.Call("goxlr.disconnect");
answer = cb.call("goxlr.disconnect")

goxlr.getRawStatus

Gives you everything the GoXLR Utility reports, exactly as it sends it. For advanced scripts.

Gives back: The utility's whole status as JSON text. Empty text when nothing was received yet.

var answer = await Cb.Call("goxlr.getRawStatus");
answer = cb.call("goxlr.getRawStatus")

goxlr.getStatus

Tells you about the GoXLR Utility connection and your GoXLR: profiles, faders, volumes, mutes and effects.

Gives back: isConnected, status (a status line), url, daemonVersion, devices (each GoXLR with its profile, faders, volumes in percent, cough button, effects and sampler bank), profiles, micProfiles and presets.

var answer = await Cb.Call("goxlr.getStatus");
answer = cb.call("goxlr.getStatus")

goxlr.isConnected

Checks whether Cuebot is connected to the GoXLR Utility right now.

Gives back: true while connected, otherwise false.

var answer = await Cb.Call("goxlr.isConnected");
answer = cb.call("goxlr.isConnected")

goxlr.loadMicProfile

Loads one of your GoXLR mic profiles. Fails with an error when the GoXLR Utility is not connected.

Value What to put in
name The mic profile name as the GoXLR Utility shows it, like "Dynamic Mic".
remember Optional. true makes the GoXLR Utility load this mic profile again next time it starts. Default true.

Gives back: true when done.

var answer = await Cb.Call("goxlr.loadMicProfile", new { name = "Dynamic Mic" });
answer = cb.call("goxlr.loadMicProfile", name="Dynamic Mic")

goxlr.loadProfile

Loads one of your GoXLR profiles. Fails with an error when the GoXLR Utility is not connected.

Value What to put in
name The profile name as the GoXLR Utility shows it, like "Streaming".
remember Optional. true makes the GoXLR Utility load this profile again next time it starts. Default true.

Gives back: true when done.

var answer = await Cb.Call("goxlr.loadProfile", new { name = "Streaming" });
answer = cb.call("goxlr.loadProfile", name="Streaming")

goxlr.playSample

Plays a sample from a sampler button, as if you pressed it. The GoXLR Mini has no sampler, so it fails with an error there.

Value What to put in
bank Optional. The bank: "A", "B" or "C". Leave it empty for the bank that is active now.
button The button: "TopLeft", "TopRight", "BottomLeft" or "BottomRight".
index Optional. Which sample on that button, counting from 1. Leave it out to play the button's next sample.

Gives back: bank and button that were played.

var answer = await Cb.Call("goxlr.playSample", new { button = "TopLeft" });
answer = cb.call("goxlr.playSample", button="TopLeft")

goxlr.request

Sends any raw request to the GoXLR Utility and gives back its answer. For advanced users.

Value What to put in
request The request, like "GetStatus" or {"Command": [...]}. You can also give it as JSON text.

Gives back: The GoXLR Utility's answer data, like "Ok" or the status object.

var answer = await Cb.Call("goxlr.request", new { request = "GetStatus" });
answer = cb.call("goxlr.request", request="GetStatus")

goxlr.setCoughMute

Mutes or unmutes your mic with the cough button (on a GoXLR Mini: the mic mute button). Fails with an error when the GoXLR Utility is not connected.

Value What to put in
state Optional. "Mute", "Mute to all", "Unmute" or "Toggle" (switch). Default "Toggle".

Gives back: The new mute state: "Unmuted", "MutedToX" or "MutedToAll".

var answer = await Cb.Call("goxlr.setCoughMute", new { state = "Mute" });
answer = cb.call("goxlr.setCoughMute", state="Mute")

goxlr.setEffect

Turns a voice effect on or off. The GoXLR Mini has no effects, so it fails with an error there.

Value What to put in
effect The effect: "FX", "Megaphone", "Robot" or "Hard Tune".
state Optional. "On", "Off" or "Toggle" (switch). Default "Toggle".

Gives back: The new state: true for on, false for off.

var answer = await Cb.Call("goxlr.setEffect", new { effect = "Robot", state = "On" });
answer = cb.call("goxlr.setEffect", effect="Robot", state="On")

goxlr.setEffectPreset

Picks one of the six effect presets. The GoXLR Mini has no effects, so it fails with an error there.

Value What to put in
preset The preset number 1-6, like "3", or its name.

Gives back: The preset that is now active, like "Preset3".

var answer = await Cb.Call("goxlr.setEffectPreset", new { preset = "3" });
answer = cb.call("goxlr.setEffectPreset", preset="3")

goxlr.setFaderChannel

Puts a different channel on one of the GoXLR faders. Fails with an error when the GoXLR Utility is not connected.

Value What to put in
fader The fader letter: A, B, C or D.
channel The channel to put on it, like "Game" or "Music".

Gives back: true when done.

var answer = await Cb.Call("goxlr.setFaderChannel", new { fader = "B", channel = "Game" });
answer = cb.call("goxlr.setFaderChannel", fader="B", channel="Game")

goxlr.setFaderMute

Mutes or unmutes one GoXLR fader. Fails with an error when the GoXLR Utility is not connected or the channel is not on a fader.

Value What to put in
target The fader letter A, B, C or D, or the channel on it, like "Music".
state Optional. "Mute", "Mute to all", "Unmute" or "Toggle" (switch). Default "Toggle".

Gives back: The new mute state: "Unmuted", "MutedToX" or "MutedToAll".

var answer = await Cb.Call("goxlr.setFaderMute", new { target = "Music", state = "Mute" });
answer = cb.call("goxlr.setFaderMute", target="Music", state="Mute")

goxlr.setGlobalColour

Changes the colour of all the lights on your GoXLR. Fails with an error when the colour is not a hex colour.

Value What to put in
colour The colour as a hex code, like "#FF8800".

Gives back: true when done.

var answer = await Cb.Call("goxlr.setGlobalColour", new { colour = "#9146FF" });
answer = cb.call("goxlr.setGlobalColour", colour="#9146FF")

goxlr.setRouting

Sends a GoXLR input to an output, or stops it, like the Routing table in the GoXLR Utility.

Value What to put in
input The input: Microphone, Chat, Music, Game, Console, LineIn, System or Samples.
output The output: Headphones, BroadcastMix, ChatMic, Sampler, LineOut or StreamMix2.
state Optional. "On", "Off" or "Toggle" (switch). Default "Toggle".

Gives back: The new state: true when the input goes to the output, false when not.

var answer = await Cb.Call("goxlr.setRouting", new { input = "Music", output = "BroadcastMix", state = "Off" });
answer = cb.call("goxlr.setRouting", input="Music", output="BroadcastMix", state="Off")

goxlr.setSamplerBank

Switches the sampler to bank A, B or C. The GoXLR Mini has no sampler, so it fails with an error there.

Value What to put in
bank The bank: "A", "B" or "C".

Gives back: true when done.

var answer = await Cb.Call("goxlr.setSamplerBank", new { bank = "B" });
answer = cb.call("goxlr.setSamplerBank", bank="B")

goxlr.setVolume

Changes the volume of one GoXLR channel. Fails with an error when the GoXLR Utility is not connected.

Value What to put in
channel The channel: Mic, LineIn, Console, System, Game, Chat, Sample, Music, Headphones, MicMonitor or LineOut.
volume The volume in percent, 0-100, like 80.
relative Optional. true adds the number to the current volume instead (use a minus number to turn it down). Default false.

Gives back: The new volume in percent.

var answer = await Cb.Call("goxlr.setVolume", new { channel = "Music", volume = 40 });
answer = cb.call("goxlr.setVolume", channel="Music", volume=40)

goxlr.stopSample

Stops the sample that a sampler button is playing.

Value What to put in
bank Optional. The bank: "A", "B" or "C". Leave it empty for the bank that is active now.
button The button: "TopLeft", "TopRight", "BottomLeft" or "BottomRight".

Gives back: bank and button that were stopped.

var answer = await Cb.Call("goxlr.stopSample", new { button = "TopLeft" });
answer = cb.call("goxlr.stopSample", button="TopLeft")