Chris4K commited on
Commit
abe7a86
·
1 Parent(s): da41b19
Files changed (1) hide show
  1. utils/logger.py +22 -8
utils/logger.py CHANGED
@@ -68,6 +68,10 @@ class IRCLogger:
68
  # Join the IRC channel
69
  self.join_channel()
70
 
 
 
 
 
71
  def send_message(self, message):
72
  self.socket.send(bytes("PRIVMSG {} :{}\r\n".format(self.channel, message), "UTF-8"))
73
 
@@ -76,16 +80,26 @@ class IRCLogger:
76
  self.socket.send(bytes("USER {} 0 * :{}\r\n".format(self.nickname, self.nickname), "UTF-8"))
77
  self.socket.send(bytes("JOIN {}\r\n".format(self.channel), "UTF-8"))
78
 
 
 
 
 
 
 
 
 
79
  def log_message(self, message):
80
  self.logger.info(message)
81
  self.send_message(message)
82
 
83
- #if __name__ == "__main__":
84
- # # Configure logging
85
- # logging.basicConfig(level=logging.INFO)#
86
- #
87
- # server = "irc.efnet.org"
88
- # port = 6667
89
- # nickname = "HFLogger"
90
- # channel = "#hflogs"
91
 
 
 
 
68
  # Join the IRC channel
69
  self.join_channel()
70
 
71
+ # Start a thread to handle incoming messages
72
+ receive_thread = threading.Thread(target=self.receive_messages)
73
+ receive_thread.start()
74
+
75
  def send_message(self, message):
76
  self.socket.send(bytes("PRIVMSG {} :{}\r\n".format(self.channel, message), "UTF-8"))
77
 
 
80
  self.socket.send(bytes("USER {} 0 * :{}\r\n".format(self.nickname, self.nickname), "UTF-8"))
81
  self.socket.send(bytes("JOIN {}\r\n".format(self.channel), "UTF-8"))
82
 
83
+ def receive_messages(self):
84
+ while True:
85
+ data = self.socket.recv(4096).decode("UTF-8")
86
+ if data.startswith("PING"):
87
+ self.socket.send(bytes("PONG {}\r\n".format(data.split()[1]), "UTF-8"))
88
+ else:
89
+ self.logger.info(data)
90
+
91
  def log_message(self, message):
92
  self.logger.info(message)
93
  self.send_message(message)
94
 
95
+ if __name__ == "__main__":
96
+ # Configure logging
97
+ logging.basicConfig(level=logging.INFO)
98
+
99
+ server = "irc.efnet.org"
100
+ port = 6667
101
+ nickname = "HFLogger"
102
+ channel = "#hflogs"
103
 
104
+ # logger = IRCLogger(server, port, nickname, channel)
105
+ # logger.log_message("This is a test log message from the IRC logger.")