def quit(self, message="", do_action=False, action="Quitting!!!"): if(do_action): for channel in self.channels: self.send_message(irc_server_message(msg_type="PRIVMSG", recipient=channel, message = chr(1)+"ACTION " + action + chr(1))) self.channels = [] self.cached_lines = None self.s.send("QUIT " + message + " \n")
def run(self): print "Server thread" self.Dexecuting = True while True: line = self.connection.get_next_line() msg = message.irc_server_message(strang=line) if (self.handle_server_message(msg) == False): self.Dexecuting = False print "/Server thread" return
def run(self): print "Server thread" self.Dexecuting = True while True: line = self.connection.get_next_line() msg = message.irc_server_message(strang = line) if(self.handle_server_message(msg) == False): self.Dexecuting = False print "/Server thread" return
def join(self, channel, key = ""): if(self.channels.count(channel) > 0): return True this_join = False while(not this_join): self.s.send("JOIN " + channel + " " + key + " \n") buff = irc_connection.__receive_buffer_(self.s) lines = irc_connection.__split_lines_(buff) i = 0 l = len(lines) while(i<l): msg = irc_server_message(strang=lines[i]) if(msg.msg_type == "JOIN"): print "JOINED " + channel this_join = True break i += 1 if(i != l and this_join == True): self.channels.append(channel) self.cached_lines = lines[i+1:] return True
def get_next_message(self): return irc_server_message(strang = self.get_next_line())