Hey,
in diesem Tutorial zeige ich euch wie ihr mit der TMIJS API einen eigenen Twitch Bot erstellen könnt.
1. Programme die man benötigt
1.1 Atom
1.2 Node.JS (sehr wichtig)
1.1 Ihr braucht ein Programm womit ihr eine js. + gegebenenfalls eine .bat Datei erstellen + bearbeiten könnt.
Dazu empfehle ich euch:
Atom
Kleiner Tipp: falls ihr Atom noch NICHT benutzt, ich empfehle es euch! Es ist einfach & einfach gut
1.2 Ihr braucht Node.JS, weil der ganze Bot auf Node aufgebaut ist.
Node.JS
2. Erste Schritte
2.1 Erstellung eines Ordners
2.2 .json Beschreibung erstellen
2.1 Um einen Ordner zu erstellen braucht ihr erst mal die Eingabeaufforderung ( CMD ).
Schritt 1: Gehe auf deinen Desktop oder sonst dort hin, wo du den Ordner erstellen willst.
Dazu benutzt du das Kommando: CD C:\Users\DEINNAME\Desktop
Das wichtige dabei ist das du aufpasst ob es auf der richtigen Festplatte ist, und dazu musst du noch deinen Namen einfügen.
2.2 Um eine .json Beschreibung zu erstellen benötigen wir Node.JS
Dazu gehen wir zuerst mit dem Kommando: CD C:\Users\DEINNAME\Desktop\DEINORDNER
Du musst dazu noch deinen Namen + deinen Ordner den du eben in 2.1 erstellt hast ganz hinten beim Kommando einfügen.
Dann benutzt ihr das Kommando: npm init
Hier könnt ihr Name, Version, Beschreibung & mehr des Bots festlegen.
Wenn ihr bei einigen Sachen, z.B entry point, nichts eingeben wollt, drückt einfach ENTER.
Wenn ihr fertig seid, müsste in dem Ordner nun eine package.json Datei sein.
3. Es geht los!
3.1 Atom Ordner öffnen + app.js erstellen
3.2 Module installieren
3.3 Twitch Verbindung
3.1 Ihr startet zunächst Atom, dann geht ihr oben Links auf File > Open Project Folder > einfach den Ordner auswählen den ihr auf dem Desktop erstellt habt.
Dann öffnet den Ordner auf der Linken Seite
Nachdem ihr den Ordner geöffnet habt, macht ihr einfach Rechtsklick
auf den Ordner > new File > nennt sie app.js
3.2
Nun öffnen wir wieder die Eingabeaufforderung und geben dort im Pfad des Twitch-Bots ein:
npm install tmi.js
Wenn ihr dies gemacht habt, seht ihr im Twitch-Bot Ordner, einen Ordner Namens: node_modules
In dem sollten dann den Ordner "tmi.js" dort wieder finden.
3.3
Nun gehen wir wieder in Atom und öffnen dort die app.js
In diese tragen wir erstmal das Modul ein:
var tmi = require('tmi.js');
Danach werden die Connect Informationen eingetragen:
var options = {
options: {
debug: true
},
connection: {
cluster: "aws",
reconnect: true
},
identity: {
username: "DEINBOTNAMEAUFTWITCH",
password: ""
},
channels: ["DEINCHANNELNAMEAUFTWITCH"]
};
var client = new tmi.client(options);
client.connect();
Alles anzeigen
Ihr müsst die Optionen an euren Bot & normalen Kanal anpassen!
Zeile 10 = username = Der Name von eurem Bot
Zeile 11 = password = Das Passwort ist nicht einfach das Passwort, ihr braucht dafür den Oauth-Key von eurem Bot Account.
Dazu loggt ihr euch hier ein: OAuth
& gebt dann alles was dort steht bei password ein!
4. Die ersten Funktionen ( Beispiele ohne Erklärung )
4.1 Beim Verbinden soll eine Nachricht in der Konsole erscheinen
4.2 Beispiel eines Twitter Commands
4.1 Beispiel einer Nachricht beim Start des Bots in der Konsole
ACHTUNG: Falls ihr diesen Code benutzen wollt, müsst ihr bei der 4 Zeile, wo "exxoticx" steht euren Kanal-Namen hinzufügen!
// Connect Message in der Console
client.on('connected', function(adress, port){
console.log("Adresse: " + adress + " Port: " + port);
client.say("exxoticx", "Der Bot ist nun mit dem Stream verbunden!");
});
4.2 Beispiel eines Twitter Commands
ACHTUNG: Falls ihr diesen Code benutzen wollt, müsst ihr bei der 3 Zeile, wo "exxoticx" steht euren Kanal-Namen hinzufügen!
client.on('chat', function(channel, user, message, self) {
if(message == "!twitter"){
client.say("exxoticx", "Mein Twitter: https://twitter.com/exxoticxTV")}
});
5. Wie startet man den Bot?
Um den Bot zu starten brauchst du eine .bat!
In diese .bat schreibst du einfach:
node app.js
oder so:
6. Ende
Ich hoffe ich konnte euch helfen
Bei Fehler oder Fragen zu Commands - einfach hineinschreiben
mit freundlichen Grüßen
exxoticx
bei Fragen schreibt mir gerne bei Twitter (@exxoticxH1)