Hello!
I have some concerns about XEP-0333 in its current state.
Some client software may have no "active chat" concept, so "received"
may imply "read" as well.
Also, acknowledgement usually needs extra UI controls, which may be
inconvenient, so it may be unsupported in client or disabled by user.
Even if this feature is enabled on the recipient side, sender may not
need it in the most cases. And he may want to send messages without
demading recipient to acknowledge it.
Thats's why I beleive, we need a way to specify, if client supports
marking messages as "displayed" and "acknowledged". Also, we need a way
to inform receiving side that we expect the message to be acknowledged.
So, I'd suggest:
1. Add additional disco#info features:
"urn:xmpp:chat-markers:displayed" - messages, received by this client
could be marked as "displayed".
"urn:xmpp:chat-markers:acknowledged" - messages, received by this client
could be marked as "acknowledged".
2. Add <acknowledged/> child element of <markable /> element, to specify
that sender wants recipient to acknowledge message.
Rules:
1. Sender MUST NOT expect to receive "displayed" chat markers, if
"urn:xmpp:chat-markers:displayed" feature is not specified by recepient.
2. Sender MUST NOT include <acknowledged /> element in <markable />
element, if "urn:xmpp:chat-markers:acknowledged" feature is not
specified by recepient.
3. Sender MUST NOT expect to receive "acknowledged" chat marker if
<acknowledged /> element was not included in <markable /> element of a
message.
4. Recepient MUST NOT display UI controls, allowing user to acknowledge
message, if <acknowledged /> element was not included in <markable />
element of a message.