diff options
Diffstat (limited to 'docs/MESHBAY_DESIGN.md')
| -rw-r--r-- | docs/MESHBAY_DESIGN.md | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/docs/MESHBAY_DESIGN.md b/docs/MESHBAY_DESIGN.md index 0714e7e..44592d2 100644 --- a/docs/MESHBAY_DESIGN.md +++ b/docs/MESHBAY_DESIGN.md @@ -3411,6 +3411,37 @@ foreground service (`BackupService`) and the WebView reported visible, like a cast (§11.3). Android 15 limits that type to six hours a day; the service stops when told and the run carries on at the next opening. +### 9.13 Contacts and messages backup (Android) + +The Android application sends a copy of the phone's **contacts** to a folder of +a group, on the photo backup's terms (§9.12): a client feature over the upload +path, additive, once a day, the page doing the sending and the phone handing +bytes over by token (`/phonesync/<token>`, `phonesync/` in the Android +package, `phone-sync.js` on the page). Messages follow the same design. + +**Only a group the person is alone in.** What a group's folder holds every +member can read, and an address book is not the group's. The set-up offers +only groups whose member list is this account and nobody invited, and every +run asks the hub again before reading anything: somebody who joins later stops +the backup (`not_private`, a lasting refusal said once) rather than reading +every copy from then on. Any writable folder of that group is offered, not +only the ones the Photos tab shows. + +**Where.** `<folder>/<account>-contacts/`, made if missing. Each copy is a new +file named for when it was taken (`contacts-2026-10-10-0900.vcf`), never a +replacement: restoring is importing the newest one, and an older one is there +if a phone sync went wrong. + +**What.** The whole address book as the platform exports it, one vCard per +contact through `ContactsContract.Contacts.CONTENT_VCARD_URI`, the format any +phone imports. It is sent only when its SHA-256 differs from the last copy the +node took; a day with no change sends nothing. The marker moves only on the +node's acknowledgement, so a copy cut short is written again whole. + +**Unlike photos**, it runs on any network: a vCard file is small, and there is +no first run of gigabytes to keep off mobile data. `READ_CONTACTS` is asked for +when the person sets it up, never at start. + ## 10. Filesystem portability **exFAT and NTFS on Windows are the common case, not an edge case.** Most users are |