Zum Inhalt springen
  • Dunkel
  • Hell
  • System

!define

!define

Fortgeschritten

!dict !definition

Seriöse Dictionary-Definition (EN) via dictionaryapi.dev: kuratiert, nicht user-generated wie Urban.

Steps
5
Cooldown
30s/User
Cooldown
5sglobal
Zugriff
Public

Free Dictionary API ohne Auth. Gegenstück zu !urban: kuratierte Quellen statt Crowdsourced.

If/Else: Kein Wort

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

Send Message to Channel

Twitch Chat Send Message to Channel
Message @%user% nutze !define <englisches Wort>
Then

Break

Core Logic Break

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

Fetch URL

Core Network Fetch URL
URL https://api.dictionaryapi.dev/api/v2/entries/en/%input0%
Variable Name def
Parse result as JSON aktiv

If/Else: Nicht gefunden

Core Logic If/Else

API liefert 404 wenn Wort nicht existiert.

Input %word.0.meanings.0.definitions.0.definition%
Operation Equals
Value 404
Then

Send Message to Channel

Twitch Chat Send Message to Channel
Message @%user% „%input0%“ nicht im Wörterbuch.
Then

Break

Core Logic Break

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

If/Else: Anderer Error

Core Logic If/Else
Input %word.0.meanings.0.definitions.0.definition%
Operation Is Null or Empty
Then

Send Message to Channel

Twitch Chat Send Message to Channel
Message @%user% Dictionary-API down.
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

Erste Definition aus erstem Meaning.

Message 📖 %def[0].word% (%def[0].meanings[0].partOfSpeech%): %def[0].meanings[0].definitions[0].definition%
AzaBot: 📖 hello (interjection): Used as a greeting or to begin a phone conversation.
So sieht's im Chat aus
  1. 1 If/Else: %input0% Is Null or Empty
    1. Then 1a Send Message: Hilfe
    2. Then 1b Break
  2. 2 Fetch URL: dictionaryapi.dev/.../%input0% (JSON)
  3. 3 If/Else: %word.0.meanings.0.definitions.0.definition% Equals 404
    1. Then 3a Send Message: nicht gefunden
    2. Then 3b Break
  4. 4 If/Else: %word.0.meanings.0.definitions.0.definition% Is Null or Empty
    1. Then 4a Send Message: API-Down
    2. Then 4b Break
  5. 5 Send Message: 📖 Definition
FeldWert
Commands!define
!dict
!definition
User Cooldown30
  • Nur EN: API hat auch DE-Endpoint (/api/v2/entries/de/), aber DE-Datenbasis ist dünn. Für DE-Dictionary besser ein anderer Service.
  • Mehrere Meanings: Erstes Meaning gewählt. Wenn man alle wollte, müsste man via C# Execute Code joinen.
  • Special-Chars: Wenn %input0% Sonderzeichen hat (äöü), URL-encoded API liefert evtl. nichts.
  • Phonetik: %def[0].phonetic% an Message anhängen für Aussprache.
  • Audio-Link: %def[0].phonetics[0].audio% liefert MP3-URL: könnte als Sound-Alert getriggert werden.
  • Synonym/Antonym: API liefert auch synonyms/antonyms: separater !synonym Command.