XMPP Service Operators - 2020-03-24


  1. tom

    Hey guys

  2. tom

    I think it's especially important to promote xmpp now of all times

  3. tom

    Everyone is looking for a way to communicate online with their friends and family

  4. tom

    Hopefully they choose XMPP and not some proprietary system

  5. Jeybe

    > Everyone is looking for a way to communicate online with their friends and family tom: Yes via audio- and videochat. Not many xmpp-clients and xmpp-servers support that. I think conversejs and monal does. For textchat xmpp is fine, of course.

  6. tom

    Which really sucks

  7. tom

    Because the protocol is there

  8. tom

    Server supports it

  9. tom

    Most clients suck though in regards to jingle support

  10. jonas’

    server’s don’t need any special support for A/V

  11. jonas’

    it’s all clients

  12. jonas’

    a TURN service associated with the XMPP server helps though

  13. Jeybe

    jonas’: And in practice? Can most people connect to each other without TURN (so it's p2p then, isn't it?

  14. jonas’

    Jeybe, in the worst case, audio via IBB will work (albeit probably with terrible latency)

  15. Jeybe

    jonas’: IBB?

  16. jonas’

    In-Band Bytestreams

  17. jonas’

    Jeybe, also, many home routers support UPnP which allows to temporarily open ports for this type of stuff. Clients may not, though.

  18. jonas’

    normally you’ll want to avoid TURN if you can either way, because it adds latency and is costly to the server operator. P2P (possibly with UPnP) should be preferred for small conferences. For large conferences you need something else entirely (like Jitsi Videobridge)

  19. Jeybe

    > In-Band Bytestreams So exchanging data via the xmpp-server / xml?

  20. jonas’

    yes

  21. Jeybe

    Ok

  22. Jeybe

    Another thing, does the specification for audio- and videocalls include conferences with multiple persons or is it 1:1 only?

  23. jonas’

    that’s a very good question

  24. jonas’

    I actually don’t know and it looks as if it does not

  25. jonas’

    I actually don’t know and it looks as if it does not include multi-user calls

  26. jonas’

    in which case we should kick the jitsi people to get their stuff spec’d, because it’s actually quite sane

  27. jonas’

    https://xmpp.org/extensions/xep-0340.html

  28. jonas’

    that’s the spec ^

  29. Jeybe

    Focus agent... sound like the thing jitsi uses

  30. Jeybe

    Is it?

  31. jonas’

    yes

  32. Link Mauve

    Their implementation is jicofo.

  33. tom

    » [00:14:55] <jonas’> a TURN service associated with the XMPP server helps though turn? Isn't that supposed to be what the socks5 bytestream proxy is for?

  34. tom

    » [00:18:30] <jonas’> Jeybe, also, many home routers support UPnP which allows to temporarily open ports for this type of stuff. Clients may not, though. Unnecessary if they have ipv6

  35. jonas’

    tom, that’s (still) a pretty big *if*. And also many home routers will filter traffic on IPv6 by default, too.

  36. jonas’

    so you still need UPnP to punch a hole in the firewall

  37. tom

    » [01:11:51] <jonas’> tom, that’s (still) a pretty big *if*. And also many home routers will filter traffic on IPv6 by default, too. That's stupid

  38. jonas’

    it’s not

  39. jonas’

    given the insecurity of the default windows installation

  40. jonas’

    and given that you still easily get an open rpcbind server on a fresh debian installation

  41. jonas’

    without even knowing

  42. jonas’

    I’m pretty thankful for this type of sane defaults

  43. tom

    The rest of the world shouldn't have to suffer network wise because microsoft shits out another terrible proprietary OS

  44. jonas’

    you also don’t want your mdns server being used in amplification attacks

  45. jonas’

    note that all my examples except the first are 100% unrelated to windows

  46. jonas’

    also, android phones

  47. tom

    » [00:19:24] <jonas’> normally you’ll want to avoid TURN if you can either way, because it adds latency and is costly to the server operator. P2P (possibly with UPnP) should be preferred for small conferences. For large conferences you need something else entirely (like Jitsi Videobridge) what XMPP clients support av? And just one-on-one or multiuser?

  48. tom

    Does jitsi integrate with XMPP?

  49. jonas’

    tom, Jitsi and Jitsi Meet are completely different pieces of software.

  50. jonas’

    Jitsi is a more or less normal XMPP client which does jingle and can be used for 1:1 calls I think

  51. jonas’

    Jitsi Meet is a highly integrated web conferencing suite which uses XMPP in the backend as signalling protocol (via BOSH)

  52. jonas’

    Jitsi Meet doesn’t federate in the default setup though, and I don’t think it can be made to federate

  53. tom

    Is there any way to use jitsi meet without a web browser

  54. jonas’

    no

  55. jonas’

    well, yes

  56. jonas’

    there are android and iOS apps

  57. tom

    Webrtc never works right

  58. jonas’

    it odes

  59. jonas’

    it does

  60. tom

    What about a linux or bsd program

  61. tom

    » [01:16:12] <jonas’> it does not in any of my testing

  62. jonas’

    used jitsi-meet extensively in the past week, and we had virtually no issues

  63. jonas’

    jitsi-meet does a few things to make webrtc more stable

  64. tom

    Last time i had to use something webrtc based it took 53 tries to get it working

  65. jonas’

    like including a turn-like server

  66. tom

    I'm really sick and tired and webapps

  67. jonas’

    we all are

  68. jonas’

    it works though

  69. tom

    It doesn't work

  70. jonas’

    in contrast to all other free xmpp-based conferencing solutions.

  71. jonas’

    have you tried jitsi-meet?

  72. jonas’

    if not, you can’t say whether it works or not

  73. tom

    No, what i'm saying is that webrtc doesn't work

  74. jonas’

    webrtc works just fine

  75. jonas’

    like jingle

  76. jonas’

    it’s essentially the same thing.

  77. tom

    Taking 53 tries is not what i call working

  78. jonas’

    sure, that’s what you get without a turn server

  79. jonas’

    because p2p sucks

  80. jonas’

    because firewalls and nats

  81. tom

    It wasn't p2p

  82. jonas’

    what was it then?

  83. jonas’

    webrtc is p2p by default.

  84. tom

    The browser itself

  85. jonas’

    if you say so

  86. tom

    Almost all browsers besides google chrome or firefox (which you wouldn't use if you cared about privacy) turn off webrtc by default because it's implementation is so shotty

  87. tom

    And leaks info when using proxies

  88. tom

    There really needs to be a solution, that isn't just cramming more bs into a web browser

  89. tom

    That probably should never be there in the first place

  90. tom

    Which is what i'm asking

  91. Link Mauve

    tom, wanna contribute WebRTC support to some desktop XMPP client?

  92. Link Mauve

    So that it is compatible with Jitsi Meet?

  93. tom

    I don't want to contribute to anything with 'web' in the name

  94. Link Mauve

    Too bad then.

  95. tom

    What about SIP

  96. Link Mauve

    Why do SIP when you have Jingle already?

  97. tom

    I've had videocalls before with a very old version of linphone

  98. tom

    Conferences too

  99. tom

    Dial-by-direct-ip

  100. Link Mauve

    I’ve also had that using Ekiga, but they were fully unencrypted, required another channel to coordinate on, opening a port on each participants’ router, and were generally not very user-friendly.

  101. jonas’

    (the part with the port could be solved by UPnP support in the tools)

  102. tom

    But they did work

  103. tom

    And work they did without 2gb+ of ram

  104. Link Mauve

    With modern XMPP clients, using Jingle for signaling and WebRTC for the transport, that can change.

  105. Link Mauve

    If you put aside your blind hate for a second and look at what it actually is.

  106. Link Mauve

    That is, a nice set of extensions above RTP.

  107. Link Mauve

    (Plus a JavaScript API, hence the name I guess, but you can totally ignore that part.)

  108. tom

    Oh god

  109. tom

    Javascript

  110. tom

    Link Mauve: have you ever used tox?

  111. tom

    Or qtox

  112. Link Mauve

    No, but I’ve read about their architecture, why?

  113. tom

    Well i was just thinking and asking around

  114. tom

    For anyone who has ever had a non-web-browser videocall before. It was something i am sure we had back in the early 2000s

  115. Link Mauve

    Sure, many XMPP clients also had that.

  116. tom

    Apparently not. I guess we are in the stoneage still when it comes to videocalls. Standards suck (or at least implementations) so every company is going off and building their own thing

  117. Link Mauve

    Empathy, Gajim, I think Psi.

  118. Link Mauve

    Jitsi of course.

  119. tom

    Link Mauve: psi 'has it' but it doesn't actually work. It's just a reference point

  120. tom

    But i'm talking about multi-party

  121. tom

    Part lines for video

  122. tom

    *party

  123. Link Mauve

    Multi-party is harder to do, especially if you want it to be efficient on the clients’ uplink.

  124. Link Mauve

    Empathy did it the naïve way for instance, where each participant had a p2p connection with each other.

  125. tom

    Link Mauve: I mentioned qtox and tox because that's the only open source thing i have used in recent years where videocalls worked reliabily

  126. Link Mauve

    That means you send your own streams N-1 times.

  127. Link Mauve

    tom, IIRC Tox also does it that way, which means it doesn’t scale above a few participants.

  128. Link Mauve

    Depends on the emitter with the weakest uplink.

  129. Link Mauve

    In a world where everyone has fiber, it would be fine.

  130. Link Mauve

    We’re not in that world.

  131. jonas’

    except for the terrible waste of resources

  132. tom

    Link Mauve: what if your MANET looked like this: https://www.open-mesh.org/projects/batman-adv/wiki/Multicast-optimizations

  133. jonas’

    in a world with fiber and working multicast in the internet, now that’d be fun

  134. tom

    Your talking UNICAST

  135. jonas’

    multicast in the internet does not work

  136. tom

    I know that

  137. tom

    But MANETS can be created over an entire region

  138. tom

    Town or county

  139. tom

    Bridged with VPN tunnels

  140. Link Mauve

    It would be nice in Cuba, but here in Europe everyone is using Internet with an ISP.

  141. tom

    And the batman-adv optimized multicast could ensure effective use of the vpn tunnels

  142. tom

    » [02:05:42] <Link Mauve> It would be nice in Cuba, but here in Europe everyone is using Internet with an ISP. It's funny that it's always the regimes with the practically more free internets

  143. jonas’

    I’m sure that the unicast VPN tunnels do not impede the performacne of multicast at all /sarcasm

  144. tom

    jonas’: that's where the optimized multicast could come in

  145. tom

    Nowadays arm cores are dirt cheap

  146. tom

    We could make every node a router

  147. Maranda

    huhu multicast jingleparty over ipsec/something else, *coughs* *buffer*, hi, *buffer*, hello *buffer*, been fun *buffer* :D

  148. tom

    Tinc or wireguard

  149. ajeremias

    dont cough.. please. or put your hand in front