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?
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?
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"
flow
Zash, marc0s: I think it's more like the client requesting the maximum allowed maximum resumption time✎
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 ✏
marmistrzhas left
flow
akin to 'max' in max pubsub node items
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...
Beherithas left
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.
marc0s
Zash, O
marc0s
sorry
marc0s
Yes, I'd do that too
Zash
No idea how things work in the wild tho.
marc0s
I was just seeing how XMPPFramework behaves, and it just refuses to resume if max already passed
flow
fwiw, that's also what smack does, mostly because nobody changed that ever since the initial impl✎
flow
fwiw, I think that's also what smack does, mostly because nobody changed that ever since the initial impl ✏
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.
Zash
So then refusing to resume would be silly
Zash
And also sending a 'max' of 10 mintues would be silly
marc0s
Zash, indeed, having mod_cloud_notify makes hibernation permantent given you have enabled push notifications
flow
Zash, "kept forever" smells like a memory leak… ;)
Zash
flow: where?
Zash
flow: push notifications and smacks? you have no idea.... nor do I, I just stay away from that code
marc0s
thanks for your comments :)
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.