IRCの話

IRCクライアント作りたいと思ってIRCの仕様調べ始めた。IRCは半年以上使ってるのに全然使い方わかってなくて、サーバとチャンネルがあってPRIVMSGとJOINのコマンドがあることくらいしか知らなかった。limechatは面倒なので、ブラウザで動くようなやつをRubyとJSで作って良い感じのデザインにして普段使いしたい。

こんな感じ

実装の話

Rubyの実装でこういう感じにしてみてるけど絶対あとで気持ち悪がられそう。

%w[
  ADMIN   KICK    MOTD     QUIT     VERSION
  AWAY    KNOCK   NAMES    RULES    VHOST
  CREDITS LICENSE NICK     SETNAME  WATCH
  CYCLE   LINKS   NOTICE   SILENCE  WHO
  DALINFO LIST    PART     STATS    WHOIS
  INVITE  LUSERS  PING     TIME     WHOWAS
  ISON    MAP     PONG     TOPIC    PASS
  JOIN    MODE    USERHOST USER     PRIVMSG
].each do |name|
  define_method(name.downcase) do |*params|
    command [name, params].flatten.join(" ")
  end
end

def command(msg)
  @socket.write(msg + "\r\n")
end
広告を非表示にする