# Befehl-Variablen

> Alle Variablen für KickBot-Befehle mit Beispiel, von {{sender.followage}} für die Kick-Followage bis zu Zufallszahlen und API-Anfragen in Chat-Antworten.

Source: https://kickbot.com/de/docs/chat-bot/command-variables

Variablen sind Platzhalter in der Antwort eines Befehls. KickBot setzt bei jedem Aufruf den aktuellen Wert ein. Eine `!followage`-Antwort mit `{{sender.followage}}` postet zum Beispiel, wie lange der Zuschauer deinem Kick-Kanal schon folgt. Variablen funktionieren in [eigenen Befehlen](https://kickbot.com/de/docs/chat-bot/custom-commands) und in den Antworten der [integrierten Befehle](https://kickbot.com/de/docs/chat-bot/built-in-commands).

Schreib jede Variable mit zwei geschweiften Klammern davor und dahinter, genau so wie auf dieser Seite. Groß- und Kleinschreibung zählt: `{{sender.username}}` funktioniert, `{{Sender.Username}}` nicht.

## Variable zu einer Antwort hinzufügen

1. Öffne einen Befehl auf der Seite [Eigene Befehle](https://kickbot.com/dashboard/commands) oder klick auf **Befehl hinzufügen**.
2. Nutze unter dem Feld **Antwort** die Option **Variable einfügen**. Wähle eine Gruppe (**Sender**, **Streamer**, **Markierter User / Parameter**, **Stream**, **Zufall** oder **API-Anfrage**).
3. Klick auf eine Variable. KickBot fügt sie dort ein, wo dein Cursor steht.

Die Vorschau **Im Kick-Chat** zeigt Beispielwerte, damit du die Antwort vor dem Speichern prüfen kannst.

![Das Menü Variable einfügen mit geöffneter Gruppe Stream und einer Vorschau mit Beispielwerten für Followage, Kategorie und Zuschauer](https://kickbot.com/docs/images/chat-bot/command-variables/01-variables.webp "Die Vorschau setzt Beispielwerte ein. Im Chat nutzt KickBot die echten Werte.")

Die Beispiele unten nutzen einen Zuschauer namens KickBotDev auf einem Kanal namens yourchannel.

## Sender

Der Zuschauer, der den Befehl getippt hat.

| Variable | Was sie postet | Beispielausgabe |
| --- | --- | --- |
| `{{sender.username}}` | Der Name des Zuschauers wie in seinem Kanal-Link (kleingeschrieben) | `kickbotdev` |
| `{{sender.followers}}` | Wie viele Follower der eigene Kanal des Zuschauers hat | `128` |
| `{{sender.followage}}` | Wie lange der Zuschauer deinem Kanal schon folgt | `4 months 12 days` |
| `{{sender.url}}` | Link zum Kick-Kanal des Zuschauers | `https://kick.com/kickbotdev` |
| `{{sender.bio}}` | Die Bio im Kick-Profil des Zuschauers | `Variety streamer from Texas` |
| `{{sender.instagram}}` | Instagram-Name im Kick-Profil des Zuschauers | `yourhandle` |
| `{{sender.twitter}}` | X-Name (Twitter) im Kick-Profil des Zuschauers | `yourhandle` |
| `{{sender.youtube}}` | YouTube im Kick-Profil des Zuschauers | `yourhandle` |
| `{{sender.discord}}` | Discord im Kick-Profil des Zuschauers | `discord.gg/your-server-code` |
| `{{sender.tiktok}}` | TikTok-Name im Kick-Profil des Zuschauers | `yourhandle` |
| `{{sender.facebook}}` | Facebook-Name im Kick-Profil des Zuschauers | `yourhandle` |

### Kick-Followage

Wenn der Zuschauer deinem Kanal nicht folgt, postet KickBot statt deiner Antwort: `@kickbotdev is not following @yourchannel`.

Der integrierte Befehl `!followage` nutzt diese Variable. Seine Antwort ist `@{{sender.username}} has been following for {{sender.followage}}`, im Chat sieht das also so aus: `@kickbotdev has been following for 4 months 12 days`.

## Streamer

Du, der Inhaber des Kanals.

| Variable | Was sie postet | Beispielausgabe |
| --- | --- | --- |
| `{{streamer.username}}` | Dein Kanalname wie in deinem Kanal-Link | `yourchannel` |
| `{{streamer.followers}}` | Deine Follower-Zahl | `2450` |
| `{{streamer.url}}` | Link zu deinem Kick-Kanal | `https://kick.com/yourchannel` |
| `{{streamer.bio}}` | Deine Kick-Bio | `Chill streams every night` |
| `{{streamer.instagram}}` | Instagram-Name in deinem Kick-Profil | `yourhandle` |
| `{{streamer.twitter}}` | X-Name (Twitter) in deinem Kick-Profil | `yourhandle` |
| `{{streamer.youtube}}` | YouTube in deinem Kick-Profil | `yourhandle` |
| `{{streamer.discord}}` | Discord in deinem Kick-Profil | `discord.gg/your-server-code` |
| `{{streamer.tiktok}}` | TikTok-Name in deinem Kick-Profil | `yourhandle` |
| `{{streamer.facebook}}` | Facebook-Name in deinem Kick-Profil | `yourhandle` |

> **Caution:** Die Profil-Variablen (Bio, Instagram, X, YouTube, Discord, TikTok, Facebook) lesen das Kick-Profil. Wenn das Feld im Profil leer ist, bleibt die Variable als normaler Text in der Antwort stehen, zum Beispiel `{{streamer.tiktok}}`. Nutze sie nur für Profile, in denen das Feld ausgefüllt ist.

## Markierter User und Parameter

Text oder ein Name, den der Zuschauer nach dem Befehl tippt. Ein Zuschauer tippt zum Beispiel `!so @SomeChannel` oder `!hug @friend`.

| Variable | Was sie postet | Beispiel für `!so @SomeChannel great stream` |
| --- | --- | --- |
| `{{param}}` | Den ganzen Text nach dem Befehl | `@SomeChannel great stream` |
| `{{taggedUser.username}}` | Den Namen nach dem ersten `@` | `SomeChannel` |
| `{{taggedUser.url}}` | Link zum markierten Kanal | `https://kick.com/SomeChannel` |
| `{{taggedUser.followers}}` | Follower-Zahl des markierten Kanals | `57` |
| `{{taggedUser.followage}}` | Wie lange der markierte Zuschauer deinem Kanal schon folgt | `2 months 3 days` |

Für den markierten User gibt es auch die Profil-Variablen: `{{taggedUser.bio}}`, `{{taggedUser.instagram}}`, `{{taggedUser.twitter}}`, `{{taggedUser.youtube}}`, `{{taggedUser.discord}}`, `{{taggedUser.tiktok}}` und `{{taggedUser.facebook}}`.

Wenn der Zuschauer niemanden markiert, ist `{{taggedUser.username}}` leer. Wenn der markierte Name kein Kick-Kanal ist, können die Variablen zum Nachschlagen (Follower, Bio und die anderen Profilfelder) nicht funktionieren, und KickBot postet statt der Antwort `404 tagged user not found`.

Beispiel: Der integrierte Befehl `!so` (Shoutout) hat die Antwort `Go check @{{taggedUser.username}}'s channel! {{taggedUser.url}}`.

## Stream

Dein aktueller Stream. Diese Variablen funktionieren, während du live bist.

| Variable | Was sie postet | Beispielausgabe |
| --- | --- | --- |
| `{{stream.title}}` | Dein Streamtitel | `Chill stream, come hang out` |
| `{{stream.category}}` | Die Kategorie deines Streams | `Just Chatting` |
| `{{stream.viewers}}` | Deine aktuelle Zuschauerzahl | `342` |

Wenn du offline bist, kann KickBot deinen Stream nicht lesen. Ein Befehl mit diesen Variablen postet dann nicht seine normale Antwort. Stattdessen kann er `404 stream not found` posten.

## Zufall

Nutze diese Variablen für Spiele und Spaß-Befehle. Bei jedem Aufruf wird ein neuer Wert gewählt.

| Variable | Was sie postet | Beispielausgabe |
| --- | --- | --- |
| `{{randomRange(1,100)}}` | Eine ganze Zahl von der ersten bis zur zweiten Zahl, beide eingeschlossen | `42` |
| `{{randomItem("rock","paper","scissors")}}` | Einen Eintrag aus der Liste, jeder mit derselben Chance | `paper` |
| `{{randomItemPercentage("common":70,"rare":25,"legendary":5)}}` | Einen Eintrag aus der Liste, mit der Chance, die du jedem Eintrag gibst | `common` |

Regeln:

- `randomRange` nimmt zwei ganze Zahlen ab 0. Die erste darf nicht größer als die zweite sein.
- Setz jeden Eintrag in gerade doppelte Anführungszeichen (`"`), getrennt durch Kommas. Einträge dürfen Leerzeichen enthalten, zum Beispiel `"Ask again later"`.
- Bei `randomItemPercentage` steht die Zahl direkt nach dem Doppelpunkt, ohne Leerzeichen. Die Zahlen sind Gewichte. Mit 70, 25 und 5 kommt der erste Eintrag etwa 70 von 100 Mal. `randomItemPercentage` ist nicht im Menü **Variable einfügen**. Tippe es selbst ein.

## API-Anfrage

`{{request("https://...")}}` holt Daten von einer Webadresse (API) und setzt sie in die Antwort ein. Damit zeigst du einen Witz, einen Rang in einem Spiel oder alles andere, was eine öffentliche API zurückgibt.

```text
{{request("https://uselessfacts.jsph.pl/api/v2/facts/random").text}}
```

KickBot öffnet die Adresse, liest die JSON-Antwort und postet das Feld `text`. Zum Beispiel: `The praying mantis is the only insect that can turn its head`.

So funktioniert es:

- **Ein Feld wählen.** Häng den Pfad hinter die schließende Klammer an. Nutze Punkte für Namen und `[0]` für Listeneinträge, zum Beispiel `.data[0].name`. Ohne Pfad, oder wenn der Pfad nicht in der Antwort vorkommt, postet KickBot die ganze Antwort.
- **Variablen in der Adresse nutzen.** Zum Beispiel `{{request("https://example.com/rank?user={{sender.username}}").rank}}`. KickBot setzt den Wert ein und macht ihn sicher für eine Webadresse (ein Leerzeichen wird zu `%20`). Eine Anfrage innerhalb einer Anfrage ist nicht erlaubt.
- **Nur GET-Anfragen.** KickBot kann keinen Body und keine Header senden. Wenn die API einen Key braucht, setz ihn als Query-Parameter in die Adresse.
- **Limits.** Nur `http`- und `https`-Adressen im öffentlichen Internet. KickBot wartet bis zu 3 Sekunden auf eine Antwort, also nutze eine API, die schnell und kurz antwortet.

> **Caution:** Jeder, der deine Befehlseinstellungen sehen kann, sieht auch einen API-Key in der Adresse. Nutze nur Keys, die öffentliche Daten lesen.

## Weitere Variablen

Diese Variablen funktionieren, stehen aber nicht im Menü **Variable einfügen**.

| Variable | Was sie postet | Beispielausgabe |
| --- | --- | --- |
| `{{user}}` | Den Namen des Zuschauers mit seinen Großbuchstaben | `KickBotDev` |
| `{{sender.fullUsername}}` | Den Namen des Zuschauers mit `@` davor | `@KickBotDev` |
| `{{commands}}` | Alle eingeschalteten Befehle, getrennt durch Kommas | `commands, followage, lurk, me, so, welcome, discord` |

Der integrierte Befehl `!commands` nutzt `{{commands}}`. Seine Antwort ist `Enabled commands: {{commands}}`.

## Häufige Fehler

- **Eine Klammer statt zwei.** `{sender.username}` bleibt als Text stehen. Nutze `{{sender.username}}`.
- **Ein falsch geschriebener Name.** Eine unbekannte Variable wie `{{sender.name}}` sorgt dafür, dass der Befehl keine Antwort postet. Vergleich die Schreibweise mit dieser Seite.
- **Typografische Anführungszeichen.** `randomItem` und `request` brauchen gerade Anführungszeichen (`"`). Manche Handys und Texteditoren machen daraus geschwungene Anführungszeichen (`“ ”`). Tippe sie sicherheitshalber direkt im Dashboard.

## Häufige Fragen

**Wie erstelle ich einen Followage-Befehl auf Kick?**

KickBot hat einen integrierten Befehl `!followage`, der auf jedem Kanal eingeschaltet ist. Für einen eigenen fügst du einen Befehl mit einer Antwort wie `@{{sender.username}} has followed for {{sender.followage}}` hinzu.

**Wie zeige ich den Namen des Zuschauers in einem Befehl?**

Nutze `{{sender.username}}` für den Namen wie im Kanal-Link oder `{{user}}` für den Namen mit seinen Großbuchstaben. Setz ein `@` davor, wenn Kick ihn als Erwähnung zeigen soll, zum Beispiel `@{{sender.username}}`.

**Kann ein Befehl meine Zuschauerzahl oder meinen Streamtitel zeigen?**

Ja. Nutze `{{stream.viewers}}` und `{{stream.title}}`. Sie funktionieren, während du live bist.
