Update Group chat feature (design draft)

This commit is contained in:
Sébastien Blin 2020-11-10 10:31:17 -05:00
parent 7a95de1f66
commit 9dc5b2b291
1 changed files with 11 additions and 0 deletions

View File

@ -84,6 +84,17 @@ This voting system need a human action to ban someone or must be based on the CR
So, if Alice wants to ban Denys, she had to propose a vote with the sequence number of the device (0 for future devices).
## Remove a conversation
1. Save in convInfos removed=time::now() (like removeContact saves in contacts) that the conversation is removed and sync with other user's devices
2. Now, if a new commit is received for this conversation it's ignored
3. Now, if Jami startup and the repo is still present, the conversation is not announced to clients
4. Two cases:
a. If no other member in the conversation we can immediately removes the repository
b. If still other members, commit that we leave the conversation, and now wait that at least another device sync this message. This avoid the fact that other members will still detect the user as a valid member and still sends new messages notifications.
5. When we are sure that someone is synched, remove erased=time::now() and sync with other user's devices
6. All devices owned by the user can now erase the repository and related files
**TODO, determine how this will work**
# Used protocols