@hellekin شكراً على التقرير. سيحدث دائمًا قدر معين من الطلبات الفاشلة في خدمة ActivityPub حيث يأتي الفاعلون في الفيديفيرس ويذهبون. على سبيل المثال، يبدو أن:
عنوان URL https://activitypub.example من السجل الأول ليس عنوان URL حقيقيًا (هل قمت بتغييره؟)
المستخدم https://mas.to/users/rikvipcode من السجل الثاني لم يعد موجودًا
المستخدم https://mastodon.social/users/ejovoni46709 في السجل الثالث لم يعد موجودًا
إن تفصيل السجلات موجود للمساعدة في تصحيح الأخطاء، ولكن إذا كانت تسبب فوضى في سجلاتك، فيمكنك تبديلها باستخدام إعداد الموقع activity pub verbose logging. الإعداد الافتراضي هو “إيقاف”.
سنتطلع إلى إجراء تحسينات على معالجة الأخطاء في المرحلة الثانية إذا لزم الأمر، ولكن حتى الآن يبدو أن المقتطفات التي نشرتها متوقعة، أي أن الفاعلين لم يعودوا موجودين في الفيديفيرس.
حاليًا، الطريقة التي يتعامل بها المكون الإضافي مع فشل التسليم هي تتبعها بنفس الطريقة التي يتعامل بها Mastodon، وهي أنه إذا كان هناك 7 أيام من الفشل لنقطة نهاية، فسيتم تمييزها على أنها “غير متاحة” ولن يتم محاولة الطلبات بعد ذلك.
لقد قمت للتو بإعداد نسخة مستضافة ذاتيًا جديدة تمامًا من Discourse باستخدام إضافة AP الخاصة بك على https://federation.cafe، وأرى بعض أخطاء 403 في سجلات أخطاء Discourse (والمشاركات لا تتم مشاركتها).
أتساءل عما إذا كان ذلك قد يكون بسبب وجود شرطات ربما؟
[Discourse Activity Pub] GET request to https://bofh.social/internal/fetch failed: Expected([200, 201, 202, 301, 302, 307, 308]) <=> Actual(403 Forbidden)
تم اختبار المكون الإضافي MVP مع Mastodon. أرى أنك تستخدم Pleroma هناك. أعرف أن Pleroma متوافق مع ActivityPub ويعمل مع Mastodon، ومع ذلك لم نلقِ نظرة فاحصة على التعديلات التي قد تكون مطلوبة (إن وجدت) لضمان دعمه حتى الآن. لكننا ما زلنا مهتمين بمعرفة ما يحدث هنا.
يبدو أن الطلبات فشلت بسبب خطأ في المصادقة على خادم Pleroma الخاص بك (هذا ما يعنيه خطأ 403). بما أنني أستطيع الحصول على هذا الـ endpoint باستخدام طلب cURL غير مصادق، أشك في أنه قد يكون خطأ المصادقة http على جانب Pleroma.
لاختبار الأخير (أي 2)، هل يمكنك إلقاء نظرة على سجلات Pleroma الخاصة بك (يبدو أنك المسؤول عن هذا الخادم أيضًا؟) إذا أمكن لمعرفة ما إذا كان بإمكانك الحصول على مزيد من التفاصيل حول هذا الجانب؟
شكراً على الملاحظات @bmann. هل يمكنك التوسع في حالة الاستخدام التي تفكر فيها هنا؟ مع مثال إذا أمكن.
هذا الموضوع هو أفضل مكان لمتابعة التطورات. عندما نستقر على خطة للمرحلة الثانية سأشاركها هنا. في هذه الأثناء، أفضل طريقة للمساعدة هي مشاركة حالات الاستخدام المحددة التي تستخدمها، أو ترغب في استخدام، المكون الإضافي لها.
تتمثل حالة الاستخدام في استخدام Discourse كعقدة AP كاملة. هناك العديد من الطرق الأسهل لنشر المحتوى إلى AP (مثل استخدام خلاصات RSS للفئات و Zapier أو Buffer) - ولكن تطوير قدرة AP كاملة لا يمكن القيام به إلا كإضافة / تكامل.
المقالة هي نوع ActivityStream المخصص للمقالات الكاملة. اعتمادًا على واجهة العميل، ستعرض معاينة ثم نقرة للانتقال لعرض المقالة بأكملها ضمنيًا (تشبه تحذيرات المحتوى، ولكنها تقرأ المزيد).
الملاحظة هي نوع التدوين المصغر.
من خلال وجود منشورات مقالات كاملة، يمكن للأشخاص القراءة / التعزيز / الرد مباشرة في عملاء AP الخاص بهم.
وبالطبع، سيكون من المثير للاهتمام معرفة خارطة طريقك إذا كنت ستتبع مثيلاً أكثر للتدوين المصغر AP، أو تتجه نحو منتدى موحد مثل Lemmy أو Kbin، خاصة بالنظر إلى أخبار Reddit الأخيرة.
@angus، @pmusaraj هل رأيت دعوة التقديم لتمويل NGI Sargasso؟ هذا إشعار قصير جدًا ولكنه قد يكون مفيدًا لمزيد من التطوير على هذا المكون الإضافي (ما لم تكن لديك خطط أخرى بالفعل).
مرحباً يا رفاق، يسعدني أن أعلن أنه تمت الموافقة على المرحلة الثانية من العمل على هذه الإضافة. هذا ما بدأنا العمل عليه بالفعل، بهدف إصداره في حوالي 3.5 أشهر.
دعم قيام مستخدمي Discourse بالتحقق من هويتهم على Mastodon بحيث ترتبط المشاركات التي تم إنشاؤها من Toots الخاصة بهم بحساب مستخدم Discourse الخاص بهم.
السماح للمستخدم بإجراء تدفق مصادقة OAuth الخاصة بـ Mastodon مع خادم Mastodon حيث يتم تخزين حسابه. يبدأ هذا من إعدادات حساب Discourse للمستخدم.
باستخدام رمز الوصول الخاص بـ Mastodon لمستخدم Discourse، احصل على معرف AP الخاص بحساب Mastodon الخاص به وقم بتخزينه مع حسابه في Discourse.
ربط جميع أنشطة Discourse المرتبطة بأنشطة AP من فاعل يحمل معرف AP لمستخدم Discourse بهذا المستخدم في Discourse، سواء تم إجراؤها قبل أو بعد قيام المستخدم بالتحقق من هويته.
أوه، أنا آسف لسوء الفهم. @feature@meta.discourse.org و @announcements@meta.discourse.org على الأقل يتم ترحيلهما من هنا، وهذا الخيار هو السبب الأول الذي جعلني لا أقوم بتمكين هذا لمنتديات Maker…