Automatisierungsszenarien
- wie bringe ich eine belohnung dazu eine obs-szene zu wechseln
- wie starte ich ein szenario aus zwei verschiedenen belohnungen
- wie baue ich eine pause zwischen zwei aktionen ein
- wie verstecke ich belohnungen solange die kamera nicht im bild ist
- wie lasse ich eine spende laut vorlesen
- der gruppenschalter ist grau und lässt sich nicht einschalten
- kann ein szenario nach zeitplan laufen
- meine belohnung ist ausgegraut und ich kann sie nicht anhaken
- das Szenario hat nur eine Nachricht vorgelesen, obwohl die Belohnung dreimal gekauft wurde
- verlängert ein erneuter Kauf den Effekt
- ein Follow-Raid hat mein Szenario hunderte Male gestartet
- wie verhindere ich, dass ein Zuschauer dasselbe Szenario immer wieder startet
- wie begrüße ich jeden Zuschauer nur einmal pro Stream
- der Sound und die Stimme reden gleichzeitig
- die Pause vor der Stimme wird übersprungen, wenn die Belohnung zweimal hintereinander gekauft wird
- das Szenario blieb in der Mitte stehen und hat die restlichen Schritte nie gemacht
- wie starte ich ein Szenario, wenn mein Countdown null erreicht
- kann ein Szenario einem Timer Zeit dazugeben
- wie bringe ich den Bot dazu, neue Zuschauer zu begrüßen, wenn sie in den Chat schreiben
- kann der Bot neue Chatter automatisch willkommen heißen
- verbraucht ein Szenario mit Sprachphrase Credits
- muss ich vor einer Sprachphrase den Namen des Bots sagen
- der Schritt Anderen Dienst aufrufen geht nach dem Umzug auf einen neuen Computer nicht mehr
Kommt mit strAImer: Dieses Modul wird zusammen mit der App installiert, herunterladen musst du nichts. Es steht unter Modulkatalog → Integriert.
Was diese Seite ist
Automatisierung → Szenarien verdrahtet ein Ereignis mit einer Kette von Aktionen: Ein Zuschauer löst eine Belohnung ein, und OBS wechselt die Szene, ein Sound läuft und der Bot schreibt eine Zeile in den Chat. Die eigene Beschreibung der Seite sagt es so: „Reaktionsregeln für Twitch-Belohnungen und Timer konfigurieren."
Ein Szenario besteht aus drei Dingen, und es hilft, sie auseinanderzuhalten:
- Trigger — die Wege hinein. Mehrere können dasselbe Szenario starten.
- Schrittanleitung — was passiert, von oben nach unten. Keine Verzweigungen, keine Bedingungen.
- Gruppe — eine optionale Hülle, die einen ganzen Satz Szenarien von selbst ein- und ausschalten kann, je nachdem, was OBS gerade zeigt.
Wie man es einrichtet
1. Lege es an
Szenario erstellen in der Kopfzeile. Eine leere Seite sagt „Keine Szenarien gefunden. Erstelle dein erstes Szenario oben." Füll Szenarioname aus und wähle eine Gruppe — Keine Gruppe ist eine gültige Antwort, und [ Neue Gruppe erstellen... ] legt eine an Ort und Stelle an.
2. Füge einen Trigger hinzu
Trigger ist die Liste der Wege hinein, und die Seite erklärt, warum es eine Liste ist und nicht einer: „Jeder davon startet dieselbe Kette von Schritten. Füge einen zweiten hinzu, anstatt das Szenario zu kopieren." + Trigger öffnet Trigger hinzufügen, und Auslösertyp bietet vierzehn an:
| Trigger | Was er verlangt |
|---|---|
| Kanalbelohnung | eine Belohnung aus -- Belohnung wählen --, gruppiert nach Twitch und Kick, jede mit ihren Kosten. -- ID manuell eingeben -- nimmt stattdessen eine Kennung |
| Panel-Schaltfläche | einen Panel-Schaltflächen-Slot — eine der Schaltflächen der Kachel Panel: Schaltflächen im Bedienfeld |
| Spende | eine Betragsbedingung und welche Dienste zählen |
| Abonnement | Welche Abonnements — Jedes Abonnement, Nur neue, Nur Verlängerungen |
| Geschenkte Abonnements | Mindestens geschenkte Abonnements auf einmal |
| Raid | Mindestens Zuschauer im Raid |
| Bits (Cheer) | Mindestens Bits |
| Neuer Follower | nichts |
| Stream gestartet | nichts |
| Stream beendet | nichts |
| Timer hat null erreicht | Welcher Timer: einer deiner Countdowns oder Jeder Timer |
| Sprachphrase | Phrasen, eine pro Zeile; Vergleichsmethode — Die Phrase kommt irgendwo im Satz vor, Der Satz entspricht genau der Phrase oder Regulärer Ausdruck |
| Chatnachricht | Befehle und Wörter, eines pro Zeile; Wie vergleichen — Befehl: das erste Wort der Nachricht, Die Nachricht beginnt mit der Phrase, Wort irgendwo in der Nachricht; und Wer es starten darf — Alle im Chat, Abonnenten und höher, Moderatoren und du, Nur du |
| In Twitch eingebaute Belohnung | welcher Kauf: beliebig, Meine Nachricht hervorheben, Nachricht im Abonnenten-Modus senden, Riesiges Emote, Nachrichteneffekt |
Bei den drei Mindestwerten bedeutet null „beliebig". Stream gestartet und Stream beendet sagen es selbst: „Wird einmal ausgelöst, wenn sich der Stream-Status ändert. Es gibt nichts zu konfigurieren."
Timer hat null erreicht hört auf die Countdowns aus Widgets → Timer, und der Hinweis darunter sagt, wie: „Timer richtest du unter Widgets → Timer ein. Ein Countdown, der unter null weiterläuft, löst einmal aus, wenn er null überschreitet." Angeboten werden nur Countdowns: Ein Timer, der aufwärts zählt, erreicht nie null. Ein ausgeschalteter Timer startet das Szenario nicht, und eine Null, die erreicht wurde, während die App geschlossen war, startet es auch dann nicht, wenn die App wieder läuft.
Chatnachricht arbeitet in allen verbundenen Chats zugleich, und die drei Vergleichsarten unterscheiden sich stärker, als es aussieht. Befehl liest nur das erste Wort, deshalb greift „!licht" auch bei „!licht rot"; das Ausrufezeichen kannst du weglassen, aber wenn du es schreibst, zählt ein bloßes „licht" mitten im Gespräch nicht mehr. Wort irgendwo in der Nachricht meint das ganze Wort: „hallo" greift nicht bei „halloween". Antworten deines eigenen Bots starten nie ein Szenario, eine Kette, die in den Chat schreibt, kann sich also nicht selbst füttern.
Bei Sprachphrase vergleicht die App selbst, nicht die KI: Vor der Phrase ist kein Bot-Name nötig, und es werden keine Credits verbraucht. Der Trigger hört, was die Spracherkennung hört (Stimme → Spracherkennung). Steht Wann zuhören auf Immer, startet auch eine Phrase, die im normalen Gespräch fällt, das Szenario; wähl also Wörter, die du nicht zufällig sagst, oder nimm Der Satz entspricht genau der Phrase. Mit Taste gedrückt halten hört das Mikrofon nur, solange die Taste gedrückt ist, und was du dann sagst, geht auch an den Assistenten, und das ist der Teil, der Credits kostet. Mit Immer geht auch ein Satz, der mit dem Namen aus Wie du den Bot rufst beginnt, an den Assistenten, und ist dieses Feld leer, jeder Satz; die Anleitung „Spracherkennung" erklärt beide Modi.
Fertig legt den Trigger in die Liste, wo ein gespeicherter wieder geöffnet oder entfernt werden kann.
Im selben Fenster sitzen zwei Sicherungen, und beide sind zunächst aus. Höchstens einmal alle, Sekunden ist die Pause zwischen den Läufen: „Null heißt ohne Grenze: jedes Ereignis startet das Szenario. Ein Follow-Bot-Angriff schickt hunderte Follows pro Minute, und ohne Pause schreibt jeder in den Chat, spricht und schneidet einen Clip.“ Einmal pro Zuschauer ist die andere Hälfte, mit einer Liste daneben: pro Stunde heißt, dieselbe Person kann es innerhalb der Stunde nicht erneut starten, pro Stream heißt einmal bis zum Beginn des nächsten Streams. Ältere Szenarien bleiben auf pro Stunde. Das Gedächtnis pro Stream fängt von vorn an, wenn Stream-Status einen neuen Stream meldet, und wenn die App neu startet.
Die Pause wird bei den Eingängen gezeigt, die eine Menge drücken kann: ein neuer Follower, ein Abonnement, geschenkte Abos, ein Raid, Bits, ein in Twitch eingebauter Kauf und eine Chatnachricht. Einmal pro Zuschauer gibt es nur bei Neuer Follower und Chatnachricht: Beides ist kostenlos und leicht zu wiederholen, ein wiederholtes Abo oder wiederholte Bits dagegen sind eine zweite Zahlung, und die wird nicht unterdrückt. Eine Belohnung, eine Panel-Schaltfläche, die Ränder des Streams, ein Timer bei null und ein gesprochener Satz zeigen keine der beiden Sicherungen: Dort ist kein Sturm zu befürchten. Ein neuer Trigger Chatnachricht startet mit fünf Sekunden, die schon in der Pause stehen, weil Zuschauer Befehle wiederholen; ein Szenario, das vor diesen Sicherungen geschrieben wurde, verhält sich genau wie zuvor.
Eine leere Belohnungsliste sagt „Keine Belohnungen gefunden. Bitte verbinde Twitch oder überprüfe dein Twitch-Dashboard."
3. Die Spende hat zwei Filter
Betragsbedingung ist Jede Spende, Ab diesem Betrag und höher, Genau dieser Betrag oder Zwischen zwei Beträgen, mit Betrag und Bis darunter.
Spenden zählen von listet deine Spenden-Connectors als Kästchen: „Nicht ausgewählte Plattformen werden von diesem Szenario ignoriert. Ein neu installierter Spenden-Connector zählt sofort."
Beträge werden in deiner Basiswährung verglichen (Einstellungen → Lokalisierung), und eine Spende, die sich nicht umrechnen ließ, löst das Szenario gar nicht aus. Genau deshalb ist Genau dieser Betrag eine Falle für alles, was in einer anderen Währung ankommt, und die Seite warnt davor in aller Deutlichkeit: „Eine exakte Übereinstimmung funktioniert nur für Spenden in deiner Basiswährung: Nach der Umrechnung landet der Betrag auf Bruchteilen einer Einheit und stimmt praktisch nie überein."
4. Bau die Kette
Schrittanleitung ist das, was passieren wird. Leer sagt sie „Noch keine Schritte. Füge eine Aktion oder Verzögerung hinzu."
- + Verzögerung setzt einen Schritt Verzögerung mit einem Sekundenfeld ein.
- + Aktion öffnet Aktion hinzufügen, und die Liste kommt in zwei Gruppen.
Eine Verzögerung entscheidet auch, was ein zweiter Auslöser tut, während die Kette noch wartet. Eine Kette, die etwas ein- und wieder ausschaltet, wird verlängert: Die Frist wandert um die Länge der Verzögerung, und die Aktionen laufen nicht erneut — wer den Effekt zweimal kauft, kauft die doppelte Zeit, während ein zweites Umschalten ihn ausgeschaltet hätte. Eine Kette, die sagt oder schreibt, was der Auslöser mitgebracht hat — {message}, {user} —, läuft stattdessen einmal pro Auslöser: Drei Einlösungen in fünf Sekunden sind drei getrennte Durchläufe, sodass niemandes Nachricht verloren geht. Einzustellen gibt es hier nichts: Die App entscheidet danach, was die Schritte tun.
Eine Kette mit einem Ton behält den Ton der App für sich, bis ihr letzter Tonschritt fertig ist. Genau das macht eine Pause vor der Sprache überhaupt erst wertvoll. «6 Sekunden warten, dann laut vorlesen» hält den Ton während der ganzen Lesung, sodass drei Einlösungen hintereinander nacheinander vorgelesen werden, mit sechs Sekunden Stille dazwischen, statt alle drei gleichzeitig herunterzuzählen und dann dicht an dicht anzukommen. Eine Kette, bei der der Ton vorn steht («Sound abspielen, 30 Sekunden warten, Filter ausblenden»), gibt ihn frei, sobald der Sound endet: Eine halbe Minute Effekt hält niemanden auf. Eine Kette ohne Tonschritt wartet gar nicht, deshalb steht ein Szenenwechsel nie hinter fremder Sprache an.
Eine Pause läuft auch dann, wenn die App sie nicht aufschreiben kann. Der Countdown startet, bevor die pausierte Kette gespeichert wird, sodass ein langsames oder fehlgeschlagenes Speichern den Rest der Kette nicht mehr verschluckt. Verloren geht dabei nur, einen Neustart der App zu überstehen: Die Pause läuft trotzdem zu Ende, und die Kette geht weiter.
OBS — braucht die OBS-Verbindung, und die Auswahlfelder werden aus OBS selbst gefüllt:
- OBS: Szene wechseln — Szene auswählen.
- OBS: Quelle ein- oder ausblenden — Szene auswählen, Quelle auswählen, Aktion (Quelle einblenden, Quelle ausblenden, Umschalten).
- OBS: Quellenfilter — dasselbe plus Filter auswählen und Filterstatus (Filter aktivieren, Filter deaktivieren).
- OBS: Audio stummschalten oder Ton einschalten — Audio-Eingang, dann Stummschalten, Ton einschalten oder Umschalten.
- OBS: Audio-Eingangspegel — Audio-Eingang und ein Regler Lautstärke.
strAImer — alles, was die App selbst tut:
- Sound abspielen: Sound auswählen ist ein Feld mit einer ▶-Schaltfläche zum Anhören. Ein Klick darauf öffnet das Fenster Sound auswählen, in dem jede Datei ihre Länge, eine Wellenform und ihr eigenes ▶ zeigt, und du kannst dort jeden Ordner öffnen. Dazu Lautstärke.
- Laut aussprechen und Chat-Nachricht senden — beide nehmen Text; die Chat-Aktion zusätzlich Zielort (Alle verbundenen Chats, Twitch, YouTube oder Kick).
- Smart Plug — der Plug und Aktion: Für eine Weile einschalten (fügt Dauer, Sek. hinzu), Einschalten und anlassen oder Ausschalten. Ohne Plugs steht dort „Keine Plugs hinzugefügt — siehe Geräte → Shelly".
- Twitch-Clip erstellen.
- Timer: Wähle den Timer, dann Was tun: Start, Pause, Start oder Pause, Zurücksetzen, Zeit dazugeben oder Zeit wegnehmen; die letzten beiden fügen Minuten hinzu. Ohne Timer zeigt die Liste „Noch keine Timer: sie sind unter Widgets → Timer".
- Anderen Dienst aufrufen — Adresse, Was gesendet wird (Daten senden (POST) oder Nur die Adresse aufrufen (GET)), Daten als JSON oder Einfacher Text und Zusätzliche Header, einer pro Zeile als „Name: Wert", falls der Dienst einen Zugangsschlüssel verlangt. So erreicht ein Wort im Chat Discord, n8n, Make, ein Smart Home oder etwas ganz Eigenes. Die Antwort wird nicht gelesen: Im Log bleiben der Statuscode und der Name des Dienstes, und der nächste Schritt läuft in jedem Fall. Die Adresse und die Header werden verschlüsselt auf diesem Computer gespeichert und gehören nicht zum Backup. Nachdem ein Backup auf einem anderen Computer wiederhergestellt wurde, sagt der Schritt „Auf diesem Computer nicht gespeichert. Gib die Adresse erneut ein": Füge die Adresse noch einmal ein, und die Header, falls der Dienst sie braucht. Auf demselben Computer zeigt ein wieder geöffneter Schritt ein leeres Feld mit „Gespeichert: {host}. Leer lassen, um sie zu behalten", die Adresse ist also noch da.
Unter Text und Daten sitzen die Chips {user}, {amount}, {reward}, {message} und {args}: „Klicke auf einen Namen unten, um ihn einzufügen. Er wird durch das ersetzt, was das Szenario ausgelöst hat; ein unbekannter Name bleibt unverändert." {args} gehört zum Chat-Trigger — es ist der Text nach dem Befehl, „!bestellung pizza" ergibt also „pizza". Anführungszeichen und Zeilenumbrüche in dem, was ein Zuschauer geschrieben hat, werden auf dem Weg ins JSON maskiert, die Daten bleiben also gültig.
5. Reihenfolge und Speichern
Die Schritte laufen von oben nach unten. Jede Zeile hat die Pfeile Nach oben und Nach unten, dazu Bearbeiten und Löschen. Speichern legt das Szenario ab.
Die Karte in der Liste zeigt dann eine Marke je Trigger, die ganze Kette und die Anzahl der Schritte. Daneben: der Ein-/Aus-Schalter, Testlauf, Duplizieren (die Kopie öffnet sich sofort zum Bearbeiten, mit „ (Kopie)" im Namen), Bearbeiten und Löschen, das fragt „Dieses Szenario löschen?"
Gruppen, und OBS den Schalter überlassen
Eine Gruppe ist ein Ordner, der zugleich ein Schalter sein kann. Gruppe erstellen in der Kopfzeile legt eine an; gib ihr einen Gruppenname, und Szenarien kommen über das Feld Gruppe hinein. Eine leere Gruppe sagt „Noch keine Szenarien in dieser Gruppe."
Automatische Steuerung
Automatische Steuerung lässt die Gruppe einem Bedingungstyp folgen:
- Quellensichtbarkeit auf Szene
- Aktive Szene
- Quelle auf aktueller Szene sichtbar
- Auktion akzeptiert Kanalpunkte
Die ersten drei verlangen OBS-Szene auswählen und OBS-Quelle auswählen, und jede erklärt sich unter dem Auswahlfeld — zum Beispiel „Die Bedingung gilt, solange die ausgewählte Szene live ist."
Was die Bedingung steuert ist die Liste darunter: „Solange die Bedingung erfüllt ist, ist alles hier aufgelistete an; sobald sie nicht mehr erfüllt ist, ist es aus." Die erste Zeile ist gesperrt und immer da: „Szenarien in dieser Gruppe werden nicht ausgelöst, solange die Bedingung nicht erfüllt ist." + Hinzufügen fügt Twitch-Kanalpunkt-Belohnungen hinzu, eine Kästchenliste deiner Belohnungen, und Entfernen nimmt den Eintrag wieder weg.
Warum manche Belohnungen ausgegraut sind
Eine Belohnung, die du von Hand auf der Twitch-Seite angelegt hast, ist ausgegraut, mit „außerhalb von strAImer erstellt" markiert und lässt sich nicht anhaken. Twitch lässt eine App nur die Belohnungen schalten, die sie selbst angelegt hat, eine solche würde also jedes Mal abgelehnt — und die Gruppe meldete sich als eingeschaltet, während sich auf Twitch nichts geändert hat.
Um eine zu automatisieren, lege sie unter Automatisierung → Kanalbelohnungen als verwaltete Belohnung neu an; die Anleitung „Kanalbelohnungs-Manager" behandelt diese Seite. Eine bereits angehakte lässt sich weiterhin abwählen, eine alte Einstellung steckt also nie fest.
Die drei Sekunden Wartezeit
Eine Bedingung, die sich ändert, schaltet die Gruppe nicht sofort um: der neue Zustand muss erst drei Sekunden halten. Eine Quelle, die innerhalb dieser drei Sekunden aufblinkt und wieder verschwindet, ändert nichts — die anstehende Umschaltung wird verworfen, und die Gruppe bleibt, wie sie war.
Das ist Absicht. Eine Quelle, die im Stream niemand zu sehen bekam, ist kein Grund, die Belohnungen zu öffnen, und eine Gruppe umzuschalten bedeutet einen Schreibvorgang an Twitch pro Belohnung darin — eine flackernde Quelle löste früher also Dutzende hintereinander aus.
Die Wartezeit gilt nur für das, was von OBS kommt. Die Automatische Steuerung ein- oder auszuschalten, Speichern zu drücken, die Auktion, die Kanalpunkte öffnet oder schließt, und ein Verbindungsverlust zu OBS wirken sofort.
Die Gruppe in der Liste
Die Kopfzeile einer Gruppe trägt das Kästchen auto, den Gruppenschalter, Bedingungseinstellungen und Löschen; ein Klick auf die Kopfzeile klappt die Gruppe zu. Das Löschen fragt vorher und beruhigt: „Gruppe "{name}" löschen? Alle enthaltenen Szenarien werden sicher in den Bereich "Keine Gruppe" verschoben."
Was es nicht kann
- Keine Verzweigungen und keine Bedingungen innerhalb einer Kette. Die Schritte laufen der Reihe nach, von oben nach unten. Bedingungen sitzen am Trigger und an der Gruppe, sonst nirgends.
- Kein Trigger löst bei jeder Chatnachricht aus. Chatnachricht braucht mindestens einen Befehl oder ein Wort, „jeden begrüßen, der zum ersten Mal schreibt" lässt sich also nicht bauen. Was geht: Neuer Follower mit Einmal pro Zuschauer und einem Schritt Chat-Nachricht senden, oder Chatnachricht auf Grußwörter wie hi und hallo, mit Einmal pro Zuschauer auf pro Stream.
- Kein Uhr-Trigger. Die Triggertypen sind genau die vierzehn von oben: Timer hat null erreicht löst aus, wenn einer deiner Countdowns abläuft, nicht zu einer Uhrzeit, und Verzögerung ist ein Schritt in einer Kette, kein Weg, sie zu starten. Wiederkehrende Chatnachrichten sind eine andere Seite: Chatbot → Chat-Timer.
- Szenen, Quellen, Filter und Audio-Eingänge werden aus OBS gelesen. Ohne diese Verbindung haben die Auswahlfelder nichts anzubieten.
- Der Griff einer Gruppe auf ihre eigenen Szenarien lässt sich nicht abschalten: „Das ist der Sinn einer Gruppe, daher kann dies nicht separat deaktiviert werden."
- Nur von strAImer angelegte Belohnungen dürfen unter eine Bedingung. Twitch-Kanalpunkt-Belohnungen ist der einzige Eintrag, den + Hinzufügen unter Was die Bedingung steuert anbietet.
- Bei eingeschalteter Automatischer Steuerung ist der eigene Schalter der Gruppe gesperrt und trägt die Aufschrift „Automatisch durch eine Bedingung verwaltet".
- Die drei Sekunden sind fest. Es gibt kein Feld dafür und keinen Weg, eine OBS-Bedingung eine Gruppe sofort umschalten zu lassen.
- Dauer, Sek. gibt es nur bei Für eine Weile einschalten. Die beiden anderen Plug-Aktionen beendet die Kette, nicht ein Countdown.
- Das Warten auf den Ton lässt sich nicht abschalten, solange die App ihn selbst abspielt. Steht Wo der Ton abgespielt wird (Einstellungen → Sound) auf In einer OBS-Browserquelle, kann die App nicht erkennen, wann ein Schritt Sound abspielen dort endet. Die nächste Kette mit Ton wartet dann nicht darauf, und die Töne können sich überlagern. Ein Feld dafür, wie lange eine Kette den Ton halten darf, gibt es nicht.