Wemos D1 Mini als Twitch Chat-Bot

Elektronics at its best

Wemos D1 Mini als Twitch Chat-Bot

20. Februar 2020 Allgemein 0

Der Wemos D1 Mini ist schon eine kleine, prima Platine. Basierend auf dem 8266 erfüllt sie fast jedes Bastlerherz. Allerdings hat ssie nicht sehr viele GPIO´s aber das soll uns für diese Anwendung nicht stören da diese nicht benötigt werden.
Es geht darum das der Wemos D1 Mini Daten an den Twitch- Chat sendet. Das ganze basiert wieder auf folgendem Script: https://github.com/noycebru/bubble-machine/blob/master/arduino%20code
der von mir etwas abgeändert wurde.
Jetzt sieht er wie folgt aus:

/*******************************************************************
    Connect to Twtich Chat with a Bot
   Created with code from TheOtherLoneStar (https://www.twitch.tv/theotherlonestar)
   Hackaday IO: https://hackaday.io/otherlonestar
   By Brian Lough (https://www.twitch.tv/brianlough)
   YouTube: https://www.youtube.com/channel/UCezJOfu7OtqGzd5xrP3q6WA
Created with code from noycebru www.twitch.tv/noycebru
 *******************************************************************/
 
#include <ESP8266WiFi.h>          //https://github.com/esp8266/Arduino
#include <IRCClient.h>

 
//define your default values here, if there are different values in config.json, they are overwritten.
 
#define IRC_SERVER   "irc.chat.twitch.tv"
#define IRC_PORT     6667



//------- Replace the following! ------
char ssid[] = "xxx";       // your network SSID (name)
char password[] = "xxx";  // your network key
 
//The name of the channel that you want the bot to join
const String twitchChannelName = "xxx";
 
//The name that you want the bot to have
#define TWITCH_BOT_NAME "xxx"
 
//OAuth Key for your twitch bot
// https://twitchapps.com/tmi/
#define TWITCH_OAUTH_TOKEN "oauth:xxx"

 
//------------------------------
 
 

String ircChannel = "";
 
WiFiClient wiFiClient;
IRCClient client(IRC_SERVER, IRC_PORT, wiFiClient);
 
// put your setup code here, to run once:
void setup() {

  Serial.begin(115200);
  Serial.println();
 
  // Set WiFi to station mode and disconnect from an AP if it was Previously
  // connected
  WiFi.mode(WIFI_STA);
  WiFi.disconnect();
  delay(100);
 
  // Attempt to connect to Wifi network:
  Serial.print("Connecting Wifi: ");
  Serial.println(ssid);
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    Serial.print(".");
    delay(500);
  }
  Serial.println("");
  Serial.println("WiFi connected");
  Serial.println("IP address: ");
  IPAddress ip = WiFi.localIP();
  Serial.println(ip);
 
  ircChannel = "#" + twitchChannelName;
 
  client.setCallback(callback);
}
 
void loop() {
 
  // Try to connect to chat. If it loses connection try again
  if (!client.connected()) {
    Serial.println("Attempting to connect to " + ircChannel );
    // Attempt to connect
    // Second param is not needed by Twtich
    if (client.connect(TWITCH_BOT_NAME, "", TWITCH_OAUTH_TOKEN)) {
      client.sendRaw("JOIN " + ircChannel);
      Serial.println("connected and ready to rock");
    
    } else {
      Serial.println("failed... try again in 5 seconds");
      // Wait 5 seconds before retrying
      delay(5000);
    }
    return;
  }
  client.loop();

  sendTwitchMessage("Kommt in den Discord: https://discord.gg/Gb3jWv7");  

    delay(300000);
       sendTwitchMessage("Chatbefehle siehe in der Info");
       
   
delay(300000);
 sendTwitchMessage("Besucht auch meine Webseite: https://greenbrainsecke.de/");  
  
    delay(300000);

  
}

void sendTwitchMessage(String message) {
  client.sendMessage(ircChannel, message);
}
 
 
void callback(IRCMessage ircMessage) {

}

Die Bereiche wo “xxx” steht passt ihr wieder mit euren Daten an.
Die Textbereiche könnt ihr auch nach eurem belieben abändern.
Ich habe ein Delay von 5 Minuten zwischen den einzelnen Nachrichten gewählt (300000 ms) aber das ist auch euch überlassen ob ihr den Abstand kürzer oder länger wählt.
Jetzt nur hochladen und daran freuen das an eurem Twitch- Chat automatisierte Nachrichten gesendet werden

Bis dahin
Habt Spaß am basteln

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Durch die weitere Nutzung der Seite stimmst du der Verwendung von Cookies zu. Weitere Informationen

Die Cookie-Einstellungen auf dieser Website sind auf "Cookies zulassen" eingestellt, um das beste Surferlebnis zu ermöglichen. Wenn du diese Website ohne Änderung der Cookie-Einstellungen verwendest oder auf "Akzeptieren" klickst, erklärst du sich damit einverstanden.

Schließen