Streamer.bot Twitch Shoutout Clip System
Quote from Mrr Zed0 on March 20, 2026, 3:26 amA Streamer.bot C# script setup that:
- Removes
@from usernames in shoutout commands- Fetches a random Twitch clip from the target user
- Sends clip data to OBS for playback
- Falls back gracefully if no clips exist
- Automatically removes
@username- Fetches random Twitch clips via API
- Sends clip to OBS Browser Source
- Supports mute/unmute playback
- Auto-calculates clip duration
- Detects when user has no clips
Create these arguments in Streamer.bot before running the scripts.
noclipsforuser (bool)
true = no clips found
false = clips foundclipUrl (string)
Twitch embed clip URLclipDuration (number)
Duration in milliseconds
- muteClip (bool)
true = muted
false = sound enabled
Get credentials here:
https://twitchtokengenerator.com/
- twitch_clientId
- twitch_token
After running the script:
Set Browser Source URL
→ Use:clipUrlEnable Browser Source
Add Delay
→ Use:clipDuration
OR set custom (example: 10000 ms)Disable Browser Source
Add an IF condition after the script:
If
noclipsforuser == true
→ Send chat shoutoutIf
noclipsforuser == false
→ Play OBS clip overlay
!so @username ↓ Script 1 (remove @) ↓ Script 2 (fetch clip) ↓ IF noclipsforuser → Chat shoutout ELSE → Play clip in OBS
You now have a fully automated shoutout system that:
- Plays random Twitch clips
- Handles users with no clips
- Integrates with OBS
parent=localhostmust match your OBS setup- Twitch API rate limits apply
- Make sure OBS Browser Source is enabled
A Streamer.bot C# script setup that:
- Removes
@from usernames in shoutout commands - Fetches a random Twitch clip from the target user
- Sends clip data to OBS for playback
- Falls back gracefully if no clips exist
- Automatically removes
@username - Fetches random Twitch clips via API
- Sends clip to OBS Browser Source
- Supports mute/unmute playback
- Auto-calculates clip duration
- Detects when user has no clips
Create these arguments in Streamer.bot before running the scripts.
-
noclipsforuser (bool)
true = no clips found
false = clips found -
clipUrl (string)
Twitch embed clip URL -
clipDuration (number)
Duration in milliseconds
- muteClip (bool)
true = muted
false = sound enabled
Get credentials here:
https://twitchtokengenerator.com/
- twitch_clientId
- twitch_token
After running the script:
-
Set Browser Source URL
→ Use:clipUrl -
Enable Browser Source
-
Add Delay
→ Use:clipDuration
OR set custom (example: 10000 ms) -
Disable Browser Source
Add an IF condition after the script:
If noclipsforuser == true
→ Send chat shoutout
If noclipsforuser == false
→ Play OBS clip overlay
!so @username ↓ Script 1 (remove @) ↓ Script 2 (fetch clip) ↓ IF noclipsforuser → Chat shoutout ELSE → Play clip in OBS
You now have a fully automated shoutout system that:
- Plays random Twitch clips
- Handles users with no clips
- Integrates with OBS
parent=localhostmust match your OBS setup- Twitch API rate limits apply
- Make sure OBS Browser Source is enabled
