I just wondered why STUN/TURN was needed in particular, if you can communicate details over IRC, having an external service for this when other p2p communication methods can be made using IRC seemed strange.
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.
As the sibling comment mentioned, it's a very slow network and known Tor entry nodes are blocked in certain countries. The network could become faster if more people around the world ran relays, but it's becoming more difficult to even run a simple bridge due to hostile ISP and website activity.
So I used to live in the woods where not a single ISP would give you a public address and used TOR to ssh back into the house.
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.
I used DCC for years behind NAT, just forwarded a port range and configured my client to always use that port range. It takes a minute to set up, but then it's seamless.
I have UPNP turned off, but can't it do similar, automatically?
I say this all the time about IPv6. I started running a dual stack with an HE IPv6 tunnel in 2002 thinking I was getting ahead of the curve. 18 years later and I'm still way out front :(
Kudos for maintaining a Perl app in 2020. I went into the github expecting some huge node.js jumble and was surprised to see a couple .pm files running everything.
Thank you! It's all because of Mojolicious real time web framework. The fun of using the well designed components, and not to mention the ease of writing tests makes it a no-brainer to me :)
It's fun running cloc from time to time: Very evenly between Perl, JavaScript, CSS and template files: https://convos.by/doc/#statistics
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.
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.
>I'd prefer to see more expansion on the IRC protocol side rather than clients adding their own non-standard augmentations.
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!
CTCP messages are widely implemented, and there are no standardised or restrictions to how to format them. Since there are no good way to pass WebRTC signalling through IRC, I made up my own protocol. If a more standard way is available in the future, then Convos will for sure adopt it.
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.
reply