· 4 years ago · Feb 14, 2021, 05:52 PM
1import os
2import socket
3from dotenv import load_dotenv
4
5load_dotenv("./credentials.env")
6CLIENT_ID = os.getenv("CLIENT_ID")
7OAUTH_TOKEN = os.getenv("OAUTH_TOKEN")
8BOT_NAME = "mitchsrobot"
9CHANNEL = "mitchsworkshop"
10
11class Bot():
12 def __init__(self):
13 self.server = "irc.twitch.tv"
14 self.port = 6667
15 self.oauth_token = OAUTH_TOKEN
16 self.username = BOT_NAME
17 self.channel = CHANNEL
18
19 def do_command(self, command):
20 print(self.irc.send(command.encode()))
21 self.irc.send(command.encode())
22
23 def send_message(self, channel, message):
24 print(self.irc.send(f"PRIVMSG #{self.channel} :{message}\r\n".encode()))
25 self.irc.send(f"PRIVMSG #{self.channel} :{message}\r\n".encode())
26
27 def parse_message(self, message):
28 pass
29
30 def check_for_messages(self):
31 # while True:
32 for _ in range(25):
33 messages = self.irc.recv(1024).decode()
34 for m in messages.split("\r\n"):
35 print(m)
36
37 def connect_to_channel(self):
38 self.irc = socket.socket()
39 self.irc.connect((self.server, self.port))
40 self.do_command(f"PASS oauth:{self.oauth_token}")
41 self.do_command(f"NICK {self.username}")
42 self.do_command(f"JOIN #{self.channel}")
43 self.send_message(self.channel, "Happy Valentine's Day, everyone! <3")
44 self.check_for_messages()
45
46bot = Bot()
47bot.connect_to_channel()
48