Publicado por Rafael Rosa em 13 de May de 2010

Cinch – Um framework Ruby para criar bots para IRC

O Cinch (or repositório no GitHub) é um novo "microframework" Ruby para criar bots para IRC. Na prática, o Cinch é uma biblioteca que abstrai toda a complexidade ao se lidar com servidores IRC e oferece uma DSL para que você crie suas próprias funcionalidades facilmente.

O exemplo Hello Bot do Cinch mostra como é fácil criar um bot que se conecta à um servidor IRC (irc.freenode.org), entra num canal (#cinch) e responde quando dizem "hello":

irc = Cinch.setup :verbose => true do

  server "irc.freenode.org"
  nick "Cinchbot"
  channels %w(#cinch)

end

irc.plugin "hello" do |m|

  m.reply "Hello, #{m.nick}!"
end

irc.run

Essa não é a primeira tentativa de criar uma DSL para criação de bots em Ruby. O Autumn provavelmente é a biblioteca mais famosa, mas ela é muito pesada quando comparada ao Cinch, é quase como comparar o Sinatra com o Rails. Entre outras bibliotecas temos o Rbot, o Butler e o Isaac.

Se você prefere uma abordagem mais baixo nível para entender com o protocolo do IRC funciona, esse trecho de código Ruby mostra como implementar algumas funções básicas de IRC.

Deixe um Comentário