Zum Inhalt springen
  • Dunkel
  • Hell
  • System

!permit

Set Argument: Target säubern

Core Arguments Set Argument
Variable Name targetLogin
Value $replace(%input0%, @, )$

If/Else: Kein Target

Core Logic If/Else
Input %targetLogin%
Operation Is Null or Empty
Then

Send Message to Channel

Twitch Chat Send Message to Channel
Message @%user% nutze !permit @username [seconds]
Then

Break

Core Logic Break

Stoppt die laufende Action. Alle folgenden Sub-Actions in derselben Action werden übersprungen.

Set Argument: Duration mit Default

Core Arguments Set Argument

Default 60 Sekunden, sonst %input1%.

Variable Name permitSeconds
Value %input1%

If/Else: Empty Duration

Core Logic If/Else
Input %permitSeconds%
Operation Is Null or Empty
Then

Set Argument: Default 60s

Core Arguments Set Argument
Variable Name permitSeconds
Value 60

Get User Info for Target

Twitch User Get User Info for Target
User Login %targetLogin%

Set Global. Permit-Until

Core Globals Global (Set)

Speichert Unix-Timestamp (jetzt + Duration) als Expire-Marker.

Global Name permitUntil
Value $add(%epoch%, %permitSeconds%)$
Source User (Login %targetLogin%)
Persisted aktiv

Send Message to Channel

Twitch Chat Send Message to Channel
Message ✅ @%targetUser% darf für %permitSeconds%s Links posten.
AzaBot: ✅ @TargetUser darf für 60s Links posten.
So sieht's im Chat aus

Trigger: Twitch Message empfangen. Sub-Actions:

  1. If/Else: %messageStripped% Regex Match https?:// → wenn nicht: Break.
  2. If/Else: %userType% Equals Moderator → wenn ja: Break.
  3. Get Global: Variable permitUntil (Source: User (Sender), Persisted) → userPermitUntil.
  4. If/Else: %userPermitUntil% Greater Than or Equal %epoch% → wenn ja: Break (Permit aktiv).
  5. Delete Message: %messageId%.
  6. Send Message: „@%user% bitte erst per !permit erlauben lassen, dann Link posten.“
  1. 1 Set Argument: targetLogin = $replace(...)
  2. 2 If/Else: %targetLogin% Is Null or Empty
    1. Then 2a Send Message: Hilfe
    2. Then 2b Break
  3. 3 Set Argument: permitSeconds = %input1%
  4. 4 If/Else: %permitSeconds% Is Null or Empty
    1. Then 4a Set Argument: permitSeconds = 60
  5. 5 Get User Info for Target
  6. 6 Set Global (User %targetLogin%, Persisted): permitUntil = %epoch% + %permitSeconds%
  7. 7 Send Message: ✅ Permit aktiv
FeldWert
Name!permit
Commands!permit
!allowlinks
User Cooldown5
Grant TypeAllow
GroupsModerators
ChatResultat
!permit @alice60s Permit für Alice
!permit @alice 120120s Permit für Alice
!permitHilfe-Text
  • Anti-Link-Filter fehlt: Permit-Set tut nichts wenn keiner darauf checkt.
  • %epoch%: Liefert Unix-Seconds: siehe Streamer.bot Argument-Reference.
  • Multi-Permit: Bei mehrfach !permit @alice wird der späteste Timestamp gespeichert (länger).
  • Cancel-Permit: !unpermit @user → Set Global mit %epoch% (= sofort abgelaufen).
  • Permit-Liste: !permits listet aktive Permits via Loop über User-Globals.