!to
Temporärer Timeout via Chat. !timeout @user 30 = 30 Sekunden Sperre. Optional mit Reason.
!timeout @user 30 spam: strippt das @, nimmt %input1% als Sekunden, baut den Reason aus dem Rest. Twitch setzt nach Ausführung % timeoutResult% Argument %timeoutResult% bool: true wenn Twitch den Timeout akzeptiert hat.
Variablen-Doku und % timedOutUser% Argument %timedOutUser% Display-Name des betroffenen Users.
Variablen-Doku .
1 Set Argument: Target Core › Arguments › Set Argument Strippt das @ aus %input0%.
Variable Name targetLogin Value $replace(%input0%, @, )$
Input %targetLogin% Operation Is Null or Empty
2a Then Send Message: Hilfe Twitch › Chat › Send Message to Channel Message @%user% nutze !timeout @user [sekunden] [grund]
3 Set Argument: Duration Core › Arguments › Set Argument %input1% ist die Dauer in Sekunden.
Variable Name duration Value %input1%
Input %duration% Operation Is Null or Empty
4a Then Set Argument: Default-Duration Core › Arguments › Set Argument Default = 10 Minuten.
Variable Name duration Value 600
5 Set Argument: Reason Core › Arguments › Set Argument Strippt Target + Duration aus %rawInput%. Rest ist der Reason.
Variable Name reason Value $replace(%rawInput%, %input0% %input1%, )$
Input %reason% Operation Is Null or Empty
6a Then Set Argument: Default-Reason Core › Arguments › Set Argument Variable Name reason Value via !timeout von %userName%
7 Timeout User Twitch › Moderation › Timeout User Setzt %timeoutResult%, %timedOutUser%, %timedOutUserName%.
User Login %targetLogin% Duration %duration% Reason %reason%
Input %timeoutResult% Operation Equals Value false
8a Then Send Message: Fehler Twitch › Chat › Send Message to Channel Message @%user% Timeout hat nicht geklappt.
9 Send Message: Erfolg Twitch › Chat › Send Message to Channel Message ⏱ @%timedOutUser%: %duration%s Timeout. Reason: %reason% Send using bot account aktiv
A AzaBot : ⏱ @troll: 30s Timeout. Reason: spam
↑ So sieht's im Chat aus
1 Set Argument: targetLogin 2 If/Else: %targetLogin% Is Null or Empty
Then 2a Send Message: Hilfe-Text 3 Set Argument: duration = %input1% 4 If/Else: %duration% Is Null or Empty
Then 4a Set Argument: duration = 600 5 Set Argument: reason = $replace(%rawInput%, %input0% %input1%, )$ 6 If/Else: %reason% Is Null or Empty
Then 6a Set Argument: reason = Default 7 Timeout User (Login %targetLogin%, Duration %duration%, Reason %reason%) 8 If/Else: %timeoutResult% Equals false
Then 8a Send Message: Fehler-Text 9 Send Message: "⏱ @%timedOutUser%..."
Feld Wert Name !timeout. Mod TimeoutGroup AzaCraft ModCommands !timeout!toGlobal Cooldown 0 User Cooldown 5 Grant Type AllowGroups Moderators
Dauer Wert 5 Min 30010 Min 600 (Default)30 Min 18001 Stunde 36001 Tag 86400Twitch-Max (14 Tage) 1209600
Chat Resultat !timeout @troll 30 spam30s, Reason „spam“ !to @troll 60010 Min, Default-Reason !timeout @trollDefault 10 Min, Default-Reason !toHilfe-Message
Duration als String : bei %duration% = "30s" (mit Buchstaben) schlägt es fehl. Nur Zahlen.
Mod-Mod-Timeout : Mod wird kurz unmoded, nach Ablauf automatisch remoded.
Duration > 14 Tage : Twitch lehnt ab, timeoutResult = false.
Quick-Aliase : !to30, !to10m, !to1h, !to24h als eigene Commands mit fest gesetzter Duration.
Eigenes Audit-Log : Twitch-Mod-Log enthält Timeouts, aber Eigenformat schreibst du selbst per Write To File.
Import-String folgt
Die Action ist 1:1 nach Anleitung oben nachbaubar.