Farbthema

Automationen

Eranio Veröffentlicht am: 13. Oktober 2026

Automationen

Diese Seite ist das Baukasten-Herz deines Bots: du verknüpfst einen Auslöser (ein Chat-Befehl, eine Kanalpunkte-Belohnung, ein TikTok-Geschenk, ein TikTok-Ereignis oder ein gesprochenes Wort) mit einer Aktion (ein Zähler, eine Text-Antwort, Punkte vergeben, ein Overlay-Alarm und viele mehr). Jede Automation ist eine eigenständige Regel: "Wenn X passiert, mach Y."

Menü: Bot → Automationen

Überblick über die Seite

Oben siehst du zwei kleine Einstellungsfelder für die Meta-Befehle (dazu gleich mehr), danach die Kopfzeile mit den Aktionen Aktions-Übersicht, Sprachsteuerung öffnen, Neue Automation und der Gruppe Datenverwaltung (StreamElements-Import, JSON-Import, Export). Darunter folgt die Tabelle mit allen bereits angelegten Automationen: Name, Auslöser, Aktion, Berechtigung und Status (aktiv/inaktiv), mit den Zeilen-Aktionen Bearbeiten, Aktivieren/Deaktivieren und Löschen.

Wenn noch keine Automation existiert, siehst du stattdessen den Hinweis "Noch keine Automationen. Erstelle deine erste!".

Die Meta-Befehle: Commands-Trigger und Minigames-Trigger

Ganz oben auf der Seite kannst du zwei feste Befehle einstellen:

Feld Was es macht Standard
Commands-Trigger Listet alle deine aktuell aktiven eigenen Befehle auf, z. B. "Commands: !discord, !social" !commands
Minigames-Trigger Listet alle aktivierten Minispiele mit ihren Befehlen auf, z. B. "Minigames: !slots, !coinflip, !roulette" !minigames

Beide Felder müssen mit ! beginnen. Gibst du ein Wort ohne ! ein, wird es automatisch vorangestellt. Lässt du ein Feld leer, springt es beim Speichern auf den jeweiligen Standard zurück.

Ruft ein Zuschauer deinen Commands-Trigger auf (z. B. !commands), listet der Bot alle aktiven Chat-Befehl-Automationen deines Kanals mit ihrem genauen Befehlswort auf. Gibt es noch keine, antwortet er mit einem Hinweis, dass du !addcmd benutzen kannst.

Eine neue Automation anlegen

Klicke auf Neue Automation. Das Formular besteht aus drei Teilen: Name, Auslöser und Aktion.

Name

Ein freier Name, den nur du auf der Seite siehst (bis zu 80 Zeichen). Er erscheint in der Tabelle und, bei bestimmten Aktionen, als Namensbestandteil in internen Log-Einträgen.

Auslöser-Typ

Diese Dokumentation behandelt die Twitch-Auslöser im Detail. Welche Auslöser-Typen dir angeboten werden, hängt davon ab, welche Plattformen du verbunden hast; ein Auslöser, der eine bestimmte Plattform braucht, zeigt deren Namen in Klammern an (z. B. "Kanalpunkte (Twitch)"), wenn nicht alle verbundenen Plattformen ihn unterstützen.

Chat-Befehl

Ein klassischer Chat-Befehl wie !checkin. Felder:

Feld Was es macht Standard
Befehl Das Wort, auf das der Bot reagiert. Muss mit ! beginnen, z. B. !checkin -
Gilt für Nur sichtbar, wenn du mehr als eine Plattform verbunden hast oder deine Chat-Befehle nicht mehr nur auf Twitch laufen sollen. Legt fest, auf welchen Plattformen dieser Befehl im Chat funktioniert. Antworten an TikTok erscheinen im Overlay-Widget "Bot-Meldung", weil der Bot dort nicht direkt in den Chat schreiben kann Twitch
Wer darf diesen Befehl nutzen? Berechtigungsstufe, siehe unten Alle

Ein Befehlswort kann je Kanal nur einmal vergeben werden. Versuchst du einen bereits vorhandenen Befehl anzulegen, erscheint die Meldung "Der Trigger :trigger existiert bereits in diesem Kanal."

Berechtigungsstufen (Feld "Wer darf diesen Befehl nutzen?"):

Stufe Wer darf es nutzen
Alle Jeder Zuschauer
Abonnenten Abonnenten und höher
Founder Founder und höher
VIPs VIPs und höher
Moderatoren Moderatoren und du selbst
Nur Streamer Nur du

Die Stufen sind gestaffelt: wer "Moderatoren" wählt, lässt automatisch auch dich selbst zu. Ruft ein Zuschauer unterhalb der nötigen Stufe den Befehl auf, passiert nichts. Der Bot antwortet nicht, es gibt keine Fehlermeldung im Chat, der Aufruf wird einfach stillschweigend ignoriert.

Kanalpunkte-Belohnung

Verknüpft eine echte Twitch-Kanalpunkte-Belohnung mit einer Aktion. Felder:

Feld Was es macht
Belohnung Wähle eine bestehende Belohnung aus deinem Kanal, oder lege direkt eine neue an (Titel + Kosten in Kanalpunkten)
Tageslimit (pro Zuschauer) 0 = unbegrenzt. Bei Überschreitung werden die Kanalpunkte automatisch zurückerstattet
Limit zurücksetzen Nur sichtbar, wenn das Tageslimit über 0 liegt. "Einmal täglich" oder "Bei jedem Stream-Start"
Nachricht bei erreichtem Tageslimit Optionale Chat-Nachricht, Platzhalter {user}
Nur erlauben, während der Kanal live ist? Standardmäßig aus. Aktiviert, funktioniert die Belohnung nur während des Streams; offline eingelöste Belohnungen werden automatisch zurückerstattet
Nachricht, wenn offline eingelöst wurde Optionale Chat-Nachricht, Platzhalter {user}

Das Tageslimit setzt sich bei "Einmal täglich" um 4 Uhr morgens zurück, nicht um Mitternacht, damit ein Stream, der über Mitternacht läuft, nicht mittendrin geteilt wird. "Bei jedem Stream-Start" sorgt zusätzlich dafür, dass bei mehreren Streams am selben Tag jeder Zuschauer das Limit pro Stream erneut nutzen kann.

Wählst du als Aktion den Zähl-Modus "Stream-Streak" (siehe Aktion "Counter / Zähler" unten), verschwinden das Tageslimit und "Nur während des Kanals live" aus dem Formular, mit dem Hinweis: "Der Stream-Streak-Zähler begrenzt bereits automatisch auf 1x pro Stream und erstattet Kanalpunkte selbst, ein zusätzliches Tageslimit ist hier nicht nötig und wird deshalb ausgeblendet." Diese Zähl-Variante regelt ihre eigene Begrenzung bereits intern.

Sprachbefehl

Das Mikrofon löst die Automation aus, nicht der Chat. Funktioniert auf Twitch und TikTok gleichermaßen, weil es nicht vom Chat abhängt. Einziges Feld:

Feld Was es macht
Auslösewort Das Wort, das du laut ins Mikrofon sagst, z. B. "Drache". Groß-/Kleinschreibung spielt keine Rolle

Die Spracherkennung läuft im Browser auf der Seite Live-Kontrollraum (über den Button "Sprachsteuerung öffnen" oben auf dieser Seite erreichbar) und muss dort aktiv sein, damit das Auslösewort erkannt wird. Es gibt bewusst kein lokal zu installierendes Programm; nur ein erkannter Treffer wird an den Server gesendet.

Ein Sprachbefehl hat keine Berechtigungsstufe und keinen Zuschauer-Namen (er läuft unter deinem eigenen Konto als Auslöser), deshalb sind in den Text-Platzhaltern einer per Sprache ausgelösten Aktion {user} usw. auf dich selbst bezogen.

TikTok-Gift und TikTok-Ereignis

TikTok: in Planung und Bearbeitung.

Die Aktion

Nach dem Auslöser wählst du im Feld Aktion, was passieren soll. Es gibt 25 Aktions-Typen. Über den Button Aktions-Übersicht oben auf der Seite öffnest du jederzeit eine Übersicht mit Beschreibung, einem Beispiel und allen Platzhaltern zu jeder Aktion.

Basis-Platzhalter

Diese Platzhalter funktionieren in (fast) jedem Text-Feld jeder Aktion, zusätzlich zu den aktionseigenen Platzhaltern weiter unten:

Platzhalter Bedeutung
{user} Wer die Aktion ausgelöst hat (mit @, nicht selbst noch ein @ davorschreiben)
{touser} Das per @Ziel genannte Gegenüber, sonst der Aufrufer selbst (mit @)
{random_user} Ein zufälliger, in den letzten 15 Minuten aktiver Zuschauer (mit @)
{channel} Der Name des Streamers/Kanals, auf dem der Bot gerade antwortet
{icon} Dein Währungssymbol (z. B. ⭐)
{currency} Der Name deiner Loyalty-Währung (z. B. Bellas). {pointsname} funktioniert als gleichwertiger Alias
{balance} Der aktuelle Punktestand des Aufrufers
{uptime} Wie lange der Stream schon läuft, oder "Offline"
{viewers} Aktuelle Zuschauerzahl
{title} Aktueller Stream-Titel
{game} Aktuell gezeigtes Spiel/Kategorie
{followers} Aktuelle Follower-Zahl
{subscribers} Aktuelle Abonnenten-Zahl
{rank} Zuschauzeit-Stufe des Aufrufers (Neuling/Zuschauer/Fan/Veteran/Legende)

Zwei Aktionen (Alert im Overlay auslösen, Overlay-Designer: Widget auslösen) nutzen gar keine Text-Vorlage, bei ihnen greifen diese Platzhalter nicht.

Alle Aktionen im Einzelnen

Counter / Zähler

Zählt etwas hoch, auf drei mögliche Arten.

Feld Was es macht Standard
Zähl-Modus "Nur Kanal" (ein gemeinsamer Zähler für alle, z. B. !death), "Je Zuschauer" (jeder hat seinen eigenen Stand) oder "Stream-Streak" (1x pro Stream, Serie zählt hoch) Je Zuschauer
Serie zurücksetzen, wenn ein Stream verpasst wurde Nur im Stream-Streak-Modus. Standardmäßig AUS: die Serie zählt bei jedem Check-in einfach weiter hoch, egal ob dazwischen Streams verpasst wurden. Eingeschaltet setzt ein verpasster Stream die Serie wieder auf 1 zurück Aus
Verhalten ohne @Ziel-Nutzer Nur im Modus "Je Zuschauer". "Eigenen Zähler erhöhen" oder "Nur eigenen Stand anzeigen, nicht erhöhen" (z. B. für !kiss @user) Erhöhen
Antwort-Text Die Chat-Antwort -
Text bei Zweit-Auslösung im selben Stream Nur im Stream-Streak-Modus. Erscheint, wenn im selben Stream ein zweites Mal ausgelöst wird; bei einer Kanalpunkte-Belohnung werden die Punkte dabei automatisch zurückerstattet -
Text wenn der Kanal offline ist Nur im Stream-Streak-Modus. Erscheint, wenn offline eingecheckt wird (es gibt keinen laufenden Stream zum Zählen); Punkte werden dabei ebenfalls automatisch zurückerstattet "Check-in geht nur, während der Stream läuft! 📴"

Wird im Chat-Befehl ein @Nutzer mitgegeben (z. B. "!kiss @bob"), wird immer dessen Zähler erhöht, unabhängig von der Einstellung "Verhalten ohne @Ziel-Nutzer".

Platzhalter zusätzlich zu den Basis-Platzhaltern: {count} (aktueller Stand), {streak} (aktuelle Serie, nur im Streak-Modus gefüllt), {longest} (längste bisherige Serie, nur im Streak-Modus gefüllt), {random(min,max)} (Zufallszahl im angegebenen Bereich, z. B. {random(1,6)}), {random_text:option1|option2|option3} (wählt eine der mit | getrennten Optionen zufällig aus).

Beispiel: Befehl !death → jeder Aufruf erhöht einen gemeinsamen Kanal-Zähler, der Bot antwortet "Tode: 42".

Diese Aktion unterstützt einen zusätzlichen Abfrage-Befehl (siehe unten "Abfrage-Befehl").

Text-Antwort (ohne Zähler)

Postet einen festen Text, oder wählt bei aktiviertem Zufalls-Modus pro Auslösung eine zufällige Zeile aus dem Antwort-Text.

Feld Was es macht Standard
Zufällige Variante wählen Jede Zeile im Antwort-Text wird als eigene Antwortmöglichkeit behandelt Aus
Antwort-Text Die Chat-Antwort (bei aktiviertem Zufalls-Modus: eine Möglichkeit pro Zeile) -

Platzhalter zusätzlich zu den Basis-Platzhaltern: {random(min,max)}, {random_text:option1|option2|option3}.

Beispiel: Befehl !slap → "{user} schlägt {touser} mit {random_text:einer riesigen Forelle|einem kleinen Aal|einem großen Hammer}!"

Loyalty-Punkte vergeben

Vergibt einen festen Betrag deiner Loyalty-Punkte.

Feld Was es macht Standard
Punkte-Betrag Wie viele Punkte vergeben werden (mind. 1) 10
Antwort-Text (optional) Leer lassen für keine Chat-Antwort -

Platzhalter zusätzlich zu den Basis-Platzhaltern: {amount} (der vergebene Betrag).

Beispiel: Kanalpunkte-Belohnung "Bonus-Punkte" → Zuschauer bekommt zusätzlich 50 Bellas gutgeschrieben.

Kanalpunkte umtauschen (gegen Loyalty-Punkte)

Tauscht tatsächlich eingesetzte Kanalpunkte zu einem festen Kurs gegen deine eigene Loyalty-Währung. Nur über eine Kanalpunkte-Belohnung als Auslöser sinnvoll: löst du diese Aktion über einen Chat-Befehl aus, passiert nichts, weil keine echten Kanalpunkte eingesetzt wurden.

Feld Was es macht Standard
Umtausch-Kurs Wie viele Loyalty-Punkte es pro 1 eingesetztem Kanalpunkt gibt. Kurs 0,5 und eine Belohnung für 100 Kanalpunkte ergeben 50 Loyalty-Punkte 1
Antwort-Text (optional) Leer lassen für keine Chat-Antwort "🔄 Tausch erfolgreich! @{user} hat {cost} Kanalpunkte gegen {amount} {currency} umgetauscht. Du hast jetzt {balance} {currency}!"

Rundet der Kurs auf 0 Punkte ab (zu niedrig gewählt), werden die eingesetzten Kanalpunkte automatisch zurückerstattet, statt Punkte für nichts zu verrechnen.

Platzhalter zusätzlich zu den Basis-Platzhaltern: {cost} (eingesetzte Kanalpunkte), {amount} (gutgeschriebene Loyalty-Punkte).

Beispiel: Belohnung "Umtausch" (100 Kanalpunkte) mit Kurs 0.5 → Zuschauer bekommt 50 Bellas.

Alert im Overlay auslösen

Löst einen Alarm auf einem "Alert: Bot"-Widget eines deiner Overlays aus (frei gestaltbar: Text, Bild/Video, Sound, Animation, genau wie bei Follower-, Sub-, Tip-, Cheer- und Raid-Alarmen).

Feld Was es macht
Ziel-Overlay Das Overlay, auf dem das "Alert: Bot"-Widget liegt
Ziel-Widget Optional. Welches konkrete Bot-Widget auf dem gewählten Overlay reagieren soll. Leer lassen, um stattdessen über die Bezeichnung zu filtern
Bezeichnung Frei wählbar, z. B. "checkin". Steht im Alert-Text des Widgets als Platzhalter {alert_type} zur Verfügung und wird fürs Routing nur gebraucht, wenn kein Ziel-Widget gewählt wurde

Diese Aktion nutzt keine eigenen Text-Platzhalter in diesem Formular; Text, Bild und Sound stellst du direkt am "Alert: Bot"-Widget im Overlay-Designer ein.

Beispiel: Befehl !checkin mit Bezeichnung "checkin" → auf dem gewählten Overlay erscheint die im Widget mit passendem Filter hinterlegte Check-in-Animation.

Overlay-Designer: Widget auslösen (TTS/Werbung/Glücksrad/Text)

Löst eines deiner auslösbaren Overlay-Designer-Widgets aus.

Feld Was es macht
Widget Das Ziel-Widget. TTS, Werbung, Glücksrad (dreht sich) oder Text (wechselt zum nächsten Text; mit einer Zahl nach dem Befehl zu genau diesem)

Keine eigenen Text-Platzhalter.

Beispiel: Kanalpunkte-Belohnung "Text-to-Speech" mit Text-Eingabe → der eingegebene Text wird im Overlay vorgelesen.

Discord-Webhook senden

Postet eine Nachricht in einen Discord-Kanal über einen Webhook-Link.

Feld Was es macht
Discord-Webhook-URL Die Ziel-Webhook-Adresse aus Discord
Nachrichten-Vorlage Der gesendete Text

Platzhalter zusätzlich zu den Basis-Platzhaltern: {user} (hier ausnahmsweise OHNE @, da Discord-Erwähnungen anders funktionieren als im Twitch-Chat).

Beispiel: Befehl !bug → meldet den Aufruf automatisch in deinem internen Discord-Kanal.

HTTP-Request senden

Ruft eine beliebige externe, öffentlich erreichbare Web-Adresse auf, optional mit der Antwort im Chat.

Feld Was es macht Standard
Methode GET oder POST GET
Ziel-URL Die aufgerufene Adresse. Nur öffentlich erreichbare Adressen; interne/private Adressen werden abgelehnt -
Anfrage-Inhalt (JSON, nur bei POST) Optionale JSON-Vorlage für den POST-Body, z. B. {"user": "{user}", "amount": "{amount}"}. Leer lassen für den Standard-Body {"user": "..."} -
Chat-Antwort (optional) Leer lassen für einen stillen Aufruf ohne Chat-Antwort -

Platzhalter zusätzlich zu den Basis-Platzhaltern: {response.feld} bzw. {response.verschachtelt.feld} greifen per Punkt-Notation auf die JSON-Antwort der aufgerufenen API zu (z. B. {response.main.temp}).

Beispiel: Befehl !wetter ruft eine Wetter-API auf und postet "18°C, bewölkt" mit {response.temp} im Antwort-Text.

Lurk-Modus

Markiert einen Zuschauer als "im Lurk" und meldet automatisch seine Rückkehr, sobald er das nächste Mal schreibt.

Feld Was es macht Standard
Nachricht beim Lurk-Start Chat-Antwort beim Auslösen "{user} ist jetzt im Lurk-Modus! 🫥"
Nachricht bei Rückkehr Chat-Antwort, sobald der Zuschauer wieder schreibt "{user} ist zurück! War {duration} im Lurk. 👋"

Platzhalter zusätzlich zu den Basis-Platzhaltern: {duration} (wie lange der Zuschauer im Lurk war, nur in der Rückkehr-Nachricht gefüllt).

Beispiel: Befehl !lurk → "X ist jetzt im Lurk-Modus!", später bei der nächsten Nachricht: "X ist zurück! War 45 Minuten im Lurk."

Befehl hinzufügen (Zuschauer schlägt vor, du gibst frei)

Lässt Zuschauer per Kanalpunkte-Belohnung einen eigenen Chat-Befehl vorschlagen. Der Vorschlag geht nie sofort live, sondern wartet auf deine Freigabe oder Ablehnung.

Feld Was es macht Standard
Bestätigungs-Nachricht Antwort, wenn der Vorschlag eingereicht wurde "{user} Danke! Dein Befehl wurde eingereicht und wartet auf Freigabe. ✅"
Nachricht bei falschem Format Antwort und automatische Erstattung der Kanalpunkte, wenn die Eingabe nicht mit einem gültigen !befehl beginnt "{user} Bitte im Format "!befehl Antworttext" einreichen — die Kanalpunkte wurden zurückerstattet."
Nachricht bei Freigabe Chat-Nachricht, sobald du den Vorschlag freigibst "{user} Dein Befehl {trigger} wurde freigegeben und ist jetzt aktiv! 🎉"
Nachricht bei Ablehnung Chat-Nachricht, sobald du den Vorschlag ablehnst, mit automatischer Erstattung "{user} Dein Vorschlag wurde leider nicht freigegeben — deine Kanalpunkte wurden zurückerstattet."

Diese Belohnung muss in den Twitch-Belohnungs-Einstellungen "Text-Eingabe erforderlich" aktiviert haben. Der Zuschauer gibt dabei "!befehl Antworttext" ein. Platzhalter zusätzlich zu den Basis-Platzhaltern: {trigger} (der vorgeschlagene Befehlsname, nur bei Freigabe/Ablehnung).

Beispiel: Belohnung mit Text-Eingabe, Zuschauer tippt "!gg Gut gespielt!" ein → landet zur Prüfung in deiner Warteliste für ausstehende Befehle.

Shoutout (!so @user)

Zeigt den zuletzt gespielten Titel und Kanal-Link eines Nutzers, optional mit echtem Twitch-Shoutout.

Feld Was es macht Standard
Echten Twitch-Shoutout auslösen Löst zusätzlich Twitchs eigene Shoutout-Funktion aus (die hervorgehobene Kanal-Karte im Chat). Erfordert, dass der verwendete Bot Moderator in deinem Kanal ist; schlägt das fehl, wird trotzdem nur die Chat-Nachricht gesendet An
Antwort-Text Die Chat-Antwort "🎉 Schaut doch mal bei {name} vorbei! {url} — zuletzt gespielt: {game}"

Ohne @Ziel-Nutzer im Befehl passiert nichts; bei einem unbekannten/falsch geschriebenen Nutzernamen ebenfalls nicht.

Platzhalter zusätzlich zu den Basis-Platzhaltern: {name} (Anzeigename des Ziel-Nutzers), {game} (hier ausnahmsweise das zuletzt gezeigte Spiel des ZIEL-Nutzers statt deines eigenen), {url} (Twitch-Kanal-Link des Ziel-Nutzers). {viewers}, {title}, {followers}, {subscribers} beziehen sich hier weiterhin auf deinen eigenen Kanal.

Beispiel: Befehl !so @jemand → "Schaut doch mal bei jemand vorbei! twitch.tv/jemand — zuletzt gespielt: Valorant".

Spaß-Aktion "Chaos" (Zufalls-Timeout)

Ein kurzer, harmloser Timeout als Spaß-Belohnung oder -Befehl.

Feld Was es macht Standard
Ziel "Auslöser selbst", "@Ziel-Nutzer aus dem Chat-Befehl" (z. B. !chaos @jemand) oder "Zufälliger aktiver Zuschauer" Auslöser selbst
Abonnenten aus dem Zufalls-Pool ausschließen Nur im Modus "Zufälliger aktiver Zuschauer". Schützt Abonnenten vor dem Zufalls-Timeout (maximal die ersten 100 Abos, technische Grenze; VIP-Schutz ist aktuell nicht möglich) An
Timeout-Dauer (Sekunden) Reiner Spaß-Effekt, kurze Werte (15-60 Sekunden) empfohlen. Maximum 1.209.600 Sekunden (2 Wochen, Twitchs technisches Limit) 30
Antwort-Text (optional) Leer lassen für keine Chat-Antwort "😈 {target} wurde für {duration}s zum Schweigen gebracht!"

Der Streamer selbst wird nie ausgewählt, außer wenn er explizit als Ziel "Auslöser selbst" wählt und sich selbst damit trifft.

Platzhalter zusätzlich zu den Basis-Platzhaltern: {target} (betroffener Nutzer, mit @), {duration} (Sekunden).

Beispiel: Belohnung "Chaos" → zufälliger Zuschauer wird für 30 Sekunden stummgeschaltet, der Bot meldet es im Chat.

Punkte-Raub (!steal @user)

Ein riskanter Diebstahlversuch von Punkten eines anderen Zuschauers.

Feld Was es macht Standard
Erfolgschance (%) Wahrscheinlichkeit, dass der Diebstahl gelingt 50
Gestohlener Anteil vom Ziel-Guthaben (%) Wie viel Prozent des Ziel-Guthabens bei Erfolg gestohlen wird 10
Strafe bei Misserfolg (% vom eigenen Guthaben) Wie viel Prozent des eigenen Guthabens bei Misserfolg verloren geht 10
Mindest-Guthaben des Ziels Ziele mit weniger Guthaben können nicht bestohlen werden 10
Abklingzeit pro Nutzer (Sek.) Wiederholte Versuche während der Abklingzeit werden ohne Chat-Antwort ignoriert 300
Text bei Erfolg - "🥷 @{user} hat {amount} {currency} von {target} gestohlen!"
Text bei Misserfolg - "🚨 @{user} wurde beim Diebstahlversuch an {target} erwischt und verliert {penalty} {currency}!"
Text wenn Ziel nicht bestehlbar ist Erscheint, wenn das Ziel unbekannt ist oder unter dem Mindest-Guthaben liegt "@{user} Bei {target} gibt es nichts zu holen."

Man kann sich nicht selbst bestehlen; ein Versuch ohne gültiges @Ziel oder gegen sich selbst wird ignoriert. Das Ziel wird anhand des gespeicherten Loyalty-Namens gesucht, nicht über eine Twitch-API-Abfrage: nur Zuschauer, die bereits mit deinem Punktesystem interagiert haben, können gefunden werden.

Platzhalter zusätzlich zu den Basis-Platzhaltern: {target}, {amount} (bei Erfolg), {penalty} (bei Misserfolg).

Beispiel: Befehl !steal @jemand → bei Erfolg wandert ein Teil von dessen Punkten zum Dieb, bei Misserfolg gibt es eine kleine Strafe.

Ship-Befehl (!ship @user)

Berechnet einen Spaß-Kompatibilitäts-Prozentsatz zwischen zwei Nutzern.

Feld Was es macht Standard
Antwort-Text - "💘 {user} + {touser} = {percent}% Kompatibilität!"

Das Ergebnis ist für dasselbe Paar am selben Tag immer gleich (es wird aus beiden Namen und dem Datum berechnet, nicht rein zufällig), ändert sich aber am nächsten Tag wieder. Ohne @Ziel-Nutzer passiert nichts.

Platzhalter zusätzlich zu den Basis-Platzhaltern: {percent} (0 bis 100).

Beispiel: Befehl !ship @jemand → "Alice + jemand = 73% Kompatibilität!"

Zufalls-Zitat

Zieht ein zufälliges Zitat aus deiner Zitate-Verwaltung (Seite Zitate). Funktioniert zusätzlich zum bereits vorhandenen festen !quote-Befehl, lässt sich aber an ein eigenes Befehlswort oder eine Belohnung binden.

Feld Was es macht Standard
Antwort-Text - "💬 Zitat #{quote_id}: {quote}"
Text wenn noch keine Zitate vorhanden sind - "Es gibt noch keine Zitate!"

Platzhalter zusätzlich zu den Basis-Platzhaltern: {quote} (Zitat-Text), {quote_id}, {added_by} (wer es eingetragen hat).

Beispiel: Befehl !zitat → "Zitat #12: ...".

Countdown-Befehl

Zeigt die verbleibende Zeit bis zu einem von dir festgelegten Datum.

Feld Was es macht
Zieldatum/-zeit Das Zieldatum
Antwort-Text (davor) Chat-Antwort, solange das Zieldatum noch nicht erreicht ist, Standard "⏳ Noch {countdown} bis es soweit ist!"
Antwort-Text (danach) Chat-Antwort, sobald das Zieldatum erreicht ist, Standard "🎉 Es ist soweit!"

Platzhalter zusätzlich zu den Basis-Platzhaltern: {countdown} (verbleibende Zeit, z. B. "3 Tage 4 Std.").

Beispiel: Befehl !event → "Noch 3 Tage 4 Std. bis es soweit ist!"

Erinnerung (!remindme <Minuten> <Text>)

Ein Zuschauer kann sich selbst an einen Text erinnern lassen, z. B. "!remindme 15 Werbung nicht vergessen".

Feld Was es macht Standard
Maximal erlaubte Minuten Höchste erlaubte Wartezeit 120
Bestätigungs-Text Sofortige Antwort beim Aufruf "⏰ Ok {user}, ich erinnere dich in {minutes} Minuten!"
Erinnerungs-Text (nach Ablauf) Wird erst gesendet, wenn die Zeit abgelaufen ist "⏰ @{user}: {text}"
Text bei falscher Nutzung Wenn der Befehl ohne Minuten+Text aufgerufen wird "Nutzung: !remindme <Minuten> <Text>"

Platzhalter: {minutes} nur in der Bestätigung, {text} nur im Erinnerungs-Text selbst (die übrigen Basis-Platzhalter funktionieren im Erinnerungs-Text nicht mehr, weil er erst nach Ablauf der Zeit gesendet wird).

Beispiel: Befehl !remindme 15 Werbung nicht vergessen → nach 15 Minuten postet der Bot die Erinnerung im Chat.

Gewinnspiel-Status abfragen

Zeigt einem Zuschauer seine aktuelle Los-Zahl im laufenden Gewinnspiel (Seite Gewinnspiele).

Feld Was es macht Standard
Antwort-Text (mit Losen) - "🎟️ @{user} du hast {tickets} Lose im aktuellen Gewinnspiel!"
Antwort-Text (kein Gewinnspiel/keine Lose) - "@{user} Aktuell läuft kein Gewinnspiel oder du hast noch keine Lose."

Platzhalter zusätzlich zu den Basis-Platzhaltern: {tickets}.

Beispiel: Befehl !lose → "Du hast 3 Lose im aktuellen Gewinnspiel!"

Rangliste im Chat anzeigen

Postet die Top-Loyalty-Punkte-Rangliste direkt im Chat.

Feld Was es macht Standard
Anzahl Plätze 1 bis 10 5
Antwort-Text - "🏆 Top {top_n}: {list}"

Platzhalter zusätzlich zu den Basis-Platzhaltern: {top_n}, {list} (z. B. "1. Alice (500), 2. Bob (320)").

Beispiel: Befehl !top → "Top 5: 1. Alice (500), 2. Bob (320), ..."

Umfrage/Vorhersage starten

Startet eine echte native Twitch-Umfrage oder -Vorhersage mit vorkonfigurierten Optionen.

Feld Was es macht Standard
Typ Umfrage (Poll) oder Vorhersage (Prediction) Umfrage
Titel - "Community-Abstimmung"
Optionen (eine pro Zeile) Umfrage: 2 bis 5 Optionen, Vorhersage: 2 bis 10 Optionen. Überzählige Zeilen werden abgeschnitten -
Laufzeit (Sekunden) 15 bis 1.800 60
Antwort-Text bei Erfolg - "🗳️ {title} — mach mit im Chat!"
Antwort-Text bei Fehler Erscheint z. B. wenn bereits eine Umfrage/Vorhersage läuft "Konnte nicht gestartet werden — läuft eventuell bereits eine Umfrage/Vorhersage?"

Platzhalter zusätzlich zu den Basis-Platzhaltern: {title} (Titel der gestarteten Umfrage/Vorhersage; überschreibt hier ausnahmsweise den Basis-Platzhalter für den aktuellen Stream-Titel).

Beispiel: Befehl !vote → startet die Umfrage "Nächstes Spiel?" mit deinen vorbereiteten Optionen.

Glücksrad (freie Text-Preise)

Ein Glücksrad mit frei definierten Text-Preisen, unabhängig von Loyalty-Punkten.

Feld Was es macht Standard
Preise (einer pro Zeile) Jede Zeile ist ein möglicher Gewinn, z. B. "Shoutout", "Songwunsch", "Nichts, Pech gehabt!" -
Antwort-Text - "🎡 @{user} dreht am Glücksrad... {prize}!"

Diese Aktion vergibt von sich aus keine Loyalty-Punkte. Soll ein Preis zusätzlich Punkte geben, kombiniere eine zweite Aktion "Loyalty-Punkte vergeben" am selben Auslöser.

Platzhalter zusätzlich zu den Basis-Platzhaltern: {prize}.

Beispiel: Kanalpunkte-Belohnung "Glücksrad" → "Du drehst am Glücksrad... Songwunsch!"

Zufalls-Challenge

Zieht eine zufällige Aufgabe aus einer von dir frei definierten Liste.

Feld Was es macht Standard
Challenges (eine pro Zeile) Jede Zeile ist eine mögliche Aufgabe, z. B. "Nur mit links spielen für 5 Minuten" -
Antwort-Text - "🎯 Challenge für {user}: {challenge}"

Platzhalter zusätzlich zu den Basis-Platzhaltern: {challenge}.

Beispiel: Befehl !challenge → "Challenge für dich: Nur mit links spielen für 5 Minuten".

Trivia/Quiz (!trivia [Antwort])

Ein Quiz mit selbst hinterlegten Fragen. !trivia ohne Text startet eine Runde (oder meldet, dass schon eine läuft), !trivia <Antwort> prüft die Antwort gegen die laufende Runde.

Feld Was es macht Standard
Fragen (eine pro Zeile, Format: Frage|Antwort) Beispiel: "Wie viele Beine hat eine Spinne?|8". Bei Rundenstart wird eine Frage zufällig gezogen. Groß-/Kleinschreibung bei der Antwort spielt keine Rolle -
Belohnung (Loyalty-Punkte) - 50
Zeitlimit (Sekunden) - 120
Text bei Rundenstart - "❓ {question} — Antworten mit "!trivia <Antwort>"! ({duration}s Zeit)"
Text wenn bereits eine Runde läuft - "Es läuft schon eine Trivia-Runde: {question}"
Text bei richtiger Antwort - "🎉 @{user} hat richtig geantwortet ({answer})! +{amount} {currency}"

Nur die erste richtige Antwort gewinnt; falsche Antworten oder Antworten ohne laufende Runde werden stillschweigend ignoriert, um den Chat nicht zu überfluten.

Platzhalter zusätzlich zu den Basis-Platzhaltern: {question}, {duration} (bei Rundenstart), {answer}, {amount} (bei richtiger Antwort).

Beispiel: Frage "Wie viele Beine hat eine Spinne?|8" → wer zuerst !trivia 8 schreibt, gewinnt Punkte.

Marry/Adopt (!marry @user)

Verpartnert zwei Zuschauer dauerhaft zum Spaß, mit optionalem Abfrage-Befehl.

Feld Was es macht Standard
Text bei erfolgreicher Verpartnerung - "💍 {user} und {touser} sind jetzt ein Paar!"
Text wenn Aufrufer schon vergeben ist Platzhalter {partner} "@{user} du bist bereits mit {partner} zusammen!"
Text wenn Ziel schon vergeben ist - "{touser} ist schon vergeben!"
Text bei Abfrage (Companion-Befehl) Nur relevant mit angelegtem Abfrage-Befehl, z. B. !partner. Platzhalter {partner} "@{user} ist mit {partner} zusammen! 💕"
Text bei Abfrage ohne Partner - "@{user} du bist noch Single! Nutze !marry @jemand"

Eine Verpartnerung ist dauerhaft (kein Trennungsbefehl); man kann sich nicht selbst heiraten oder jemanden heiraten, der schon vergeben ist.

Diese Aktion unterstützt einen zusätzlichen Abfrage-Befehl (siehe unten "Abfrage-Befehl").

Beispiel: Befehl !marry @jemand → "Alice und jemand sind jetzt ein Paar!"

Wochenstatistik (!stats)

Fasst neue Follower, vergebene Punkte und den aktivsten Zuschauer der letzten 7 Tage zusammen.

Feld Was es macht Standard
Antwort-Text - "📊 Letzte 7 Tage: {new_followers} neue Follower, {points_awarded} {currency} vergeben. Aktivster Zuschauer: {top_viewer}"

{top_viewer} ist eine Annäherung: sie basiert auf der Gesamt-Zuschauzeit unter den in den letzten 7 Tagen aktiven Zuschauern, nicht auf einer exakten Rangliste nur dieser Woche.

Platzhalter zusätzlich zu den Basis-Platzhaltern: {new_followers}, {points_awarded}, {top_viewer}.

Beispiel: Befehl !stats → "Letzte 7 Tage: 12 neue Follower, 3.400 Bellas vergeben. Aktivster Zuschauer: Alice".

OBS steuern (Szene/Quelle/Hotkey)

Steuert dein lokales OBS: Szene wechseln, Quelle ein-/ausblenden/umschalten, Media-Quelle abspielen/pausieren/neu starten/stoppen, Quelle stummschalten/entstummen, Lautstärke setzen, oder einen Hotkey auslösen. Erfordert vorherige Einrichtung eines "OBS-Steuerung"-Widgets im Overlay-Designer.

Feld Was es macht
OBS-Steuerung-Widget Nur Widgets vom Typ "OBS-Steuerung"
OBS-Aktion Szene wechseln, Quelle einblenden/ausblenden/umschalten, Hotkey auslösen, Media abspielen/pausieren/neu starten/stoppen, Quelle stummschalten/entstummen, Lautstärke setzen
Szene / Quelle Auswahl aus der zuletzt im Overlay-Designer-Editor per "Verbindung testen" ermittelten Liste, sonst Freitext-Eingabe exakt wie in OBS
Hotkey-Name Nur bei "Hotkey auslösen": der interne OBS-Name, der oft vom angezeigten Namen abweicht (z. B. "OBSBasic.StartStreaming")
Lautstärke (%) Nur bei "Lautstärke setzen"
Automatisch zurückschalten/entstummen nach (Minuten) Nur bei "Quelle umschalten" bzw. "Quelle stummschalten". Leer lassen für eine dauerhafte Änderung (nur manuell wieder aufhebbar)
Antwort-Text (optional) Leer lassen für keine Chat-Antwort

Welche Aktionen das OBS-Steuerung-Widget überhaupt erlaubt, legst du zusätzlich am Widget selbst im Overlay-Designer-Editor fest; eine hier gewählte, am Widget nicht erlaubte Aktion wird nicht ausgeführt.

Beispiel: Kanalpunkte-Belohnung "Szenen-Chaos" → wechselt live zu einer festgelegten Szene, z. B. einer Reaktions-Kamera. Oder: Befehl !stummschalten mit Aktion "Quelle stummschalten" und 5 Minuten Zeit-Begrenzung → Mikrofon wird stumm geschaltet und schaltet sich nach 5 Minuten von selbst wieder ein.

Abfrage-Befehl

Bei Aktionen, die einen sinnvollen "Stand" haben (aktuell: Counter / Zähler und Marry/Adopt), fragt dich das Formular zusätzlich: "Soll ein Chat-Befehl zum Nachschauen angelegt werden?" Aktivierst du das und gibst einen zweiten Befehlsnamen an (z. B. !streak für einen Check-in-Zähler), legt die Seite automatisch eine zweite, verknüpfte Automation an. Dieser Abfrage-Befehl zeigt nur den aktuellen Stand an, ohne ihn zu verändern (keine Erhöhung des Zählers, keine neue Verpartnerung). Bei einer Kanalpunkte-Belohnung ist dieses Verhalten zusätzlich automatisch erzwungen: ein Aufruf über die Belohnung selbst zeigt ebenfalls nur den Stand an, erhöht ihn aber nicht.

Schaltest du den Abfrage-Befehl später wieder aus, wird die verknüpfte Automation gelöscht.

Automation bearbeiten, (de)aktivieren, löschen

In der Tabelle öffnet die Schaltfläche neben jeder Zeile ein Menü mit:

  • Bearbeiten: öffnet dasselbe Formular wie beim Anlegen, mit den aktuellen Werten vorausgefüllt.
  • Aktiv/Inaktiv (Umschalter): deaktiviert eine Automation, ohne sie zu löschen. Eine inaktive Automation reagiert auf nichts mehr, bleibt aber mit allen Einstellungen und gesammelten Zählerständen erhalten.
  • Löschen: fragt vorher "Automation wirklich löschen?" nach, löscht dann endgültig die Automation, eine eventuell verknüpfte Abfrage-Automation und, falls vorhanden, eine dafür angelegte eigene Datentabelle.

Datenverwaltung: Import und Export

Über den Button Datenverwaltung rechts oben erreichst du drei Werkzeuge, alle beziehen sich ausschließlich auf Chat-Befehl-Automationen:

StreamElements Import

Lädt deine bestehenden Befehle von StreamElements über deinen dortigen Channel-Namen. Nach "Commands laden" zeigt die Seite eine Liste zum Auswählen; bereits bei dir vorhandene Befehle sind mit "[vorhanden]" markiert und werden beim Import übersprungen. Enthält die geladene Antwort den Zähler-Platzhalter, wird daraus automatisch ein Kanal-Zähler (Zähl-Modus "Nur Kanal") mit dem bisherigen Stand, alles andere wird eine einfache Text-Antwort. StreamElements-Berechtigungsstufen werden dabei auf die eigenen Stufen übertragen.

Importieren (JSON)

Importiert eine zuvor über Exportieren gesicherte Datei, oder eine im selben Format gebaute eigene Datei. Nach dem Hochladen zeigt die Seite eine Liste der enthaltenen Befehle zum Auswählen. Ein Befehl, der bei dir schon existiert, wird dabei aktualisiert statt doppelt angelegt.

Exportieren

Lädt alle deine Chat-Befehl-Automationen als JSON-Datei herunter, als Sicherung oder zum Übertragen auf einen anderen Kanal.

Die Meta-Befehle im Chat: !commands und !minigames

Diese beiden Befehle sind keine eigenen Automationen, sondern fest eingebaute Befehle, deren Auslösewort du oben auf der Seite änderst (siehe "Die Meta-Befehle" weiter oben):

  • !commands listet alle aktiven Chat-Befehl-Automationen deines Kanals auf.
  • !minigames listet alle aktivierten Minispiele mit ihren Befehlen auf.

Befehle direkt im Chat verwalten (nur für dich und deine Moderatoren)

Zusätzlich zur Seite selbst kannst du als Streamer oder Moderator direkt im Chat einfache Text-Antwort-Befehle verwalten:

Befehl Wirkung
!addcmd !befehl Antworttext Legt den Befehl neu an (Berechtigung "Alle", Aktion "Text-Antwort") oder überschreibt, falls er schon existiert, dessen Antwort
!removecmd !befehl Löscht den Befehl wieder
!commands (bzw. dein eingestellter Commands-Trigger) Listet alle aktiven Chat-Befehl-Automationen auf

Beide Verwaltungsbefehle funktionieren nur für dich selbst und deine Moderatoren; alle anderen Zuschauer werden ignoriert. !addcmd ohne gültiges !befehl oder ohne Antworttext antwortet mit einer Nutzungshinweis-Meldung. Über !addcmd angelegte Befehle erscheinen danach ganz normal in der Tabelle auf dieser Seite und können dort bearbeitet werden (z. B. um sie auf eine andere Aktion wie "Counter / Zähler" umzustellen).

Typischer Arbeitsablauf

  1. Klicke auf Neue Automation.
  2. Gib einen Namen ein, z. B. "Check-in".
  3. Wähle den Auslöser-Typ "Chat-Befehl", trage !checkin ein und lege die Berechtigung auf "Alle" fest.
  4. Wähle als Aktion "Counter / Zähler", stelle den Zähl-Modus auf "Stream-Streak" und trage einen Antwort-Text wie "🔥 {user} ist seit {streak} Streams am Stück dabei!" ein.
  5. Speichern. Der Befehl ist sofort aktiv.
  6. Optional: aktiviere "Soll ein Chat-Befehl zum Nachschauen angelegt werden?" und trage !streak ein, damit Zuschauer ihren Stand auch ohne neuen Check-in abfragen können.

Grenzen und Sonderfälle

  • Pro Kanal kann jedes Befehlswort nur einmal vergeben werden, unabhängig von Groß-/Kleinschreibung.
  • Aktionen, die eine eigene kleine Datentabelle brauchen (z. B. ausstehende Befehlsvorschläge), sind auf 20 solcher Tabellen pro Kanal begrenzt. Für die allermeisten Streamer wird dieses Limit nie relevant.
  • Bei "HTTP-Request senden" werden interne/private Netzwerk-Adressen grundsätzlich abgelehnt, auch wenn sie als öffentliche Domain angegeben werden.
  • Eine per Sprachbefehl ausgelöste Aktion braucht eine aktive Spracherkennung im Browser auf der Seite Live-Kontrollraum; ohne geöffneten Tab mit aktivem Mikrofon passiert nichts.
  • Deaktivierst du eine Automation, bleiben alle bisherigen Zählerstände, Partnerschaften usw. erhalten und stehen bei erneuter Aktivierung wieder zur Verfügung.

Häufige Fragen

Warum antwortet der Bot nicht auf meinen Befehl, obwohl ich ihn geschrieben habe? Entweder bist du unterhalb der eingestellten Berechtigungsstufe (z. B. ein normaler Zuschauer bei einem auf "Moderatoren" gestellten Befehl, dann wird der Aufruf stillschweigend ignoriert), die Automation ist deaktiviert, oder du hast dich beim Befehlswort vertippt. Prüfe die Tabelle auf dieser Seite.

Warum wurden meine Kanalpunkte zurückerstattet? Das passiert automatisch, wenn eine Kanalpunkte-Belohnung ein Tageslimit erreicht hat, wenn sie nur während des Streams funktionieren soll und offline eingelöst wurde, oder wenn eine Aktion wie "Befehl hinzufügen" ein ungültiges Format erkennt oder abgelehnt wird.

Kann ich einen Befehl auf mehreren Plattformen gleichzeitig nutzen? Bei Chat-Befehlen ja, über das Feld "Gilt für" (sichtbar, sobald du mehr als eine Plattform verbunden hast). Antworten auf TikTok erscheinen dabei im Overlay-Widget "Bot-Meldung", da der Bot im TikTok-Chat nicht selbst schreiben kann.

Was ist der Unterschied zwischen "Nur Kanal", "Je Zuschauer" und "Stream-Streak" beim Zähler? "Nur Kanal" ist ein gemeinsamer Zähler für alle (z. B. Tode des Streamers). "Je Zuschauer" zählt für jede Person einzeln (z. B. wie oft jemand !slap ausgelöst hat). "Stream-Streak" zählt nur einmal pro laufendem Stream und führt eine Serie, die typischerweise für Check-ins genutzt wird.

Ich habe eine Belohnung gelöscht, die noch mit einer Automation verknüpft war. Was passiert? Die Automation bleibt bestehen, kann aber nicht mehr ausgelöst werden, da die Belohnung auf Twitch nicht mehr existiert. Bearbeite die Automation und wähle eine andere (oder neu angelegte) Belohnung.

Kann ich eine Aktion mehrfach mit unterschiedlichen Auslösern nutzen? Ja. Lege dafür einfach mehrere Automationen mit jeweils eigenem Auslöser an, die dieselbe Aktion mit eigenen Einstellungen nutzen, z. B. zwei "Loyalty-Punkte vergeben"-Automationen mit unterschiedlichen Beträgen für zwei verschiedene Belohnungen.

Funktioniert !addcmd auch für kompliziertere Aktionen wie Zähler oder Punkte? Nein, !addcmd legt im Chat immer eine einfache Text-Antwort an. Für alles andere (Zähler, Punkte, Overlay-Alarm, Umfragen, usw.) nutze das Formular auf dieser Seite.