Migration von Nightbot
Nightbot ist der minimalistische Cloud-Chat-Bot: leichtgewichtig, browser-basiert, läuft auch wenn dein PC aus ist. Streamer.bot ist das genaue Gegenteil: lokal, mächtig, aber kein Cloud-Service. Wer wechselt, gewinnt Action-Logik und OBS-Integration, verliert die “läuft immer”-Bequemlichkeit.
Wann der Wechsel sich lohnt
Abschnitt betitelt „Wann der Wechsel sich lohnt“- Du willst Commands die mehr machen als Text + Variablen: z.B. OBS-Aktionen, API-Abfragen mit If/Else
- Du nutzt Nightbot nur für Custom-Commands und Timer: beides geht in SB komfortabler
- Du willst Hardware (Stream Deck, Heart-Rate) anbinden
- Du brauchst keine 24/7-Verfügbarkeit
Wann Nightbot bleibt: Du streamst nur sporadisch, hast keinen Dauer-PC, willst keine lokale Software. Nightbot ist konkurrenzlos für “ich will nur ein paar Custom-Commands und Spam-Filter”.
Feature-Mapping Nightbot → SB
Abschnitt betitelt „Feature-Mapping Nightbot → SB“| Nightbot | Streamer.bot | Anmerkung |
|---|---|---|
| Custom Commands | Commands · Standard | 1:1, Variablen umschreiben |
Default Commands (!commands, !regulars) | Commands · Standard + Permissions | 1:1 baubar |
| Timers | Action mit Cron-Trigger | SB-Cron pro Action, Stream is Live-Filter pflicht |
| Spam Protection (Caps, Links, Symbols) | NICHT in SB | Twitch AutoMod nutzen oder manuell als If/Else-Action |
| Song Requests (YouTube/Spotify) | Tawmae Spotify | Nightbot-Songrequest ist YouTube-First. Tawmae ist Spotify-First |
| Polls (eingebaut) | Poll Events (Twitch Polls) | Nightbot-Polls sind Bot-intern, SB nutzt Twitch-Polls (besser) |
| Regulars-System | Action mit User Group-Filter | SB kennt User Groups → Filter + Permission-Level |
Quotes (3rd-Party !quote Add-on) | Commands · Quotes | SB hat eigenes Quote-System |
User-Variables ($(channel), $(user)) | SB-Variablen %user%, %channelName% | Find-and-Replace |
| Subscriber-Only-Commands | Permission Subscriber+ | Im Command-Settings setzbar |
| Channel-Wide Filter (Blacklist) | NICHT in SB | Twitch AutoMod nutzen |
Custom Commands aus Nightbot exportieren
Abschnitt betitelt „Custom Commands aus Nightbot exportieren“Nightbot hat keinen nativen Export-Button: Custom-Commands müssen über die Nightbot-API gezogen werden.
Variante A: Über die Nightbot-API (Recommended)
Abschnitt betitelt „Variante A: Über die Nightbot-API (Recommended)“- Login auf nightbot.tv → oben rechts dein Avatar →
Account → API - API-Token kopieren (oder erstellen wenn keiner da)
- Im Browser-Devtools (oder Postman /
curl):
curl -H "Authorization: Bearer DEIN_TOKEN" \ "https://api.nightbot.tv/1/commands"- Response ist JSON mit allen Custom-Commands:
{ "_total": 12, "commands": [ { "name": "!discord", "message": "Discord: https://discord.gg/xyz", "coolDown": 30, "userLevel": "everyone", "count": 145, "_id": "abc123..." } ]}- JSON speichern als
nightbot-commands.json: das ist deine Import-Vorlage
Variante B: Manuell aus dem Dashboard
Abschnitt betitelt „Variante B: Manuell aus dem Dashboard“Wenn API zu fummelig: Nightbot-Dashboard → Commands → Custom Commands → jeden Command einzeln öffnen und Name + Message + Cooldown + UserLevel notieren. Bei < 15 Commands schneller als API.
Schritt-für-Schritt-Migrations-Plan
Abschnitt betitelt „Schritt-für-Schritt-Migrations-Plan“- Tag 1: Custom-Commands aus Nightbot ziehen (API oder Dashboard) → in Notion/Markdown sammeln
- Tag 1: SB installieren (Installation)
- Tag 2: Commands rüberziehen: siehe Command Export/Import für Batch-Workflow
- Tag 3: Timer als Cron-Actions
- Tag 4: Regulars-Permission-Setup (Permissions-Setup)
- Tag 5: Wenn Songrequest genutzt → Tawmae Spotify oder Songrequest streichen
- Cutover: In Nightbot-Dashboard → Bot aus dem Kanal entfernen (oder ihn als Mod entfernen) damit er nicht mehr antwortet
Variablen-Umschreibung
Abschnitt betitelt „Variablen-Umschreibung“Nightbot-Variablen folgen dem $(name)-Format, SB nutzt %name%.
| Nightbot | Streamer.bot |
|---|---|
$(user) | %user% |
$(channel) | %broadcastUser% |
$(touser) | %targetUser% (wenn aus User-Info-for-Target geholt) |
$(query) | %rawInput% |
$(1), $(2) | %input0%, %input1% (0-indexed!) |
$(eval ...) | C#-Sub-Action oder If/Else mit Math-Sub-Actions |
$(urlfetch ...) | Fetch URL Sub-Action: siehe Fetch URL Setup |
$(time) | %timestamp% oder Format via C# |
Wichtig: Nightbot’s $(1) ist 1-indexed, SB’s %input0% ist 0-indexed. Bei Migration alle Indizes um -1 verschieben.
Erfahrungsbericht
Abschnitt betitelt „Erfahrungsbericht“Bei mir waren’s 9 Custom-Commands und 3 Timer: die API hat mir alles als JSON gegeben, ich hab das in einem Texteditor in SB-Variablen-Syntax umgeschrieben. Die Indizes von
$(1)auf%input0%hab ich beim ersten Test übersehen:!shoutout %input0%hat dann komplett leer ausgegeben weil ich noch%input1%drin hatte. Drei Minuten Debug. Hätte vorher die Variablen-Referenz gelesen, hätt ich’s gewusst.Streamer-Kollege, kleinerer Kanal
Was du danach NICHT mehr brauchst
Abschnitt betitelt „Was du danach NICHT mehr brauchst“- Nightbot komplett aus dem Kanal entfernen (Twitch-Settings → Mods → Nightbot entfernen)
- Optional: Nightbot-Account löschen (oder beibehalten als Backup)
Behalten wenn Nightbot eigentlich gut war für:
- Reine Cloud-Verfügbarkeit (PC aus, Bot läuft): hier kein SB-Ersatz
- Spam-Filter: Twitch-AutoMod statt Nightbot
Häufige Stolpersteine
Abschnitt betitelt „Häufige Stolpersteine“- Indizes 1-based vs 0-based:
$(1)→%input0%, nicht%input1% $(eval ...): Nightbot kann simple JavaScript-Eval, SB nicht: komplexe Math in C#-Sub-Action verschieben$(urlfetch ...): SB-Fetch URL muss separat als Sub-Action konfiguriert sein (Fetch URL Setup)- Mod-Commands fehlen: Nightbot hat
!ban,!timeoutals Custom-Commands: SB hat die als eigene Sub-Actions in Commands · Mod - Bot ist noch Mod: Nightbot antwortet weiter: in Twitch
/modListe prüfen und Nightbot entfernen
- Command Export/Import: JSON / CSV in SB einlesen
- Variablen-Referenz: alle SB-Variablen mit Beispielen
- Twitch EventSub: was SB unter der Haube nutzt