Bot IRC usando Ruby

#dev, #ruby

Voltei a usar IRC depois de um tempo e como antes eu já ouvi falar muito de bots em irc resolvi testar por mim mesmo.

Após pesquisar um pouco achei o cinch:

The IRC Bot Building Framework

Ou seja: “Um framework de criação de bot IRC”.

Mãos a obra

Primeiro instale a gem ‘cinch’ ou como eu prefiro cria um arquivo Gemfile:

source "http://rubygems.org"

gem "cinch"

No nosso primeiro exemplo, vamo fazer o bot responder bom dia para todos que derem bom dia:

require "rubygems"
require "bundler/setup"

bot = Cinch::Bot.new do
  configure do |c|
    c.server = "irc.freenode.net"
    c.channels = ["#gurupi"]
  end

  on :message, /bom dia/i do |m|
    m.reply "Bom dia, #{m.user.nick}"
  end
end

bot.start

Pronto nosso bot já está ativo, basta usar.

Note que estou usando expressão regular, ou seja, bom dia, Bom dia e Bom dia!, vão funcionar sem problemas ;).