Update 6.2. Sync Protocol

This commit is contained in:
Sébastien Blin 2020-09-21 16:01:00 -04:00
parent 2bd92d7d69
commit 7c65062497
1 changed files with 27 additions and 1 deletions

View File

@ -24,6 +24,8 @@ Now, this is the scenario used to sync:
+ Add contacts if it detects added contacts
+ Remove conversations if it detects removed conversations
+ Add conversations if it detects added conversations
+ Remove conversation's requests if request is accepted (now in conversations)/declined
+ Add conversation's requests if detected
Note: If *A* detects new conversations, it will asks the device which announced that conversation to clone the repository through a git channel (so like described in [Swarm chat design](https://git.jami.net/savoirfairelinux/ring-project/wikis/Group-chat-feature-(design-draft)))
@ -36,7 +38,13 @@ This value is a JSON containing:
"conversation": [
{ "id":"convID", "created":TIMESTAMP, "removed":OPTIONAL_TIMESTAMP },
{ "id":"convID2", "created":TIMESTAMP2, "removed":OPTIONAL_TIMESTAMP2 } /* ... */
]
],
"conversationsRequests": [
{ "id":"convID", "received":TIMESTAMP, "declined":OPTIONAL_TIMESTAMP,
"members":[], "metadatas:[] },
{ "id":"convID2", "received":TIMESTAMP2, "declined":OPTIONAL_TIMESTAMP2
"members":[], "metadatas:[] } /* ... */
],
}
```
@ -62,6 +70,24 @@ This value is a JSON containing:
+ Alice creates a conversation
+ The other device should receives and sync the conversation created on one of the devices
## Sync for detecting new requests
+ Alice receives a conversation's request
+ Alice add a new device
+ The other device should retrieve the requests from device A
## Sync for accepted requests
+ Alice has 2 devices
+ Alice accepts a conversation's request
+ The other device should detect the accepted request
## Sync for decline requests
+ Alice has 2 devices
+ Alice declines a conversation's request
+ The other device should detect the declined request
# Current implementation
https://review.jami.net/c/ring-daemon/+/15584 implements this page