Zum Inhalt springen
  • Dunkel
  • Hell
  • System

Channel-Point-Rewards Setup

Bevor du Reward-Actions baust, kläre ein wichtiges Detail: Wer hat das Reward angelegt. Streamer.bot oder Twitch direkt?

AnlegtTrigger funktioniertRefund via SB möglich
In Twitch Dashboard✅ Ja❌ Nein
In Streamer.bot UI✅ Ja✅ Ja

Konsequenz: Wenn du einen Reward willst der bei Fehler die Channel Points zurückgibt (z.B. “Skip Song” wenn die Skip-Action fehlschlägt), MUSS der Reward in Streamer.bot angelegt sein. Im Twitch-Dashboard angelegte Rewards kannst du nicht via Update Redemption Status zurückerstatten.

  1. Action öffnen → Tab Triggers+ Add Trigger
  2. Twitch → Channel Reward → Reward Redemption
  3. Im Dialog: Create Reward Button (rechts oben)
  4. Felder ausfüllen:
FeldBeschreibungBeispiel
TitleAnzeige-NameHydrate Reminder
CostChannel-Points-Preis500
PromptBeschreibung für ViewerErinner mich ans Trinken
Background ColorHex-Farbe (optional)#9147FF
Skip Request QueueAuto-fulfill ohne Queue?true für simple Rewards
Max Per StreamLimit pro Streamleer = unlimited
Max Per User Per StreamLimit pro User5
Global CooldownSekunden Cooldown60
User Input RequiredViewer muss Text eingeben?meist false

Save → Reward erscheint in Twitch und in der SB Reward-Liste.

  1. Linkes Pane → Tab Twitch → Sub-Tab Channel Points
  2. Rechtsklick → + Add Reward
  3. Gleiche Felder wie oben

Sobald der Reward existiert, kannst du eine Action damit verknüpfen:

  1. Action [Reward] Hydrate Reminder anlegen
  2. Triggers-Tab → + Add TriggerTwitch → Channel Reward → Reward Redemption
  3. Reward Filter → das angelegte Reward auswählen
  4. Save

Jetzt feuert die Action wenn jemand dieses spezifische Reward einlöst.

Du kannst auch eine Catch-all-Action machen die auf JEDES Reward reagiert:

| Reward Filter | Any |

In der Action kannst du dann via If/Else auf %rewardId% oder %rewardName% verzweigen.

[Reward] Catch-All
├── 1. If/Else: %rewardName% Equals "Hydrate Reminder"
│ ├── ... hydrate-logic ...
│ └── Break
├── 2. If/Else: %rewardName% Equals "Skip Song"
│ ├── ... skip-song-logic ...
│ └── Break
└── 3. (default-handling)

Vorteil: Eine Action für alles, übersichtlich. Nachteil: Mit vielen Rewards wird die Action lang. Pro Reward eine eigene Action ist sauberer.

Twitch hat zwei Modi für Rewards:

ModusVerhalten
Skip Request QueueReward wird sofort gefulfilled, keine Mod-Bestätigung nötig
Skip Request QueueReward landet in der Queue, Mod muss approven/cancel

Für SB-Actions empfiehlt sich Skip Queue = ✅ plus eigene Refund-Logik bei Fehler (siehe refund-pattern.md). Sonst musst du nach jedem Reward in OBS/Twitch klicken um approven.

Sub-Actions zum Bulk-Management:

Sub-ActionWas sie tut
Twitch → Rewards → Set Enabled StateEinzelnes Reward an/aus
Twitch → Rewards → Set Paused StateEinzelnes Reward pausieren
Twitch → Rewards → Set Group Enabled StateAlle Rewards einer Gruppe an/aus
Twitch → Rewards → Set CostReward-Preis ändern
Twitch → Rewards → Set TitleReward-Name ändern
Twitch → Rewards → Configure RewardsMehrere Rewards verwalten (group-based)

Use-Case: Rewards beim Stream-Start automatisch aktivieren, beim Stream-Ende deaktivieren.

[Sys] Stream Start. Enable Rewards (Trigger: Stream Online)
└── Set Group Enabled State: Group = "Stream Rewards", Enabled = true
[Sys] Stream End. Disable Rewards (Trigger: Stream Offline)
└── Set Group Enabled State: Group = "Stream Rewards", Enabled = false
RewardMDPatterns
Hydrate Reminderhydrate-reminder.mdReward Trigger + Send Message + OBS-Source-Flash
Skip Songskip-song.mdReward Trigger + Update Redemption Status (Refund on Fail)
Custom Title (mit Text-Input)custom-title.mdReward Trigger + %userInput% + Set Channel Title
Refund-Patternrefund-pattern.mdUpdate Redemption Status für Refunds
  • Twitch-angelegte Rewards zeigen kein Trigger-Filter: SB sieht sie zwar, aber Update Redemption Status funktioniert nicht. Reward in SB neu anlegen
  • Reward Cost in SB vs Twitch divergent: wenn du Cost im Twitch-Dashboard änderst, syncs SB nicht sofort. SB-UI öffnen + refresh
  • Skip-Queue mit Mod-Approval verwirrt User: bei langen Queues sehen Viewer ihre Reward-Anfrage nicht als “fulfilled”. Skip Queue = ✅ macht’s transparenter