XSF Discussion - 2019-06-09


  1. neshtaxmpp

    xmpp for ios

  2. pdurbin

    Hi again. :) I've been running an IRC channel for my open source project at work for six years and a contributor has been pushing lately for something more modern. I asked to go ahead and open a GitHub issue with his requirements and he did, a couple days ago. XMPP is certainly more modern than IRC but I'm not sure if it meets all of his requirements: https://github.com/IQSS/chat.dataverse.org/issues/7

  3. neshtaxmpp

    pdurbin: other day i say xmpp is much better than irc and they comment it is incorrent. i again i say xmpp is much better.

  4. Zash

    Nothing will ever satisfy everyones requirements

  5. pdurbin

    neshtaxmpp, that's sad. Maybe that person hasn't used XMPP much. It's really good! I've been getting back into XMPP lately after a decade or so off. :)

  6. pdurbin

    Zash, yes, it is ever thus. :) Can't make everyone happy.

  7. moparisthebest

    pdurbin: what on that list isn't satisfied by XMPP

  8. pdurbin

    moparisthebest, well, I'm not sure, to be honest. I'm still getting up to speed with what I've heard called "modern XMPP". :)

  9. neshtaxmpp

    someone know for ios xmpp client.

  10. moparisthebest

    pdurbin: I don't see anything not satisfied by 2005 xmpp muc either...

  11. moparisthebest

    Flaky Connections maybe

  12. Zash

    > IRC is not very helpfull in highlighting the existance of other channels or the activity that happens there. Neither is XMPP. A concept of a group of channels that are related would be nice to have.

  13. moparisthebest

    Put it in the topic? I've never seen anything with that actually

  14. neshtaxmpp

    pdurbin: sad is that zash was in this channel that they ban me. peoples dont like true: https://conocer.xyz/upload/photos/2019/06/aO8HBaIRGWnZNK1nXj14_07_0facdc41ee7c106050b368cf88efb3da_image.png

  15. Zash

    eh

  16. neshtaxmpp

    Zash: how is your friend pep from cluxia illuminati.

  17. pdurbin

    Zash, are you saying that it's not straighforward in XMPP to have several channels or rooms under a single "workspace" (Slack) or "community" (Gitter)?

  18. Zash

    Tho if you run a MUC per such group then that sorta works, but that needs DNS setup and stuff which adds overhead

  19. Zash

    pdurbin: muc.xmpp.org is kinda such a thing

  20. neshtaxmpp

    pdurbin: if xmpp make general' like irc... and xmpp. irc + xmpp = then nobody will complaint.

  21. neshtaxmpp

    pdurbin: is new xmpp and for that classic peoples prefer irc...

  22. pdurbin

    Zash, is muc.xmpp.org only available via XMPP? I tried going to it under HTTP in the hope of seeing related rooms, kind of like how I can see a bunch of rooms under the jupyter "community" at https://gitter.im/jupyter/home

  23. Zash

    pdurbin: Logs are at https://logs.xmpp.org/xsf/

  24. Zash

    pdurbin: The point being that all the rooms/channels hosted on it are related to the same topic

  25. Zash

    pdurbin: Problem being that you can't easily do that without running your own server

  26. neshtaxmpp

    pdurbin: all rooms need dns

  27. Zash

    Altho I do like it if more people run servers

  28. moparisthebest

    pdurbin: you want a web UI for it? You have options there, probably Converse or movim

  29. pdurbin

    Zash, it sounds like you're saying that https://logs.xmpp.org is the HTTP view of related channels, similar to the Gitter "community" example I gave.

  30. Zash

    pdurbin: It's a public view of the logs

  31. pdurbin

    Zash, yes. Ok.

  32. pdurbin

    moparisthebest, I don't worry much about flaky connections with Conversations on Android. I don't even notice when I lose signal. It's a great user experience.

  33. moparisthebest

    pdurbin: right current xmpp handles that well

  34. pdurbin

    moparisthebest, and yes, a web UI is essential. Thanks for the suggestions. I've heard of Converse but not movim.

  35. pdurbin

    neshtaxmpp, interesting. I didn't know that XMPP rooms each need a dedicated DNS entry. It's been a while since I helped run an XMPP server and I didn't set it up.

  36. Zash

    Rooms don't need DNS; the MUC service does

  37. pdurbin

    Zash, thanks, that makes more sense. :)

  38. moparisthebest

    So does an IRC service

  39. moparisthebest

    And a http service

  40. pdurbin

    sure

  41. oli

    pdurbin: are you looking for a free service or is self-hosting also an option?

  42. pdurbin

    oli, sometimes I can convince a community member to run services for the project so I'd say that self hosting is probably an option.

  43. Zash

    self-hosting gives you more options and more control

  44. pdurbin

    Incidentally, rather than clutter that issue the contributor opened with a comment by me with clarifying questions, I've taken the description in that issue he opened and left comments on various points in a google doc: https://docs.google.com/document/d/18-4MrbSHYhcxvuFs1alAz0Opm_JTkRK2E0bafAxAHSI/edit?usp=sharing ... comments are welcome!

  45. pdurbin

    Zash, sure, makes sense.

  46. pdurbin

    We are having our 5th annual conference for our project in a week and a half and the question I'm anticipating is, "Can we shut down the #dataverse IRC channel and use Slack, instead?" I'd like to avoid this. And I'm wondering if XMPP would be a good choice. Public logs is one of my main requirements but as you can see people in the community have their own ideas of what they want. :)

  47. oli

    pdurbin: if you are looking for a slack like experience, I think mattermost is quite easy to install. Unfortunately it doesn't speak XMPP/MUC

  48. Zash

    pdurbin: In my experience, everyone has their own ideas of what they want. The hard part is figuring out what you really need.

  49. pdurbin

    oli, do you know if Mattermost can be installed in such a way that logs are public? I know this is possible with RocketChat because that's how Inkscape runs it: https://chat.inkscape.org

  50. oli

    pdurbin: I don't think that feature is included. It's most likely doable with a bot are you can use the API.

  51. pdurbin

    oli, bummer. Thanks.

  52. oli

    I wonder how hard it is two write a MUC component for mattermost / rocketchat / slack / whatever

  53. Zash

    oli: That does what?

  54. oli

    offering all mattermost channels as MUC rooms

  55. Zash

    So a gateway/transport/bridge/thing?

  56. oli

    could be also implemented as a bridge

  57. Zash

    (those were all words for the same thing)

  58. oli

    is it?

  59. Zash

    gateway and transport are words used by XMPP since the early days of Jabber, bridge is what Matrix calls it

  60. Zash

    oli: https://github.com/42wim/matterbridge/ btw

  61. oli

    it doesn't bridge transparently

  62. oli

    bridge over bots

  63. Zash

    That's one way to do it

  64. Zash

    Doing it as a component that acts as a MUC service is another

  65. Zash

    biboumi does a pretty good job at that for IRC

  66. pdurbin

    For my project's use case, potentially switching from IRC only, it would be nice if a future service supported both IRC and XMPP, the way Slack used to. But this isn't a hard requirement for me. I guess I'm ok with non-standardized interfaces like whatever Gitter or RocketChat use.

  67. oli

    Zash: and I thought a gateway is something else in XMPP: https://xmpp.org/extensions/xep-0100.html

  68. Zash

    > One distinguishing characteristic of Jabber technologies from their earliest days has been the existence of gateways (also called "transports") between the Jabber network and legacy instant messaging

  69. Zash

    oli: There have been IRC gateways since forever and they usually act like a MUC service

  70. oli

    Zash: > All existing client proxy gateways require a Jabber User to register with the Gateway before sending messages or presence through the gateway. Although strictly speaking registration is not required (e.g., a Gateway could prompt the Jabber User for credentials every time the user attempted to communicate through the gateway, or once per "session"), in practice this step is required.

  71. Zash

    For connecting to services that require an account (ie ICQ and MSN) yes. IRC often doesn't, but can require it anyways.

  72. pdurbin

    This "Document how to set up a Gitter-like user experience" issue I opened is where I'm tracking if it's feasible to switch my project from IRC to XMPP: https://github.com/modernxmpp/modernxmpp/issues/21

  73. moparisthebest

    pdurbin: you can join IRC channels from an xmpp client with biboumi and that makes them act like xmpp mucs

  74. moparisthebest

    Or you can spin up an ircd backed by a muc service https://github.com/moparisthebest/xmpp-ircd allowing IRC clients to join your real xmpp muc

  75. moparisthebest

    But at least mattermost is Foss unlike slack

  76. pdurbin

    moparisthebest, cool, these are great. Thanks!

  77. pdurbin

    RocketChat is also FOSS and seems like it supports public logs out of the box (again the Inkscape example above).

  78. pdurbin

    Are there any open source projects that aren't already oriented around XMPP that use XMPP as their primary chat platform? Would Dataverse be the first if we switch from IRC to XMPP? Or do open source projects mostly just use Slack these days? Does this question make sense? :)

  79. Zash

    Good question.

  80. pdurbin

    I'm glad it makes sense. :)

  81. pdurbin

    I can't be the only one who cares about chat standards. RFCs for IRC and XMPP.

  82. Zash

    IRC, especially Freenode, hosts quite a lot of FOSS projects still

  83. pdurbin

    Sure. And six years ago when I started the #dataverse channel, freenode was a competely normal choice.

  84. pdurbin

    Freenode was growing in adoption back then: http://royal.pingdom.com/wp-content/uploads/2012/04/irc.002.jpg

  85. pep.

    I'm not really sure I understand what <no-permanent-store/> is for, any example?

  86. Zash

    anti-MAM

  87. pep.

    You wouldn't use no-store?

  88. Zash

    An offline message store might keep a message until it's delivered, while an archive (MAM) might keep it longer.