XSF Discussion - 2020-10-02


  1. Daniel

    does anyone still happen to have a link to the barbecue vs bazaar blog post (or what ever the analogy was) that argues that Slack and WhatsApp can’t be done in the same app

  2. wurstsalat

    Daniel, https://blogs.gnome.org/tbernard/2018/05/16/banquets-and-barbecues/

  3. Daniel

    wurstsalat, thanks

  4. Daniel

    so it was neither bbqs nor bazaars. no wonder I didn’t find anything with Google :-)

  5. Daniel

    so it wasn’t bbqs and bazaars. no wonder I didn’t find anything with Google :-)

  6. wurstsalat

    docs.modernxmpp.org had it in its footnotes :)

  7. Daniel

    i still find the analogy odd because it doesn’t really make sense to me which of those has more people

  8. Daniel

    or is more intimate or whatever

  9. MattJ

    Daniel: see also https://docs.modernxmpp.org/rationale/#group-chats

  10. mdosch

    A barbecue is usually outside and informal, so random people from nearby can join and a banquette is invitation only. So banquette is private group and barbecue is public channel?

  11. Daniel

    only that it is the exact opposite in the text

  12. Daniel

    but yes that's why i'm confused

  13. Ge0rG

    The terminology didn't age very well in the time of a global pandemic.

  14. mdosch

    > only that it is the exact opposite in the text > but yes that's why i'm confused He, maybe BBQs are different at their place. Here you do them in the park or on the river and the BBQ groups happily mix and get together. Like on a festival. Banquette, at least for me, has the formal, invitation only, exclusive touch. 🤔

  15. Guus

    I have no clue what the context here is, but in my locale, a banquette does not imply any invitation type. It's more of a 'self-service' type of dinner setting, rather than you being served by a waiter.

  16. mdosch

    Ah, that's what we call buffet here.

  17. Daniel

    In their definition I think it's more of fundraiser

  18. Daniel

    People don't know each utter

  19. Daniel

    People don't know each other

  20. Daniel

    And are united by a single topic / cause

  21. Guus

    Yea, we frequently use 'buffet' too. Maybe I got my wires crossed.

  22. mdosch

    Dict says > banquet (a large celebratory meal; a feast) (noun) Festmahl {n}, Bankett {n}

  23. MattJ

    I don't think I've been to a barbeque of more than ~8 people

  24. mdosch

    > I don't think I've been to a barbeque of more than ~8 people Go to the isar beach in summer. Hundreds if not thousands do barbecue. 😃

  25. MattJ

    Probably says more about me than how the food is cooked

  26. mdosch

    But I guess we can agree that those terms are not good chosen as it seems they get different interpretations.

  27. MattJ

    Appears so

  28. Kev

    Has anyone else wanted to add 'favouriting' chats to their client, and if so what did they do? I'm thinking that a clone of the BM2 node but that contains favourites instead of bookmarks would be sensible for simplicity, although clearly BM2 could also be used with the <extensions/>.

  29. Zash

    Kev: Conversations has it

  30. Kev

    It's a shame that BMs are our mechanism for autojoining rooms, because logically what I want is to BM these chats (but don't want all my autojoined/known rooms to be BMd!).

  31. Kev

    Zash: Ta. Do you know what they're doing? Daniel?

  32. Zash

    I don't know more than that it pinns the chat to the top of the list of conversations

  33. Daniel

    It a local feature

  34. Daniel

    But publishing it will obviously be very easy once a XEP exists

  35. Zash

    I've wondered if maybe one of these decades we should go ahead and make "bookmarks" a native concept akin to rosters, possibly merge with rosters, since it's such a big part of chats.

  36. Zash

    Mental note for XMPP 2.0

  37. Zash

    Daniel: The per-chat notification setting would be valuable to the server for CSI and push notification decisions, fwiw.

  38. Zash

    That's separate, right?

  39. Daniel

    Currently. Yes

  40. Daniel

    But yes combining open and favorites might be a good idea

  41. Kev

    Zash: Rosters used to be perfectly usable for this, and allowed arbitrary extensions, and people habitually stored groupchats in them and stuff. But there was much wailing and gnashing of teeth and now people believe they should only contain Real People. Sadly.

  42. Daniel

    Otherwise you might end up in weird situations where something is favorite but not open

  43. Kev

    Daniel: If I was to do something like BM2 (although changing from BM1:private to BM2 would make this much less trivial) and store <favourite xmlns=.../> inside <extensions/> would that be something Conversations would adopt, or do you see issues with it?

  44. Kev

    Daniel: If I was to do something like using BM2 (although changing from BM1:private to BM2 would make this much less trivial) and store <favourite xmlns=.../> inside <extensions/> would that be something Conversations would adopt, or do you see issues with it?

  45. Kev

    Daniel: If I was to do something like using BM2 (although changing from BM1:private to BM2 would make this much less trivial for me) and store <favourite xmlns=.../> inside <extensions/> would that be something Conversations would adopt, or do you see issues with it?

  46. Daniel

    I think so. I'm not sure I'm ready to sync open conversations yet. Decoupling this would make it easier to implemt short term. But mid term coupling is the right way (see arguments above)

  47. Kev

    It's not just about 'open' conversations for me. I'd like a user to be able to 'pin' certain chats for easy access (or possibly even for the client to pin them automatically based on frequent use).

  48. Daniel

    Right. But pinned is always a subset of open, no?

  49. Kev

    I'm not exactly sure what 'open' means.

  50. Zash

    pinned = intersection ( open, favorite ) maybe?

  51. Kev

    Ah, no, it's not.

  52. Kev

    Because 'open' only applies to MUCs, right? I'm interested in all chats.

  53. Kev

    So for MUCs Pinned is a subset of Joined, but there are also Pinned 1:1s.

  54. Zash

    Kev: When was that (anything in rosters)? Pre RFC 3921?

  55. Daniel

    Right. I guess not all clients have the concept of open

  56. Kev

    Even up to early 3921bis times.

  57. Daniel

    But in Conversations it means available in the overview not just in the roster

  58. Daniel

    Or open tab in some clients I guess

  59. Kev

    Gotcha. Yeah, the last released version of Swift had tabs that probably correspond to this.

  60. Kev

    So in that case pinned *wouldn't* be a subset of open.

  61. eta

    wait, using the roster for groupchats sounds ideal

  62. eta

    you even get roster groups

  63. jonas’

    until you consider the effects of sending presence

  64. Kev

    Yes. There are countless upsides.

  65. jonas’

    and the confusion if a client doesn’t know it’s a group chat

  66. Kev

    jonas': There's nothing that says you have to send presence to things in your roster.

  67. Kev

    (Unless there's an appropriate presence sub, naturally)

  68. Zash

    If the server is fully aware that those are groupchats, then it can prevent you from trying too

  69. moparisthebest

    I just got a very nice random email from someone that says "XEP-0148: In the schema the base64Binary should be xs:base64Binary." does anyone know if that is true? https://xmpp.org/extensions/xep-0418.html#schema

  70. moparisthebest

    I just got a very nice random email from someone that says "XEP-0418: In the schema the base64Binary should be xs:base64Binary." does anyone know if that is true? https://xmpp.org/extensions/xep-0418.html#schema

  71. pep.

    I'd say "probably"

  72. pep.

    Yes, the xs prefix being already declared above

  73. moparisthebest

    looks like I need to update this text anyway: "XEP-XXXX: https://xmpp.org/extensions/inbox/dox.html"

  74. pep.

    heh

  75. moparisthebest

    so it *should* be prefixed by xs: ?

  76. pep.

    Is any other type in XEPs prefixed with xs? Does anybody know how to Schema at the XSF?

  77. larma

    the way you currently do it it's pointing to an undefined type

  78. moparisthebest

    I certainly do not (know how to Schema)

  79. larma

    put the schema and the xml in a schema validator and see if it validates 😉

  80. moparisthebest

    ok well I picked 4 other random XEPs and all of them have "schema will be supplied at some later point" LOL

  81. jonas’

    I did a thing which lints xeps including schema validation.

  82. jonas’

    I get the impression I should clean it up

  83. moparisthebest

    https://xmpp.org/extensions/xep-0065.html#schema these all say type='xs:...'

  84. moparisthebest

    I'll put in a PR fixing both of those issues and let council sort it out :)

  85. larma

    moparisthebest, according to https://www.freeformatter.com/xml-validator-xsd.html you need to put xs:base64Binary. Also your example "vOIBIAABAAAAAAABB2V4YW1wbGUDb3JnAAABAAEAACkQAAAAAAAADAAKAAj5HO5JuEe+mA" is actually invalid base64, it must be "vOIBIAABAAAAAAABB2V4YW1wbGUDb3JnAAABAAEAACkQAAAAAAAADAAKAAj5HO5JuEe+mA==" 😉

  86. pep.

    moparisthebest, yeah schemas in XEPs are a mess :(

  87. moparisthebest

    larma, "In both the query and response, the content of the <dns/> element is the DNS on-the-wire format as defined in RFC 1035 [1]. The body MUST be encoded with base64 RFC 4648 [5]. Padding characters for base64 MUST NOT be included." :)

  88. pep.

    Or well, they aren't, because they don't exist

  89. larma

    moparisthebest, well in that case you are not using the xs:base64Binary type

  90. moparisthebest

    maybe... where is *that* defined

  91. pep.

    https://www.w3.org/TR/xmlschema-2/#base64Binary

  92. moparisthebest

    > Note that this grammar requires the number of non-whitespace characters in the lexical form to be a multiple of four, and for equals signs to appear only at the end of the lexical form; strings which do not meet these constraints are not legal lexical forms of base64Binary because they cannot successfully be decoded by base64 decoders.

  93. moparisthebest

    well that's annoying

  94. pep.

    Write your own type! :P

  95. moparisthebest puts in PR changing Schema section to "Will enter later"

  96. pep.

    :/

  97. moparisthebest

    just joking, but it's pretty tempting :)

  98. moparisthebest

    the reason I forbade padding characters was because I figured this would often be used as a proxy or substitute for DoH and it does the same https://tools.ietf.org/html/draft-hoffman-dns-over-https-01#section-5.1

  99. moparisthebest

    actually no, it specifies base64url and I specify base64, how unfortunate

  100. moparisthebest

    no memory if that was a simple mistake or I did it so I could use the base64Binary schema type...