The concept of delivery and read receipts has been popularised by other
messaging services such as iMessage, Google Hangouts and Blackberry
Messenger
The D and R features of BBM are exactly what I am seeking to copy in my
client.
1.2.1) xep-0022 basically solves this problem, but it is marked as
obsolete. I didn't feel like digging it out of the grave, but maybe we
should re-consider it?
This summarises my feelings exactly. I wish 0085 were more like 0022
(especially wrt the option to omit <composing/> notifications, useful on
mobile).
So, specific comments on chat-markers as written:
The "received" marker is completely useless to me, because it assumes a
reliable delivery channel. The entire purpose of the "delivered" state is
to allow the user to have confidence in the reliability of delivery, so a
"everything up to here I have" message fails to meet this. However, no
problem, because 0184 solves this perfectly (in exactly the same way as
0022, but it's not deprecated, so hooray!)
I have no specific comment about "acknowledged". Not sure how useful that
is.
So now "read" (more accurately called <displayed/> by 0022) is the one I
really need to solve. Saying "everything up to here has been displayed" is
probably fine (because I will have delivery recepits from 0184 to tell me if
they have the message, and if they have it and a later message and they say
they displayed the later message, then sure I'm fine with assuming they're
both displayed). I fail to see, however, how this is different from 0085
<active/> in that case. If a chat becomes active and all the messages in it
have been delivered, then they have now all been displayed. The only
disadvantage to 0085 is that <composing/> cannot be ommited (without SIFT or
similar), but I can probably just live with that.
That said, neither 0085 nor chat-markers seems to cover the non-chat message
case (especially, single/"normal" messages), which likely do not fit the
"everything up to here" model at all.
Finally, what is up with the stamp="" attribute? If I was online when the
stanza was sent, the time is now. If I was not, then 0203 covers this case
just fine. stamp="" seems to be just noise.
For me, I think the ideal protocol would be exactly the same as 0184, but
with a different namespace that meant <displayed/> instead of delivered. If
a new protocol is even needed.
--
Stephen Paul Weber, @singpolyma
See <http://singpolyma.net> for how I prefer to be contacted
edition right joseph