Programming a simple IRC (Internet-Relay-Chat) Client

前端 未结 5 1501
既然无缘
既然无缘 2021-01-30 02:42

I started using IRC at a young age, and I have always been fascinated with it. As a language exercise, I was thinking about programming a simple IRC client in Ruby with Shoes a

相关标签:
5条回答
  • 2021-01-30 03:19

    An earlier post mentioned RFC1459. While it is a very good introduction to IRC, it has actually been superseded by RFCs 2810-2813. Here is a more complete list of documentation you need to program anything IRC-related:

    • RFC1459 (original RFC; superseded, but still useful)
    • RFC2810 (IRC architecture)
    • RFC2811 (IRC channel management)
    • RFC2812 (IRC client protocol)
    • RFC2813 (IRC server protocol)
    • CTCP specification
    • DCC specification
    • Updated CTCP specification (not all clients support this)
    • ISupport (response code 005) draft (almost all servers support this nowadays)
    • Client capabilities (CAP command) draft (supported by some servers/clients)
    • IRCv3 standards and proposals (the future features of IRC, some of which are already widely supported)
    0 讨论(0)
  • 2021-01-30 03:25

    I once implemented a client and a server with 2 more guys (as part of a course).
    I can tell you that the RFC you were already linked to is great.
    I'd also try simply sniffing a connection with an existing client to see for yourself how stuff work.

    0 讨论(0)
  • 2021-01-30 03:31

    I found this gem on Wikipedia. Sounds intimidating.

    It's actually not.

    Telnet onto an IRC Server and witness the simplicity of the protocol first hand. The hardest part is the handshake, after that its very simple.

    0 讨论(0)
  • 2021-01-30 03:31

    Not exactly an answer to your question, but it may be helpful. If you are using Ruby, I have found the Autumn Leaves project to be a great way to build an IRC bot using Ruby:

    http://github.com/RISCfuture/autumn/tree/master

    It is pretty much the Jibble of the Ruby world.

    0 讨论(0)
  • 2021-01-30 03:35

    The IRC Specification is laid out in RFC 1459

    http://www.irchelp.org/irchelp/rfc/rfc.html

    0 讨论(0)
提交回复
热议问题