Difference between revisions of "Flow/Server based 1-1 chat state"

Jump to navigation Jump to search
Line 22: Line 22:
* When the message arrives at Julia clients, it will contain the MAM ID under which it was stored in Julia's MAM Archive
* When the message arrives at Julia clients, it will contain the MAM ID under which it was stored in Julia's MAM Archive
* Romeo is able to calculate the MAM ID under which the message was stored in his MAM Archive, by concatenating the Message ID with the Stream ID (or another suitable ID told to Romeo's client).
* Romeo is able to calculate the MAM ID under which the message was stored in his MAM Archive, by concatenating the Message ID with the Stream ID (or another suitable ID told to Romeo's client).
* A Stream Management ack means that ack'ed messages have been added to the users MAM archive
** It's currently undefined what should happen if the message could not be added (e.g. because the archive storage's space is full)
** I'd expect impls to somehow indicate the MAM error but continue to process the message. That is route and SM ack it.
* Those two MAM IDs are not identical. Romeo and Julia store the same message in their MAM Archive under different IDs
* Those two MAM IDs are not identical. Romeo and Julia store the same message in their MAM Archive under different IDs
* All involved clients use MAM to display those parts of the conversation happened while they where offline
* If a client connects, it requests the MAM archived messages starting from the last time a MAM archived messaged was received, using the Message ID of that message.
165

edits

Navigation menu