jdev - 2020-10-01

  1. marc0s

    hi, what's the purpose of the `max` attribute of the 0198's <enable/>? I cannot see anything more than client's/server's "preferred maximum resumption time" in the XEP on what to do about it? Am I missing something?

  2. marc0s

    Should I infer the server should not allow a resume once that `max` time passes? May the client do the same and do not even try to resume the expired stream?

  3. Zash

    marc0s: Presumably so the client can say "please keep my session all eternity" and the server can reply "haha no, you get 5 minutes"

  4. flow

    Zash, marc0s: I think it's more like the client requesting the maximum allowed maximum resumption time

  5. flow

    Zash, marc0s: I think it's about enabling the client to request the maximum allowed maximum resumption time without a-priori knowledge what that time may be

  6. flow

    akin to 'max' in max pubsub node items

  7. marc0s

    Zash, I can see that. And should the client do some local check to avoid asking for an already-known-to-be-expired or better wait for the server to deny it? Would it make the client a good citizen? :) Maybe it's just out of spec...

  8. Zash

    marc0s: Personally I would try to resume regardless of that value, as I would try to at least save the 'h' value for as long as possible so you can know what, if anything, was lost in the last disconnect.

  9. marc0s

    Zash, O

  10. marc0s


  11. marc0s

    Yes, I'd do that too

  12. Zash

    No idea how things work in the wild tho.

  13. marc0s

    I was just seeing how XMPPFramework behaves, and it just refuses to resume if max already passed

  14. flow

    fwiw, that's also what smack does, mostly because nobody changed that ever since the initial impl

  15. flow

    fwiw, I think that's also what smack does, mostly because nobody changed that ever since the initial impl

  16. Zash

    Without looking at any code, have a vauge idea that mod_smacks for prosody has integration with the mobile push notification stuff, such that sessions are kept forever if they're set up to send push notifications.

  17. Zash

    So then refusing to resume would be silly

  18. Zash

    And also sending a 'max' of 10 mintues would be silly

  19. marc0s

    Zash, indeed, having mod_cloud_notify makes hibernation permantent given you have enabled push notifications

  20. flow

    Zash, "kept forever" smells like a memory leakā€¦ ;)

  21. Zash

    flow: where?

  22. Zash

    flow: push notifications and smacks? you have no idea.... nor do I, I just stay away from that code

  23. marc0s

    thanks for your comments :)

  24. Zash

    An unpublished 198 implementation I wrote saved resumption id + 'h' value to persistent storage so you'd be able to at least get a failure + 'h' even after a crash or whatever.

  25. mab015