I'd prefer to see more expansion on the IRC protocol side rather than clients adding their own non-standard augmentations.
Things like server-side scrollback, connection persistence without a bouncer, push notifications for mobile would be great. I currently use Quassel server with QuasselDroid app to achieve these things with works well but again it's a client thing only. IRCCloud does a similar thing though not self-hosted.
I'd love to see IRC make some big strides like it did in the 90s. I don't care about video etc though. It shouldn't become another whatsapp or facebook messenger. Though embedding pictures would be useful.
I know IRCv3 is a thing but development is way too slow and isn't really taking the new requirements of the mobile world into account.
But clients adding proprietary stuff that only works with themselves has nothing to do with the idea of IRC.
Unless there's a Council of IRC who decrees changes in protocol (and if there is, they clearly aren't doing their job), then "proprietary" features is how the protocol expansion happens - provided the features are useful and easy to implement (read: documented), other clients will jump on the bandwagon. An example of this already happening is colors in IRC - mIRC defined some proprietary control codes, and now every client supports them and it's de-facto part of the standard.
I agree with your feature list, especially scrollback. All that needs to happen is some very popular IRCd taking a stand and making a trivial extension to the protocol, which reports scrollback given a particular server command. Standards be damned - clients will rush to add support for this feature, and servers will soon be seen as second class if they don't support it. It could happen so easily!
IRC was established through the normal RFC process at the time, so there is, in a way, a “council” governing it.
The original protocol is amazingly simple. But if you want to support connection persistence, you will need to pretty much redesign it - and in this case, why not go XMPP or Matrix? Both can already do that, and they are open source as well.
Here is an explanation.[0]
But then I remembered DCC (and xDCC) are unusable these days because of NAT. So STUN wouldn't help, but you need the TURN relay.
I really can't wait until IPv6 is everywhere; I believe it will allow p2p to have a second renaissance.
I have UPNP turned off, but can't it do similar, automatically?
- NAT hole-punching for free
- end-to-end encrypted for free
- peers identified by a hash of their public key, so no CA or similar required
- no metadata leakage
It seems like the perfect solution, but hardly anyone does it.
https://ricochet.im/ is a chat program that works this way, but the client is pretty minimal.
That said, it made the tor-specific sites simple not just because JS was banned, but that's not video chat, isn't it?
You might be able to play freeciv or text chat this way but it’s just way too slow and jittery for video. This is part of the design of the thing and will probably get worse over time as security improves.
STUN/TURN is not a requirement, but most users will have issues if you don't add those services to the mix.
Gets muddy with bouncers, you generally have an option to override this in bouncers and clients.
It's fun running cloc from time to time: Very evenly between Perl, JavaScript, CSS and template files: https://convos.by/doc/#statistics
Just curious, why they use such a weird domain zone?