Пример #1
0
	def who(self, nick):
		before_len = len(self.msg_buffer)
		self.send_raw("WHO %s" % nick)
		while True:
			self.recv_msg()
			current_len = len(self.msg_buffer)
			for i in range(0, current_len - before_len):
				msg = irc_message(self.msg_buffer[-1 - i])
				rpl = get_rpl_alias(msg.command)
				if rpl == "whoreply":
					return self.msg_buffer[-1 - i]
				elif rpl == "endofwho":
					return ""
			before_len = current_len
Пример #2
0
	def _handle_msg(self, msg):
		global ignored_rpl
		msg = irc_message(msg)
		if msg.command == "PING":
			if msg.trailing.isdigit():
				self.pong(msg.trailing)
			else:
				self.pong()
			return ""
		elif(msg.command == "PRIVMSG") and (msg.trailing == "\x01VERSION\x01"):
			self.notice(msg.source.nick, "\x01VERSION %s\x01" % self._version)
			return ""
		else:
			rpl = get_rpl_alias(msg.command)
			if rpl == "nicknameinuse":
				self._nick += "_"
				self.nick(self._nick)
				return ""
		return msg