Event: Sub/Gift → Discord
FortgeschrittenZwei Actions: einmal für Single-Subs, einmal für Gift-Subs. Gift-Bombs werden 10 s gepuffert und als eine Discord-Message gepostet statt 100×.
- Steps
- 5
- Cooldown
- 0s/User
- Cooldown
- 0sglobal
- Zugriff
- Broadcaster
Zwei Actions: einmal für Single-Subs, einmal für Gift-Subs. Gift-Bombs werden 10 s gepuffert und als eine Discord-Message gepostet statt 100×.
Zwei Actions hier:
Beide nutzen den gleichen Webhook, aber unterschiedliche Trigger.
[Event] Sub → DiscordTrigger: Twitch > Subscriptions > Subscription (Prime + T1 + T2 + T3 aktivieren).
Setzt Argument %user% Twitch-Login des Subbers.
Variablen-Doku , Argument %subTier% String. 'Prime', '1000', '2000', '3000'.
Variablen-Doku , Argument %months% Cumulative Months.
Variablen-Doku , Argument %message% Sub-Message vom Subber (kann leer sein).
Variablen-Doku .
Mapping Tier → Emoji für die Discord-Message.
| Name | tierEmoji |
|---|---|
| Value | 💎 |
Pro Tier eigenes Emoji setzen. Default ist 💎 für Prime.
| Input | %subTier% |
|---|---|
| Operation | Equals |
| Value | 2000 |
| Name | tierEmoji |
|---|---|
| Value | 🔥 |
| Input | %subTier% |
|---|---|
| Operation | Equals |
| Value | 3000 |
| Name | tierEmoji |
|---|---|
| Value | 👑 |
Multi-Line Post mit Tier-Emoji, Username, Months.
| Webhook Name | Sub-Feed |
|---|---|
| Webhook URL | https://discord.com/api/webhooks/... |
| Username | AzaCraft Subs |
| Content | %tierEmoji% **%user%** subbed. Month %months%
> %message% |
[Event] Gift-Sub → Discord (Buffered)Trigger: Twitch > Subscriptions > Gift Subscription.
Setzt Argument %user% Twitch-Login des Gifters.
Variablen-Doku , Argument %gifts% Anzahl der gerade gepushten Gifts.
Variablen-Doku .
Pattern: bei einem Gift-Bomb-Event mit 100 Subs feuert SB den Trigger mehrfach (1× pro Sub oder 1× pro Bomb-Bundle: je nach Twitch-API-Lieferung). Statt jedes Mal direkt zu posten, sammelt der Buffer alle Gifts vom gleichen Gifter über 10 s und schickt EINE konsolidierte Discord-Message.
Per Gifter ein eigener Buffer-Key. Wert wird kumuliert.
| Global Name | discordGiftBuffer_%user% |
|---|---|
| Value | %gifts% |
| Persisted | aus |
Wenn ja, einfach raus: der Timer postet später alles.
| Input | %discordGiftTimerActive_user% |
|---|---|
| Operation | Equals |
| Value | true |
Erster Gift hat den Timer schon gestartet: nichts mehr zu tun.
| Global Name | discordGiftTimerActive_%user% |
|---|---|
| Value | true |
| Persisted | aus |
10 Sekunden warten, damit alle Gifts der gleichen Bomb reinkommen.
| Duration | 10000 ms |
|---|
Holt den finalen Gift-Count, postet, resetted die Buffer-Keys.
| Get Global | discordGiftBuffer_%user% → totalGifts |
|---|---|
| Webhook Content | 🎁 **%user%** hat **%totalGifts% Subs** gegiftet. Danke! |
| Set Global | discordGiftBuffer_%user% = 0 |
| Set Global | discordGiftTimerActive_%user% = false |
| Event | Discord-Post |
|---|---|
| Single T1 Sub | 💎 **Alice** subbed. Month 1 |
| Single T2 Sub | 🔥 **Bob** subbed. Month 14 > yo das war hart |
| Single T3 Sub | 👑 **Carla** subbed. Month 36 |
| 5 Gift-Subs | 🎁 **Dave** hat **5 Subs** gegiftet. Danke! (nach 10 s gebufferter Post) |
| 100 Gift-Subs | 🎁 **Eve** hat **100 Subs** gegiftet. Danke! (ein Post statt 100) |
In der stream-offline Action zusätzlich:
Global Set: discordGiftBuffer_* = 0 (alle Buffer-Keys per Wildcard nicht möglich: manuell pro bekanntem User)Pragmatischer: Buffer-Keys mit Persisted = aus setzen, dann sind sie nach SB-Neustart automatisch weg. Bei laufendem SB bleiben sie: aber sie zählen nicht falsch hoch, weil der Timer-Flag auch resetted wird.
%user% ist dann AnAnonymousGifter. Discord-Post zeigt das, ist okaydiscordGiftBuffer_alice, _bob, _carla etc. Persisted Globals: manuell aufräumen oder Persisted = aus**bold** in der Sub-Message, Discord rendert das. Wer Plain-Text will: in der Action vorher per $replace(%message%,**,)$ strippen> bleibt. Pre-Check mit If/Else auf empty + Quote weglassentopGifters mit JSON-Array, am Stream-Ende Top-3 ins Discord