All pastes #46301 Raw Edit

Anonymous

public ruby v1 · immutable
#46301 ·published 2006-03-20 02:42 UTC
rendered paste body
require 'net/http'@config = {}# Configuration@config['net']	= 'irc.slacked.org'@config['port']	= 6667@config['name'] = 'RubyBot'@config['chan'] = '#lol'# Connect to IRC networksocket	= TCPSocket.new(@config['net'], @config['port'])# Send NICK, USER, and JOINsocket.puts("NICK #{@config['name']}\r\n")socket.puts("USER #{@config['name']} 0 0 #{@config['name']}\r\n")socket.puts("JOIN #{@config['chan']}\r\n")# Input threadThread.new do	loop do		# Sent input to channel		socket.puts("PRIVMSG #{@config['chan']} :#{gets}\r\n")	endend# Print all incoming datauntil socket.eof?	# Split incoming packet	data = socket.gets.split(' ')	# Choose command	case data[0]	when 'PING'		# Reply to ping		socket.puts("PONG #{data[1]}\r\n")	else		# PRIVMSG in channel		if data[1] == 'PRIVMSG' and data[2] == @config['chan']			# Get username			usr = data[0].scan(/:(.*)!/)[0][0]			# Get message contents			msg = data.slice(3..data.size - 1).join(' ')			msg = msg[1, msg.length - 1]			# Print it			puts "#{usr}: #{msg}"		end	endend