Zum Inhalt springen
  • Dunkel
  • Hell
  • System

!urban

If/Else: Empty Query

Core Logic If/Else

Without query → Random-Endpoint.

Input %rawInput%
Operation Is Null or Empty
Then

Set Argument: Random-URL

Core Arguments Set Argument
Variable Name urbanUrl
Value https://api.urbandictionary.com/v0/random
Else

Set Argument: Search-URL

Core Arguments Set Argument

Whitespace → +, andere URL-Encoding-Special-Chars werden hier nicht escaped. Urban API ist tolerant.

Variable Name urbanUrl
Value https://api.urbandictionary.com/v0/define?term=$replace(%rawInput%, ' ', +)$

Fetch URL

Core Network Fetch URL
URL %urbanUrl%
Variable Name urban
Parse result as JSON aktiv

If/Else: API down

Core Logic If/Else
Input %urban.list.0.definition%
Operation Is Null or Empty
Then

Send Message to Channel

Twitch Chat Send Message to Channel
Message @%user% Urban-API down.
Then

Break

Core Logic Break

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

If/Else: Kein Match

Core Logic If/Else

API liefert leeres %urban.list% bei nicht-existentem Term.

Input %urban.list[0].word%
Operation Is Null or Empty
Then

Send Message to Channel

Twitch Chat Send Message to Channel
Message @%user% „%rawInput%“ nicht im Urban Dictionary.
Then

Break

Core Logic Break

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

Send Message to Channel

Twitch Chat Send Message to Channel

Definition ist oft sehr lang: manuell auf 350 Chars cappen wäre safer.

Message 🗣️ %urban.list[0].word%: %urban.list[0].definition%
AzaBot: 🗣️ Rizz: Charisma. The ability to charm a love interest with words. Coined by Kai Cenat.
So sieht's im Chat aus
  1. 1 If/Else: %rawInput% Is Null or Empty
    1. Then 1a Set Argument: urbanUrl = "random-endpoint"
    2. Else 1b Set Argument: urbanUrl = "define?term=..."
  2. 2 Fetch URL: %urbanUrl% (JSON)
  3. 3 If/Else: %urban.list.0.definition% Is Null or Empty
    1. Then 3a Send Message: API-Down
    2. Then 3b Break
  4. 4 If/Else: %urban.list[0].word% Is Null or Empty
    1. Then 4a Send Message: kein Match
    2. Then 4b Break
  5. 5 Send Message: 🗣️ Definition
FeldWert
Commands!urban
!ud
!urbandict
User Cooldown30
Global Cooldown5
  • Definition zu lang: Twitch 500-Chars. Mit $substring(%urban.list[0].definition%, 0, 350)$ cappen plus „…“.
  • [Brackets] in Definitions: Urban nutzt [term]-Links: werden als Plain-Text durchgereicht.
  • Multiple Definitions: %urban.list[0]% ist die top-voted. [1], [2] etc. existieren auch.
  • Profanity-Filter: Vor Sub-Action 5 ein Execute-Code-Step mit Blacklist-Check.
  • Vote-Count anzeigen: (↑ %urban.list[0].thumbs_up%) an Message anhängen.
  • Random + Filter: Random-Endpoint + nur Definitions mit thumbs_up > 100.