mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-11 18:29:05 +01:00
Update messages uploaded to mailbox correctly
@@ -8,40 +8,53 @@ THESE SCENARIOS CAN BE REPEATED FOR DIFFERENT TYPES OF MESSAGES/
|
||||
- FORUMS
|
||||
- IMPORT RSS
|
||||
- INTRODUCTIONS
|
||||
However, this is not strictly speaking necessary as all messages are treated the same - so if one type gets uploaded it means that all of them will. (Most recent mention of that in the testing channel in MM, on 19/09/22)
|
||||
|
||||
Mailbox screens do not show any messages, therefore the user cannot know if their messages were correctly uploaded or not, either to their own or to the contact's mailbox. For the user, that is all black box, and they only see the clock, or one or two ticks below each message to tell them what the status of that message is.
|
||||
|
||||
Also at the moment, neither Briar nor Mailbox screens show to the user who 'knows' or 'dones't know' that a user may have linked and usable mailbox.
|
||||
|
||||
|
||||
AND FOR DIFFERENT DEVICES HAVING THE MAILBOX INSTALLED AND PAIRED WITH BRIAR APP ON OTHER DEVICES
|
||||
|
||||
ALSO FOR DIFFERENT NUMBER OF MESSAGES AND ACKS (not just one single message)
|
||||
|
||||
Mailbox screens do not show any messages, therefore the user cannot know if their messages were correctly uploaded or not. For the user, that is all black box.
|
||||
|
||||
For testing purposes, though, it should be possible to verify this by looking into a logfile of some kind, or querying the db.
|
||||
The expected results are defined here https://code.briarproject.org/briar/briar/-/wikis/Mailbox-Scenarios
|
||||
|
||||
|
||||
In Briar, the messages uploaded to Mailbox will show only as sent messages. For the user, this will be identical to messages being exported via removable media, ie they will have 'one tick'.
|
||||
|
||||
OUtgoing messages are always uploaded to own mailbox. If own mailbox is not available (is offline for some reason) then the messages will simply wait (and not look for the contacts' mailboxes)
|
||||
|
||||
This phase is also present when messages are sent directly to the contact who is online, but it is too brief to be seen by naked eye. In this case the contact's Briar app sends the ack immediately, and at this point the sent messages on the senders Briar app show 'two ticks'.
|
||||
|
||||
When the contact comes online, the Mailbox will notice and forward them the messages it has uploaded earlier. At this point, there is still no change in the message status on the sender's screen, it still has only one tick. So the sender will not know when the message is forwarded from Mailbox to the intended recipient.
|
||||
|
||||
Once the recipient's Briar app received a message from the sender's mailbox, their Briar app will send the ack
|
||||
- directly to sender if that sender is online, and at this point the sender will see their sent message get the second 'tick'
|
||||
- via own mailbox if they have it
|
||||
- if sender is offline and no own mailbox, then the ack will simply wait and be sent when the sender becomes available online (or via BT) again.
|
||||
|
||||
Scenarios:
|
||||
|
||||
**Scenario 1**
|
||||
### Scenario 1: No mailbox
|
||||
|
||||
In this scenario, two contacts (X and Y) communicate without a mailbox. While Y is offline, X writes a message to Y. The message is not sent (clock icon) until X and Y are online at the same time. When X and Y are online at the same time, the message is sent and acked (two ticks).
|
||||
|
||||
* Install Briar on X and Y
|
||||
* Add X and Y as contacts
|
||||
* In Briar's connection settings, turn off wifi and Bluetooth connections on X and Y
|
||||
* Take Y offline
|
||||
* Expectation: Y is shown as offline in X's contact list (after a delay of up to 1 minute for X to notice that Y is offline)
|
||||
* X writes a private message to Y
|
||||
* Expectation: X's message is shown as not sent (clock icon) in X's conversation screen
|
||||
* While keeping X online, bring Y back online
|
||||
* Expectation: X is shown as online in Y's contact list and vice versa (after a delay of up to 2 minutes for X and Y to connect to each other)
|
||||
* Expectation: X's message appears in Y's conversation screen
|
||||
* Expectation: X's message is shown as sent and acked (two ticks) in X's conversation screen
|
||||
|
||||
|
||||
(refer to: https://code.briarproject.org/briar/briar/-/wikis/Mailbox-Scenarios
|
||||
|
||||
When X has a mailbox, and Y knows about X's mailbox:
|
||||
|
||||
* X will upload messages and acks for Y to X's mailbox
|
||||
* Y will upload messages and acks for X to X's mailbox
|
||||
* X will check X's mailbox for messages and acks uploaded by Y
|
||||
* Y will check X's mailbox for messages and acks uploaded by X
|
||||
* Communication via X's mailbox will work in both directions
|
||||
|
||||
| sender | online | has mailbox | maibox online | recipient | online | has mailbox | maibox online |
|
||||
| ------ | ------ | ------ | ------ | ------ | ------ |------ | ------ |
|
||||
| ------ | yes | yes | yes | ---- | no | no | na |
|
||||
|
||||
**scenario 1A**
|
||||
- the sender is online, they have a mailbox on a device that is also online.
|
||||
-
|
||||
- The recipient is offline and they don't have a mailbox app.
|
||||
- The sender's message will be uploaded to their own mailbox, and at this point the sent message has one tick (this take a couple of minutes usually)
|
||||
- Then the sender's device needs to be put offline, to make sure that any messages that recipient may receive come to them from the sender's mailbox and not from the sender's Briar app
|
||||
|
||||
Reference in New Issue
Block a user