Хмарне сховище
Хмарний дім — це одне місце в сховищі, яким користувач уже володіє. Кожен провайдер керується через той самий інтерфейс сховища в coven; відрізняються вхід, налаштування і спосіб, у який до нього потрапляють інші люди та пристрої.
Провайдери
Посилання на цей розділ| Провайдер | Вхід | Ваш власний новий пристрій | Людина, яку ви запрошуєте |
|---|---|---|---|
| S3-сумісний | Access key + secret | Код відновлення плюс ваш ключ доступу, переданий поруч із ним у QR-коді | Ключ доступу, створений для неї |
| Dropbox | OAuth, зберігає coven | Код відновлення, потім вхід у ваш Dropbox | До спільної папки бібліотеки надається доступ для її облікового запису |
| OneDrive | OAuth, зберігає coven | Код відновлення, потім вхід у ваш OneDrive | До папки бібліотеки надається доступ для її облікового запису |
| iCloud (CloudKit) | Apple Account, без входу | Код відновлення, також пропонується з В’язки ключів iCloud | До зони CloudKit бібліотеки надається доступ для її Apple Account |
S3-сумісний охоплює AWS, Backblaze B2, Cloudflare R2, Wasabi і все інше, що говорить цим API. Форма налаштування питає лише bucket, регіон, endpoint і ключ доступу; coven розпізнає відомі сервіси за хостом endpoint і доповнює, як із ними працювати. Додатково містить необов’язковий префікс ключів і вибір профілю сервісу, типово автоматичний. Для сервісу, якого coven не знає, Визначити параметри перевіряє bucket ключем і показує, що знайшов. Налаштування перевіряє провайдера, перш ніж щось зберегти, щоб помилка введення спрацювала під час налаштування, а не під час першої синхронізації, а bae пояснює причину від coven простими словами. Dropbox, OneDrive і iCloud існують лише в повній редакції bae; збірки baeium компілюють їх назовні.
Вхід і папки
Посилання на цей розділcoven сам виконує вхід у Dropbox і OneDrive, тож жоден токен не проходить через bae. На настільних системах браузер відкриває сторінку провайдера, а локальний слухач отримує єдиний redirect; на мобільних це робить панель входу платформи. coven зберігає токени у сховищі ключів OS і один раз оновлює токен, коли провайдер його відхиляє; невдале оновлення з’являється у стані синхронізації як дія Увійти, а не як тиха петля повторів.
Після входу користувач вибирає, де живе бібліотека. У Dropbox це спільна папка, бо бібліотека домогосподарства спільна з обліковими записами інших людей; bae використовує для цього повний доступ до Dropbox, а не папку застосунку. Якщо спільної папки ще немає, bae пропонує надати спільний доступ до папки в Dropbox і пошукати знову. В OneDrive це будь-яка папка, яку переглядають із верхнього рівня, і там можна створити нову.
CloudKit не потребує flow: coven керує ним на платформах Apple як Apple Account, у який виконано вхід.
Структура дому
Посилання на цей розділУсередині дому кожен шлях об’єкта починається з ідентифікатора сховища бібліотеки: нумерована послідовність змін coven, його snapshot-и, запити на приєднання і збережені файли. Кілька бібліотек можуть спільно використовувати одну папку Dropbox або OneDrive, не торкаючись об’єктів одна одної.
Кожен об’єкт шифрується й зберігається під випадковим іменем; режиму plaintext немає. Файли bae — це файли coven, на які посилаються рядки чотирьох синхронізованих таблиць: release_files, covers, artist_images і аватар у кожному рядку people. Шлях файлу фіксується, коли його підготовлено, тож перейменування альбому ніколи його не переміщує. Див. Шифрування.
Поведінка в реальних мережах
Посилання на цей розділЧитання для відтворення діапазонні: програвач забирає потрібні зашифровані чанки, а не цілі файли, і забирає наперед, поки файл відтворюється по черзі. Обмеження частоти й тимчасові помилки провайдера повторюються за одним розкладом пауз, з урахуванням retry-after, якщо він наданий. Черга завантаження переживає перезапуски: завантаження, перерване виходом із застосунку, продовжується, а не починається заново, а призупинені завантаження лишаються призупиненими.