jdev - 2025-04-11


  1. rom1dep

    > Is there some XEP or a draft already regarding silent messages? (I wonder if it's even worth a separate XEP or just an extension to XEP-0334). Why not something like a priority indicator? High priority notifies always when received, normal does the current jazz, low priority never does. Seems to fit your use-case and to generalize into something easier to discover and to use.

  2. rom1dep

    (having "high priority" messages probably enables cleaner semantics and UI compared to the @all @channel ways some clients resort to)

  3. cal0pteryx

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

  4. rom1dep

    cal0pteryx: iirc, that sounded like MSN's "wizz" last I read it

  5. lovetox

    It's exactly what you need for sending high priority

  6. lovetox

    MS teams has this also with important messages

  7. lovetox

    It does not help you if you want to send low prio messages

    👍 1
  8. Schimon

    Does anybody know whether an issue was sent to Gecko or WebKit about DOAP files and XSLT?

  9. Schimon

    https://xmpp.pimux.de/file_share/067f8f67-344f-7008-a8b7-b32a0a0c0924/doap_xslt.tar.bz2

  10. Schimon

    Some browsers do not render it, and some would, only if the file ends with "xml".

  11. Schimon

    Some browsers do not render it, and some would, only if the filename ends with "xml".

  12. badrihippo

    Hi all, do we have any spec (or set of specs) for delegating the server registration process to a custom component?

  13. badrihippo

    I'm thinking of taking on Prav's goal of implementing standards-based phone number login: https://codema.in/d/SN2zQyPT/-priority-feature-3-sms-based-signup-login-with-any-xmpp-app-not-just-prav-app-/28

  14. badrihippo

    Starting with maybe doing a "sign up with email" module for Prosody

  15. badrihippo

    Starting with a less ambitious "sign up with email" module (maybe for Prosody to start with) and adding corresponding support to a client (tentatively Gajim)

  16. badrihippo

    XEP-0389 allows for customisation of the registration process but it has to be from the server end, making it implementation-specific

  17. singpolyma

    Wouldn't registration always be server specific?

  18. badrihippo

    So my idea is, if we define a mechanism for the server to forward `jabber:iq:register` stanzas (or their equivalent in the new XEP) to a component, then someone can write a generic component that'd work across servers

  19. jjj333_p (any pronouns)

    i know matrix is trying to transition to server webpage and app specific auth, which might be interesting honestly

  20. badrihippo

    Basically https://github.com/mathiasertl/django-xmpp-account but using XMPP (and therefore accessible in-client) instead of doing it via HTTP or other outside mechanisms

  21. badrihippo

    > i know matrix is trying to transition to server webpage and app specific auth, which might be interesting honestly What's app specific auth?

  22. badrihippo

    Okay one sec let me summarise what I came up with yesterday

  23. jjj333_p (any pronouns)

    > What's app specific auth? you know how google (and most big tech) have that system where you "log in with google" and it take you to a google page to log in and then you give it permission to do x y z and its registered as a specific app

  24. badrihippo

    Ah yes

  25. jjj333_p (any pronouns)

    and then under my accounts you can controll "authorized apps"

  26. jjj333_p (any pronouns)

    similar system to that

  27. badrihippo

    The megacorp version of OpenID

  28. jjj333_p (any pronouns)

    yea, though ig in this case more just generate an auth key per client

  29. jjj333_p (any pronouns)

    since its all to one server and not for remote service auth

  30. badrihippo just found https://xmpp.org/extensions/xep-0235.html

  31. badrihippo

    My idea from yesterday was a bit different; basically we need a component (already exists) that talks the register spec (already exists). The missing pieces are (a) make the server relay all jabber:iq:register queries to that component instead of handling them itself, and (b) some way for the component to say "okay now you can register the user" (maybe borrow user management commands from XEP-0133?)

  32. badrihippo

    Any thoughts on that?

  33. singpolyma

    App specific auth is what fast xep is for

  34. badrihippo

    My focus is more on custom registration (but let me reading up on app specific auth, now I know that's a thing)

  35. badrihippo

    My focus is more on custom registration (but let me read up on app specific auth, now I know that's a thing)

  36. badrihippo

    Okay, just read xep-0484 and I think that's something that'd happen at a later stage?

  37. singpolyma

    You can forward stanzas to a component fine there are things that work like that already. But for registration you need to control the auth store etc. Unless you also forward login stanzas etc. At which point you're reimplemented your server quite a bit

    🤔 1
  38. badrihippo

    > Okay, just read xep-0484 and I think that's something that'd happen at a later stage? If I understand it right, we'd first handle registration with xep-0389 and *then* provide a FAST token

  39. badrihippo

    > You can forward stanzas to a component fine there are things that work like that already. But for registration you need to control the auth store etc. Unless you also forward login stanzas etc. At which point you're reimplemented your server quite a bit People are currently implementing registration by doing stuff in a webpage and then manually running ejabberdctl or prosodyctl commands (or some equivalent like using an API). Can't that be replicated through the component connection too? We can allow the component to send a <command node="...#add-user"/> or something

  40. badrihippo

    My aim here is to replace the webform (that many setups use today) with an in-client form

  41. badrihippo

    Of course there's the related question of how useful the ability to make generic in-band registration handlers would be if we're moving towards other forms of authentication?

  42. badrihippo

    i.e. my plan is still assuming we're using passwords eventually; just adding a few challenges on top. That said that is what XMPP registration pages tend to do (add CAPTCHAs or some other form of verification but eventually register with good ol' username and password)

  43. badrihippo

    > App specific auth is what fast xep is for Okay so if I understood this right, the client authenticates with what is usually a password (but can also be an SMS code or something) and then gets a token for all future connections?

  44. singpolyma

    > My aim here is to replace the webform (that many setups use today) with an in-client form Should be no problem to do this for single step. I don't think it requires an external component

  45. singpolyma

    >> App specific auth is what fast xep is for > Okay so if I understood this right, the client authenticates with what is usually a password (but can also be an SMS code or something) and then gets a token for all future connections? Yes

  46. Zash

    Was someone looking for XEP-0493: OAuth Client Login <https://xmpp.org/extensions/xep-0493.html> ?

    👀 1
  47. badrihippo

    You mean by just directly writing a server specific module?

  48. badrihippo

    > Should be no problem to do this for single step. I don't think it requires an external component re that ^

  49. singpolyma

    Right.

  50. badrihippo

    Yeah now I'm coming round to your "you're basically reimplementing the server" point

  51. badrihippo

    Especially if we're doing FAST as well

  52. Trung

    the module for OAuth already exists for Prosŏdy

  53. Trung

    not quite sure what your question is

  54. badrihippo

    Not OAuth (that was only tangentially related). What I want to do is customise in-band registration, eg. by making people verify their phone or email (using one-time code) in the process

  55. Trung

    so you looking to link an email address or a phone number to an XMPP account ?

  56. badrihippo

    Yeah but along the way I was wondering whether it'd make sense to have a standard way of delegating such registration to a component (the same way server operators "delegate" it to an external HTTP service that then runs *ctl commands). However it seems like that's probably not worth the effort

  57. Trung

    i think we haven't got anything of that yet in the community. You're welcome to implement it.

  58. Trung

    or write a XEP on authentication

  59. Trung

    or write a XEP on new way for authentication

  60. badrihippo

    Now I think the use-case I have in mind (link email address or phone number to XMPP account) is simple enough that it can just be implemented separately on each server

  61. Trung

    i know my government and banks here would love it coz they all do this OTP (one-time-password) via SMS to access account

  62. Trung

    or do whatever to with the account

  63. Trung

    regular users feel super safe and stuff coz newspaper talks abt it etc

  64. Trung

    no one cares that SMS is not encrypted and you can setup gears to capture and send SMS

  65. Trung

    idk if attackers cracks my head open, they still can't get my password

  66. badrihippo

    Hmm yeah I'll shelve the delegated registration idea though

  67. badrihippo

    If someone else had a more complex registration use-case where it'd help to implement once and deploy across different server software I'd be happy to revisit it

  68. badrihippo

    > no one cares that SMS is not encrypted and you can setup gears to capture and send SMS Like I've said before, I dream of the day when they send me these passwords via XMPP instead 💭️

  69. Trung

    well: > You're welcome to implement it. or write a XEP

  70. badrihippo

    Hah! Even just a `<message>` with a number in the body would have me delighted 😅️

  71. ari

    remember this

  72. ari

    oops

  73. ari

    wron ghcta

  74. singpolyma

    We have the xep but need to code it up for whatever use cases

  75. badrihippo

    Which XEP?

  76. singpolyma

    IBR xep?

  77. badrihippo

    Oh you were talking about the phone-number based login. Yes

  78. badrihippo

    Oh you were talking about the phone-number or email linking. Yes

  79. badrihippo

    Trung, for broader context my project is part of reimplementing the "sign in with SMS" flow of Quicksy/Prav but in a standards-compliant way. I'm trying to break it down into smaller chunks though, and ideally make code that'd be useful for other setups too (like someone who wants to make their users link email addresses, etc.)

  80. alexkurisu

    > Not OAuth (that was only tangentially related). What I want to do is customise in-band registration, eg. by making people verify their phone or email (using one-time code) in the process XEP-0077 supports extensibility with XEP-0004…

  81. Zash

    but '77 doesn't really support flows like "enter an email, then enter the code we sent to that email", but https://xmpp.org/extensions/xep-0389.html was meant to allow that kind of thing

  82. singpolyma

    Though 0389 is basically a reinvention of ad hoc

  83. bodqhrohro

    > ‎11/04/25 | 17:34:20 ‎badrihippo‎: > no one cares that SMS is not encrypted and you can setup gears to capture and send SMS Like I've said before, I dream of the day when they send me these passwords via XMPP instead 💭️ Would it work if you're out of traffic though? Incoming SMS are free, for me even in roaming.

  84. theTedd

    When the aim is to log in on mobile, you'll already be using data to request the code, and then presumably chatting afterwards

  85. jjj333_p (any pronouns)

    non american focused services already offer verification code over whatsapp so doesnt seem that perturbed to me