Repository navigation
Reference Script Functions Wavelink
Also on the Cuebot Docs site.
Functions for C# (Cb.Call) and Python (a cb method each, or cb.call). See Script functions for how to use them.
Sends an app's sound to a Wave Link channel, like putting Spotify on the Music channel. Only for Wave Link 3. Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
channel |
channel |
The channel, by name or id, like "Music" or "Game". |
app |
app |
Optional. The app, by name or id, like "Spotify". Leave it empty for the app that is in front right now. |
Gives back: The name of the app that was moved.
C#
var answer = await Cb.Call("wavelink.addAppToChannel", new { channel = "Music", app = "Spotify" });Python
answer = cb.wavelink_add_app_to_channel(channel="Music", app="Spotify")Plays a Wave Link mix on an output device. Only for Wave Link 3. Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
device |
device |
The output device, by name or id, like "Headphones". |
mix |
mix |
The mix, by name or id, like "Stream Mix" or "Monitor Mix". |
Gives back: true when done.
C#
var answer = await Cb.Call("wavelink.addOutputToMix", new { device = "Speakers", mix = "Monitor Mix" });Python
answer = cb.wavelink_add_output_to_mix(device="Speakers", mix="Monitor Mix")Looks for Wave Link and starts connecting. It does not wait: Cuebot keeps trying in the background. Wave Link only runs on Windows and macOS.
Gives back: true when Wave Link can run on this computer (connecting has started), false when it cannot (for example on Linux).
C#
var answer = await Cb.Call("wavelink.connect");Python
answer = cb.wavelink_connect()Disconnects Cuebot from Wave Link.
Gives back: true when done.
C#
var answer = await Cb.Call("wavelink.disconnect");Python
answer = cb.wavelink_disconnect()Lists your Wave Link channels (in Wave Link 1.x/2.x: inputs) and how they are set.
Gives back: A list of channels. Each has id, name, type, muted, volume, mixes (mute, volume and filterBypassed per mix), effects (name, enabled) and apps.
C#
var answer = await Cb.Call("wavelink.getChannels");Python
answer = cb.wavelink_get_channels()Lists your Wave Link input devices (in Wave Link 1.x/2.x: microphones) and their settings.
Gives back: A list of devices. Each has id, name, type and inputs (muted, gain, gainDb, gainLocked, micPcMix, lowCut, clipGuard).
C#
var answer = await Cb.Call("wavelink.getInputDevices");Python
answer = cb.wavelink_get_input_devices()Lists your Wave Link mixes, like Stream Mix and Monitor Mix.
Gives back: A list of mixes. Each has id, name, muted and volume.
C#
var answer = await Cb.Call("wavelink.getMixes");Python
answer = cb.wavelink_get_mixes()Lists your Wave Link output devices, like headphones and speakers.
Gives back: main (the main output's name), monitoredMix (the mix you hear) and devices (each with id, name and outputs: muted, volume, mixId).
C#
var answer = await Cb.Call("wavelink.getOutputDevices");Python
answer = cb.wavelink_get_output_devices()Tells you about the Wave Link connection and what Cuebot found in it.
Gives back: isConnected, isAvailable, status (a status line), api ("3" for Wave Link 3, "legacy" for 1.x/2.x), port, interfaceRevision and how many channels, mixes, inputDevices and outputDevices there are.
C#
var answer = await Cb.Call("wavelink.getStatus");Python
answer = cb.wavelink_get_status()Checks whether Cuebot is connected to Elgato Wave Link right now.
Gives back: true while connected, otherwise false.
C#
var answer = await Cb.Call("wavelink.isConnected");Python
answer = cb.wavelink_is_connected()Turns an effect on a Wave Link channel on or off (in Wave Link 1.x/2.x: an input filter). Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
channel |
channel |
The channel, by name or id, like "Music" or "Game". |
effect |
effect |
The effect or filter, by name or id, like "Noise Gate". |
state |
state |
Optional. "Enabled", "Disabled" or "Toggle" (switch). Default "Toggle". |
Gives back: The new state: true for on, false for off.
C#
var answer = await Cb.Call("wavelink.setChannelEffect", new { channel = "Microphone", effect = "Noise Gate", state = "Enabled" });Python
answer = cb.wavelink_set_channel_effect(channel="Microphone", effect="Noise Gate", state="Enabled")Mutes or unmutes a Wave Link channel. Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
channel |
channel |
The channel, by name or id, like "Music" or "Game". |
mix |
mix |
Optional. Only in this mix, like "Stream Mix". Leave it empty for the whole channel (Wave Link 1.x/2.x: both mixes). |
state |
state |
Optional. "Muted", "NotMuted" or "Toggle" (switch). Default "Toggle". |
Gives back: The new state: true when muted, false when not.
C#
var answer = await Cb.Call("wavelink.setChannelMute", new { channel = "Music", mix = "Stream Mix", state = "Muted" });Python
answer = cb.wavelink_set_channel_mute(channel="Music", mix="Stream Mix", state="Muted")Changes the volume of a Wave Link channel. Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
channel |
channel |
The channel, by name or id, like "Music" or "Game". |
volume |
volume |
The volume in percent, 0-100, like 50. |
mix |
mix |
Optional. Only in this mix, like "Stream Mix". Leave it empty for the channel itself. |
relative |
relative |
Optional. true adds the number to the current value instead (use a minus number to go down). Default false. |
Gives back: The new volume.
C#
var answer = await Cb.Call("wavelink.setChannelVolume", new { channel = "Music", volume = 30 });Python
answer = cb.wavelink_set_channel_volume(channel="Music", volume=30)Skips (bypasses) all filters on a Wave Link input, or turns them back on. Only for Wave Link 1.x/2.x. Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
channel |
channel |
The channel, by name or id, like "Music" or "Game". |
mix |
mix |
Optional. Only in this mix, like "Stream Mix". Leave it empty for both mixes. |
state |
state |
Optional. "Bypassed", "NotBypassed" or "Toggle" (switch). Default "Toggle". |
Gives back: The new state: true when the filters are skipped, false when they work.
C#
var answer = await Cb.Call("wavelink.setFilterBypass", new { channel = "Microphone", state = "Bypassed" });Python
answer = cb.wavelink_set_filter_bypass(channel="Microphone", state="Bypassed")Turns Clipguard (it stops your mic from distorting when you get loud) of a Wave Link input on or off. Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
device |
device |
The input device or microphone, by name or id, like "Wave:3". |
state |
state |
Optional. "On", "Off" or "Toggle" (switch). Default "Toggle". |
Gives back: The new state: true for on, false for off.
C#
var answer = await Cb.Call("wavelink.setInputClipGuard", new { device = "Wave:3", state = "On" });Python
answer = cb.wavelink_set_input_clip_guard(device="Wave:3", state="On")Changes the gain (how loud the mic picks you up) of a Wave Link input. Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
device |
device |
The input device or microphone, by name or id, like "Wave:3". |
gain |
gain |
The gain. Wave Link 3: 0-100 percent. Wave Link 1.x/2.x: the microphone's own gain number. |
relative |
relative |
Optional. true adds the number to the current value instead (use a minus number to go down). Default false. |
Gives back: The new gain.
C#
var answer = await Cb.Call("wavelink.setInputGain", new { device = "Wave:3", gain = 60 });Python
answer = cb.wavelink_set_input_gain(device="Wave:3", gain=60)Turns the low cut filter (it removes deep rumble) of a Wave Link input on or off. Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
device |
device |
The input device or microphone, by name or id, like "Wave:3". |
state |
state |
Optional. "On", "Off" or "Toggle" (switch). Default "Toggle". |
Gives back: The new state: true for on, false for off.
C#
var answer = await Cb.Call("wavelink.setInputLowCut", new { device = "Wave:3", state = "On" });Python
answer = cb.wavelink_set_input_low_cut(device="Wave:3", state="On")Mutes or unmutes a Wave Link input device, like your microphone. Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
device |
device |
The input device or microphone, by name or id, like "Wave:3". |
state |
state |
Optional. "Muted", "NotMuted" or "Toggle" (switch). Default "Toggle". |
Gives back: The new state: true when muted, false when not.
C#
var answer = await Cb.Call("wavelink.setInputMute", new { device = "Wave:3", state = "Muted" });Python
answer = cb.wavelink_set_input_mute(device="Wave:3", state="Muted")Picks the main output device in Wave Link: where you listen. Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
device |
device |
The output device, by name or id, like "Headphones". |
Gives back: The name of the new main output.
C#
var answer = await Cb.Call("wavelink.setMainOutput", new { device = "Headphones" });Python
answer = cb.wavelink_set_main_output(device="Headphones")Changes the Mic/PC balance of a Wave Link input: how much of your mic versus your computer sound you hear. Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
device |
device |
The input device or microphone, by name or id, like "Wave:3". |
balance |
balance |
The balance, 0-100, like 50. |
relative |
relative |
Optional. true adds the number to the current value instead (use a minus number to go down). Default false. |
Gives back: The new balance.
C#
var answer = await Cb.Call("wavelink.setMicPcBalance", new { device = "Wave:3", balance = 50 });Python
answer = cb.wavelink_set_mic_pc_balance(device="Wave:3", balance=50)Mutes or unmutes a whole Wave Link mix. Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
mix |
mix |
The mix, by name or id, like "Stream Mix" or "Monitor Mix". |
state |
state |
Optional. "Muted", "NotMuted" or "Toggle" (switch). Default "Toggle". |
Gives back: The new state: true when muted, false when not.
C#
var answer = await Cb.Call("wavelink.setMixMute", new { mix = "Stream Mix", state = "Muted" });Python
answer = cb.wavelink_set_mix_mute(mix="Stream Mix", state="Muted")Changes the volume of a whole Wave Link mix. Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
mix |
mix |
The mix, by name or id, like "Stream Mix" or "Monitor Mix". |
volume |
volume |
The volume in percent, 0-100, like 80. |
relative |
relative |
Optional. true adds the number to the current value instead (use a minus number to go down). Default false. |
Gives back: The new volume.
C#
var answer = await Cb.Call("wavelink.setMixVolume", new { mix = "Monitor Mix", volume = 80 });Python
answer = cb.wavelink_set_mix_volume(mix="Monitor Mix", volume=80)Picks which Wave Link mix you hear on your main output. Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
mix |
mix |
The mix, by name or id, like "Stream Mix" or "Monitor Mix". |
Gives back: The name of the mix you hear now.
C#
var answer = await Cb.Call("wavelink.setMonitoredMix", new { mix = "Stream Mix" });Python
answer = cb.wavelink_set_monitored_mix(mix="Stream Mix")Changes the volume of a Wave Link output device. Only for Wave Link 3. Fails with an error when Wave Link is not connected.
| Value | In Python | What to put in |
|---|---|---|
device |
device |
The output device, by name or id, like "Headphones". |
volume |
volume |
The volume in percent, 0-100, like 70. |
relative |
relative |
Optional. true adds the number to the current value instead (use a minus number to go down). Default false. |
Gives back: The new volume.
C#
var answer = await Cb.Call("wavelink.setOutputVolume", new { device = "Headphones", volume = 70 });Python
answer = cb.wavelink_set_output_volume(device="Headphones", volume=70)Switches what you hear between Monitor Mix and Stream Mix. Only for Wave Link 1.x/2.x; Wave Link 3 fails with an error (use wavelink.setMonitoredMix). Fails with an error when Wave Link is not connected.
Gives back: The name of the mix you hear now.
C#
var answer = await Cb.Call("wavelink.switchMonitoring");Python
answer = cb.wavelink_switch_monitoring()Cuebot by Tech Daddy Digital · MIT license · Privacy
Cuebot Docs (the same pages, nicer to read)
- Home
- Start here
-
Guides
- Chat commands
- Overlays and alerts
- Writing your own overlay widgets
- Text-to-speech
- Music and now playing
- Points, store and giveaways
- Subathons and goals
- Stream apps and devices
- VTuber apps
- Stream Deck
- The phone app
- Donations and integrations
- Discord bot
- The setup assistant and AI tools
- The assistant on your own computer
- Moving from Streamer.bot
- Cuebot's servers
- Writing code (C# and Python)
- Python in detail
- Using your own code editor
- Controlling Cuebot from other programs
- Backups and your data
- Linux
- Command-line options
- Troubleshooting
- What's experimental
- Reference
