COMPATIBILITY ============= Everything works: Hexchat Mango IRC AndroIRC Mutter Usable, with bugs: AndChat - duplicate usernames appearing. possibly an upstream bug https://github.com/znc/znc/issues/424 Unusable: Yaaic - doesn't properly understand/parse the room join Atomic - crashes PRE-RELEASE =========== - part all nicks upon upstream server disconnection - test the current password auth - detect our own /me messages + don't echo back - threadsafe access to libnmdc hub options - client descriptions (CTCP USERINFO) - expose upstream op status WISHLIST ======== - send client keepalives (PING) /and/ ensure we get a reply (PONG) - client version sync (CTCP VERSION) - support changing nick (via reconnecting) - support USERHOST (used by androirc) - support WHOX - support WHOIS - support USERIP/KILL/KICK for ops - use CTCP chat to support irc-special characters in chat messages (colon, newline) - support SASL PLAIN authentication as well as just classic PASS - remove color code escape sequences REF === https://www.alien.net.au/irc/irc2numerics.html http://faerion.sourceforge.net/doc/irc/whox.var http://www.anta.net/misc/telnet-troubleshooting/irc.shtml https://tools.ietf.org/html/rfc2812 http://www.irchelp.org/irchelp/rfc/ctcpspec.html https://en.wikipedia.org/wiki/List_of_Internet_Relay_Chat_commands https://en.wikipedia.org/wiki/Client-to-client_protocol https://wiki.mibbit.com/index.php/Ctcp_(version)