On Thu, Nov 10, 2011 at 12:59 PM, XMPP Extensions Editor <edi...@xmpp.org> wrote:
> Version 0.1 of XEP-0308 (Last Message Correction) has been released. About interop between standards: XEP-0308 - http://xmpp.org/extensions/xep-0308.html (Last Message Correction) XEP-0301 - http://xmpp.org/extensions/xep-0301.html<http://xmpp.org/extensions/xep-0308.html> (In-Band Real Time Text) Me and other users of real time text XEP-0301 (i.e. text that is streamed as it is typed) has thought of how XEP-301 may be improved for maximum compatibility with Last Message Correction. For continued compatibility, <rtt> elements must be transmitted in separate <message> payloads as <replace> elements. Although it is not necessarily required, the XEP-0308 spec suggests this. Within this, there are two approaches I see easily: 1. Only allow real time text (XEP-0301) on the most recent message (default scenario). Last message correction (XEP-0308) would suddenly update the previous message, rather than incrementally. This works fine with existing spec as long as best practice is followed: (a) Use separate <message> payload for <replace> transmission. (b) Do not transmit any <rtt> elements while a last-message is being edited. 2. Allow real time text (RTT) to occur with previous messages. I would add an optional 'id' attribute to <rtt> elements. (we actually intentionally designed RTT to permit backwards compatibility with theoretical future retroactive edit capability, by adding an optional id attribute). It would be compatible with XEP-0308. This would require modification to the XEP-0301 spec, but would allow RTT editing to work on previous messages (limit 1 message ago, or even configurable max X messages ago) The door is open for scenario 1 (works with existing 0301/0308 specs) and scenario 2 (future improvement to XEP-0301) Sincerely, Mark Rejhon