v0.2.0 - IRC Gateway
Features
- IRC protocol gateway -- native IRC clients (irssi, WeeChat, HexChat, etc.) can connect to EchoHub servers
- Cross-protocol messaging -- messages flow bidirectionally between IRC and TUI clients in real time
- SASL PLAIN authentication -- IRC clients can authenticate via SASL or traditional PASS/NICK/USER
- Full IRC command support -- JOIN, PART, PRIVMSG, QUIT, NAMES, TOPIC, WHO, WHOIS, AWAY, LIST, MODE, MOTD
- TLS support -- optional encrypted IRC connections on port 6697
- Image-to-IRC formatting -- images appear as ASCII art line-by-line with download URLs
- Message splitting -- long messages automatically split at word boundaries (~400 byte chunks)
- Configurable MOTD -- server message of the day for IRC clients
Architecture Changes
- Extracted shared business logic from
ChatHub into protocol-agnostic IChatService
- Introduced
IChatBroadcaster pattern for multi-protocol event fan-out
ChatHub refactored to thin adapter delegating to IChatService
ChannelsController updated to use IChatService for broadcasts
- New
EchoHub.Server.Irc project for clean separation of concerns
IChatService and IChatBroadcaster interfaces live in EchoHub.Core/Contracts