jdev - 2021-03-17


  1. stpeter

    Hey wow, I got a message in Slack today that they finally sort of support federation (well, at least "federation" within Slack itself). Welcome to the party!

  2. Kev

    I’m not sure federating with your own server is that much of an achievement 😂

  3. Kev

    Although, having implemented dialback, maybe I shouldn’t be so glib.

  4. Ge0rG

    Well, logging in with multiple identities was a huge feat as well.

  5. edhelas

    stpeter they call it l2l, localhost2localhost

  6. moparisthebest

    more like lol amirite?

  7. wurstsalat

    I just spilled my coffee

  8. Zash chuckles

  9. selurvedu

    Hello folks, I'm trying to understand how the fallback plaintext <body> works in OMEMO. XEP-0384 v0.3.0 [0] says "If it [decryption] succeeds, the decrypted contents are treated as the <body> of the received message." v0.4.0 and up don't have any mentions of <body> and XEP-420 says "Since a chat message encrypted with SCE MUST NOT contain a <body/> element, it is not eligible for MAM message storage". Does that mean it is not possible to add a fallback text for a message when using omemo:1 ? [0]: https://xmpp.org/extensions/attic/xep-0384-0.3.0.html [1]: https://xmpp.org/extensions/attic/xep-0384-0.4.0.html

  10. lovetox

    fallback body is not optimal

  11. lovetox

    consider something like https://xmpp.org/extensions/xep-0380.html

  12. lovetox

    add this to make other clients aware that this is a encrypted message and what it was encrypted with

  13. lovetox

    then the client can choose itself how it makes the user aware

  14. selurvedu

    lovetox, > Entities SHOULD include a non-encrypted body as possible, since older clients not supporting this protocol might otherwise ignore messages sent with an unknown encryption, making both the sender frustrated that their message did not get an answer, and the recipient frustrated that they never saw any message.

  15. selurvedu

    from XEP-0380

  16. lovetox

    yes .. if you care about these super old clients

  17. lovetox

    i guess you have to add it

  18. lovetox

    but i agree i also dont understand why SCE does not allow a body element

  19. lovetox

    the reason is not mentioned in the xep

  20. Zash

    For OMEMO you probably do want a fallback, since users likely would rather know they got messages that they couldn't decrypt than them just silently going into the void.

  21. selurvedu

    Yeah, hence my question

  22. lovetox

    Zash, most clients support eme

  23. lovetox

    so it would not go into the void

  24. Zash

    Do they?

  25. lovetox

    yes

  26. Zash

    I wasn't aware of any at all

  27. lovetox

    how would you tell the difference?! its not like you see a message and say, hey thats eme working

  28. selurvedu

    Dino states "status partial" , "Only for outgoing messages"

  29. Zash

    I've not heard anyone mention implementing it

  30. lovetox

    selurvedu, because dino supports all encryption mechanisms

  31. lovetox

    if you can detect all encryptions you dont need to depend on eme

  32. lovetox

    eme is for clients that dont want to support encryption, but still want to know when a encrypted message arrives

  33. lovetox

    Zash, Gajim and C for example

  34. lovetox

    and im sure many more

  35. Zash

    Cool, good to know.

  36. lovetox

    its als way user friendly, if i can show the user a message in his language

  37. lovetox

    than some fallback thing another client developer decides is good

  38. lovetox

    but im not arguing eme is more compatible than a fallback message

  39. lovetox

    obviously you get all clients with a fallback message

  40. Zash

    FWIW Prosody treats it as a hint that the message is important

  41. lovetox

    but i find the example rather academic

  42. lovetox

    if a user wants encryption

  43. lovetox

    he usually wants it on all his devices

  44. selurvedu

    lovetox, well, a user may be unaware that their counterpart uses an ancient client

  45. lovetox

    and we are also in the situation that there are clients that support encryption on all platforms

  46. lovetox

    selurvedu, you can only encrypt to someone if he doesnt use an ancient client

  47. lovetox

    so this scenario is only for users, who use on one device something with encryption

  48. lovetox

    but choose on another device to use a ancient client

  49. lovetox

    thats why i said i consider this case as academic

  50. lovetox

    im sure it happens somewhere

  51. lovetox

    either way, im also interested why 420 does not allow a body

  52. selurvedu

    lovetox, okay, however, how can a user of an ancient client tell that somebody's trying to contact them if there's no fallback body and eme is not supported?

  53. lovetox

    he can’t

  54. Zash

    Wanna have a discussion about just how far back backwards compatibility should go? 🙂

  55. selurvedu

    e.g. a user installed Conversations or Dino, new omemo keys got generated and published, then the user removed the client and switched back to something they're used to

  56. selurvedu

    Zash, hah, why not? :)

  57. selurvedu

    I'm asking because a person from my roster did just that ^

  58. selurvedu

    So I was trying to write with omemo enabled

  59. Zash

    Heh, I think it's one of the recurring topics in XMPP land.

  60. lovetox

    this reminds me, a destroy my omemo presence should be a button in a client

  61. selurvedu

    Thanks to fallback body they noticed my attempts