الرفع المجمع للمواضيع والمنشورات من Slack

مرحباً بالجميع،

أنا أستخدم Discourse/CDCK المستضاف لإعداد موقعي. أعمل حاليًا على أخذ المحادثات من تصدير Slack، وإجراء بعض المعالجة المسبقة للنص، وإنشاء عنوان باستخدام محول Hugging Face، ثم إضافته إلى Discourse عبر واجهة برمجة التطبيقات (API).

https://tabular.discourse.group/t/why-wouldn-t-we-commit-a-snapshot-that-has-made-no-changes/42

رأيت في منتدى آخر (لا أستطيع العثور عليه آسف) أن استخدام واجهة برمجة التطبيقات (API) للعمليات المجمعة ليس أفضل ممارسة. كما أنني أواجه باستمرار حدود المعدل والمشاكل الأخرى التي حاولت تعديل الإعدادات لها، ولكن في النهاية أستمر في مواجهة حدود المعدل دون جدوى. هل لدى أي منكم أي اقتراحات حول كيفية استيراد أي نوع من الملفات التي يمكنني إنتاجها برسائل Slack بشكل مجمع؟

الرسائل المعالجة (الصديقة لـ Discourse) من Slack موجودة في قاعدة بيانات ولدي نص برمجي يسحبها ويدفعها إلى واجهة برمجة تطبيقات Discourse (API)، يمكنني بسهولة تغيير هذا لإنشاء ملف يمكن لـ Discourse استيعابه وإنشاء مواضيع بشكل مجمع.

شكرًا

إعجاب واحد (1)

عادةً ما تستخدم نصًا برمجيًا للاستيراد على خادم تتحكم فيه أو على نسخة تطوير. ستحتاج إلى وضع موقعك في وضع القراءة فقط، وتنزيل النسخة الاحتياطية من نسختك المستضافة، وإجراء العمل، وإنشاء نسخة احتياطية، وتحميلها إلى نسختك المستضافة، وطلب استعادة نسختك الاحتياطية. إذا كان موقعك مباشرًا ولم يكن يوم واحد من وضع القراءة فقط يمثل مشكلة، فافعل ذلك.

إذا كان وقت القراءة فقط سيئًا حقًا ولديك بضعة آلاف من المشاركات فقط، فاكتب نصك البرمجي لتضمين تأخير بين الاستدعاءات وأيضًا إعادة المحاولة عند الرفض.

إذا كان لديك عشرات الآلاف من المشاركات، فستحتاج إلى إقناع نفسك وأي شخص آخر بأن يومًا واحدًا من وقت القراءة فقط ليس سيئًا حقًا.

راجع scripts/import_scripts في الكود المصدري للحصول على أمثلة.

إعجاب واحد (1)

أنا أسحب المئات فقط في كل مرة، لذا سأقوم بتأخيرات حتى لا أضطر إلى تشغيل المثيل المحلي. نحن ننقل ببطء المحادثات الأطول مع أشخاص محددين فيها لزرع موقع Discourse الخاص بنا بمجموعة من المحادثات القيمة التي لم يعد من الممكن البحث فيها عبر Slack.\n\n\nهل سيدعم CDCK على الإطلاق طريقة لاستدعاء هذه البرامج النصية للاستيراد المجمع أو ربما كشف قدرة استيراد مجمع عبر واجهة برمجة التطبيقات؟

أشك في ذلك، نظرًا لأنها طلبات متخصصة للغاية، وربما تكون خطيرة جدًا. بالصدفة، أنا على وشك البدء في العمل على إضافة تقبل عنوان URL لجدول بيانات مستندات جوجل مع أوراق للفئات والمستخدمين والمواضيع والمنشورات، واستيرادها، ولكن أتوقع أن تكون متاحة فقط لمستضيفي الخدمة الذاتية وعملاء المؤسسات.

إعجاب واحد (1)

حسناً، سأضيف بعض معالجة الاستثناءات وسأتخطى إذا كان المعرف الخارجي موجوداً بالفعل. تعمل هذه العملية بشكل جيد بما أننا نحاول فقط استيراد بضع مئات في المرة الواحدة ثم نقوم بتصحيحها يدوياً. أردت فقط التأكد من أنني لا أفعل شيئاً قد يضعني في حالة سيئة.

ومع ذلك، يبدو هذا المكون الإضافي بديلاً رائعاً! آمل أن تقدم رسوماً لتمكينه لمدة شهر ثم العودة إلى خطة الفريق.

إذا كنت تستخدم واجهة برمجة التطبيقات (API)، فلديك مجموعة من الحمايات التي توفرها أطر عمل Rails للتأكد من أنك لا تفعل شيئًا سيئًا حقًا.

3 إعجابات

شكراً جاي!

تم التحميل للتو 500. استغرق الأمر بعض الوقت ولكن كل ما فعلته هو تقصير أوقات الانتظار إلى ثانية واحدة للمنشورات والمواضيع، وأضفت فترة انتظار لمدة ثانية بعد كل استدعاء إنشاء وهذا حل المشكلة. استغرق الأمر حوالي 4 ساعات لتحميل حوالي 500 رسالة.

هذه بالتأكيد هي الطريقة. سيعطينا هذا الكثير لنتناوله ونشرف عليه لفترة.

بالمناسبة، كل هذا حاليًا في Discourse خاص، لذا سنقوم بتجميله قبل فتح الأبواب.

شكراً مرة أخرى على كل مساعدتك! أتطلع إلى هذا المكون الإضافي الجديد!

إعجاب واحد (1)

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.