التخزين السحابي
موطن السحابة موقع واحد في تخزين يملكه المستخدم بالفعل. يُقاد كل مزود عبر واجهة التخزين نفسها في coven؛ وما يختلف حسب المزود هو تسجيل الدخول، والإعداد، وكيف يصل إليه أشخاص وأجهزة آخرون.
المزودون
رابط إلى هذا القسم| المزود | تسجيل الدخول | جهازك الجديد | شخص تدعوه |
|---|---|---|---|
| متوافق مع S3 | مفتاح وصول + سر | رمز الاستعادة، مع مفتاح الوصول الخاص بك محمولًا بجانبه في رمز 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 الرموز في keyring نظام التشغيل ويحدّث رمزًا مرة واحدة عندما يرفضه المزود؛ ويظهر التحديث الفاشل في حالة المزامنة كإجراء تسجيل الدخول بدل حلقة إعادة محاولة صامتة.
بعد تسجيل الدخول يختار المستخدم مكان المكتبة. في Dropbox هو مجلد مشترك، لأن مكتبة الأسرة تُشارك مع حسابات الأشخاص الآخرين؛ ويستخدم bae لذلك وصول Dropbox الكامل، لا مجلد تطبيق. إن لم يوجد مجلد مشترك بعد، يطلب bae مشاركة مجلد في Dropbox ثم البحث مجددًا. في OneDrive هو أي مجلد، يُتصفح من الأعلى، ويمكن إنشاء مجلد جديد هناك.
لا يحتاج CloudKit إلى تدفق أصلًا: يقوده coven على منصات Apple بصفته Apple Account المسجل الدخول.
تخطيط الموطن
رابط إلى هذا القسمداخل الموطن، يبدأ كل مسار كائن بمعرّف مخزن المكتبة: سلسلة تغييرات coven المرقمة، ولقطاته، وطلبات الانضمام، والملفات المخزنة. يمكن لعدة مكتبات مشاركة مجلد Dropbox أو OneDrive واحد من دون أن تمس كائنات بعضها.
يُشفّر كل كائن ويُخزن تحت اسم عشوائي؛ لا يوجد وضع نص واضح. ملفات bae هي ملفات coven تشير إليها صفوف أربعة جداول متزامنة: release_files وcovers وartist_images، والصورة الرمزية في كل صف من people. يُثبّت مسار الملف عند تجهيزه، لذلك لا تنقله إعادة تسمية الألبوم أبدًا. انظر التشفير.
السلوك على الشبكات الحقيقية
رابط إلى هذا القسمالقراءات للتشغيل نطاقية: يجلب المشغل القطع المشفرة التي يحتاجها بدل الملفات كلها، ويجلب مسبقًا أثناء تشغيل الملف بالترتيب. قيود المعدل وأخطاء المزود العابرة تعيد المحاولة وفق جدول تراجع واحد، وتحترم retry-after من المزود عندما يعطيه. تبقى قائمة انتظار الرفع بعد إعادة التشغيل: الرفع الذي يقطعه إنهاء التطبيق يُستأنف بدل أن يبدأ من جديد، والرفوع الموقوفة مؤقتًا تبقى موقوفة.