On Tue, 6 Aug 2013, Daniele Ricci wrote:
Please correct me if I'm wrong at any point, just to be sure I
understand XEP 198 and how I can use it in the right way.
On Tue, Aug 6, 2013 at 9:58 PM, Matthew Wild <[email protected]> wrote:
On 6 August 2013 20:51, Daniele Ricci <[email protected]> wrote:
Hi Kevin,
XEP 198 lets you acknowlege every stanza in the stream. I want
something more specific. Something to confirm messages and return
(together with the ack) a message identifier - which is actually a
server-side message ID). And all of that in a "paranoid way": when a
message is sent, server sends ack back (with message ID); when a
message is delivered, client sends an ack back to the server.
I don't understand what the difference to or advantage over XEP-0198 is?
First of all, in this:
"the client or server can send ack elements at any time over the stream"
this means that I can send <a/> or <r/> just for message stanzas.
For any stanza, not counting the <a/>s and <r/>s themselves. But under
0198, these aren't propagated any further than the stream between the
client and its directly connected server.
Then it states:
"The value of 'h' starts at zero at the point stream management is
enabled or requested to be enabled (see note below). The value of 'h'
is then incremented to one for the first stanza handled and
incremented by one again with each subsequent stanza handled."
In my case, I can only use the 'h' attribute to store the server-side
message ID. Which I can't do according to the spec.
No, since 0198's definition of 'h' is a simple count of stanzas sent.
But the biggest and main issue is: a receipt is actually part of a
message. It's not stream management; it means Alice will receive a
delivery receipt when message has been delivered (and acknowledged) by
Bob. I can't just throw off <r/> at any time for this purpose - it
would not be stream management any more. That's why I think I need
something half XEP 198 and half XEP 194.
Does XEP 0079 have anything useful for you? In particular the 'deliver'
ruleset under 3.5.1 . This is assuming that your client and your
recipient's server have it enabled, and likewise the recipient's client
has support.
--
Bruce.