كيفية ربط Discourse مع مئات التطبيقات باستخدام Make

يمكنك الآن دمج Discourse باستخدام Make. Make هو منصة تكامل بدون أكواد تتيح لك ربط أي تطبيق أو واجهة برمجة تطبيقات (API) تقريبًا بـ Discourse بسهولة. يحتوي تطبيق Discourse على Make على عدد من الوحدات (إجراءات، محفزات، وعمليات بحث) تتيح لك أتمتة اتصالاتك في Discourse ومزامنة البيانات تلقائيًا.

What is integromat@2x

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

يتيح لك Make بناء أي تكامل يمكنك تخيله. باستخدام الباني المرئي، يمكنك سحب وإفلات أي عدد من التطبيقات أو الخطوات اللازمة لمحاكاة سير العمل الفعلي. حاليًا، تتوفر أكثر من 700 تطبيق، بالإضافة إلى مجموعة متنوعة من التطبيقات العامة التي تتيح لك الاتصال بأي واجهة برمجة تطبيقات (API) عبر HTTP/JSON.

شاهد القائمة الكاملة لوحدات Discourse المتاحة وقوالب التكامل الجاهزة، أو انقر على لقطات الشاشة أدناه لعرض السيناريو:

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

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

لبدء إنشاء سيناريو (السيناريوهات هي المصطلح المستخدم في Make للإشارة إلى التكاملات)، ستدخل إلى الباني المرئي للسيناريوهات. ابدأ باختيار إجراء Discourse الذي تريده، وسيُطلب منك بعد ذلك إنشاء اتصال. لربط حساب Discourse الخاص بك بـ Make، ستحتاج إلى الحصول على مفتاح API وإدخاله في نافذة “إنشاء اتصال” في Make.

الميزات

  • استرجاع تفاصيل المنشور عند إنشاء منشور جديد
  • استرجاع قائمة أحدث المنشورات عبر المواضيع
  • استرجاع تفاصيل المنشور
  • تحديث منشور موجود
  • حذف منشور موجود
  • استرجاع تفاصيل الموضوع عند إنشاء موضوع جديد
  • استرجاع قائمة المواضيع
  • استرجاع تفاصيل الموضوع
  • يسمح لك بتحديث عنوان موضوع موجود و/أو تصنيفه
  • حذف موضوع موجود
  • استرجاع تفاصيل الرسالة عند استلام رسالة خاصة جديدة
  • استرجاع الرسائل الخاصة في حسابك
  • إنشاء منشور، موضوع، أو رسالة خاصة
  • يسمح لك بإجراء استدعاء مخصص لواجهة برمجة التطبيقات (API)

:arrow_right: التثبيت: اتبع دليل تثبيت الإضافة لربط Discourse بـ Make

الإعداد

1. سجل الدخول إلى حساب Discourse الخاص بك.

2. افتح القائمة في الزاوية العلوية اليمنى.

3. انتقل إلى Admin > API.

01

4. انقر فوق زر “مفتاح API جديد”.

5. قم بتعيين إعدادات مفتاح API على النحو التالي:

  • الوصف: أدخل اسمًا لمفتاح API.
  • مستوى المستخدم: حدد خيار مستخدم واحد لتقييد الوصول عبر API للمستخدم المحدد في حقل المستخدم أدناه.
  • المستخدم: حدد المستخدم الذي تريد منح حق الوصول عبر API لحساب Discourse الخاص بك. ستظهر أسماء المستخدمين التي يمكنك تحديدها أثناء الكتابة.
  • مفتاح عام (يسمح بجميع الإجراءات): فعّل هذا الخيار للسماح بجميع الإجراءات. وإلا، حدد النطاقات المحددة التي تريد تمكينها للوصول عبر API.

6. انقر فوق زر حفظ وانسخ مفتاح API المقدم.

7. اذهب إلى Make وافتح نافذة “إنشاء اتصال” لوحدة Discourse. املأ الحقول التالية:

  • اسم الاتصال: أدخل اسمًا للاتصال بحساب Discourse الخاص بك.
  • عنوان URL للمضيف: حدد عنوان URL لنطاق Discourse الخاص بك (بما في ذلك HTTPS)، على سبيل المثال: https://.discourse.group
  • مفتاح API: أدخل مفتاح API الذي نسخته في الخطوة 6 أعلاه.
  • اسم مستخدم API: أدخل اسم المستخدم للمستخدم المعين لمفتاح API.

8. انقر فوق زر “متابعة” لإنشاء الاتصال.

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

16 إعجابًا

منشور رائع! Integromat مذهل :heart:

إعجابَين (2)

ليس .. مايكلا ستافوفا . خبيرة حلول - عامة في Integromat عن طريق الصدفة؟؟؟

5 إعجابات

هذا صحيح :slightly_smiling_face: وأنا سعيد جدًا بالعمل في Integromat وفي الوقت نفسه أجد ذلك رائعًا :pray:

4 إعجابات

هذه منصات الأتمتة المفضلة لدي :clap: لقد كنت أستخدمها مع واجهة برمجة تطبيقات Discourse لفترة طويلة بالفعل - أعتقد أنني يمكنني الآن نقل بعض وحداتي :slight_smile:

8 إعجابات

شكرًا لك على التعليقات الإيجابية المستمرة، @bartv! لقد رأينا أيضًا المنشور الذي نشرته مؤخرًا عنا :slightly_smiling_face:

3 إعجابات

سعر ممتاز حقًا مقارنة بـ Zapier. كما أن النسخة المجانية أفضل بكثير. سأقوم بتجربته لاختبار بعض الوظائف المحتملة مع مجتمعي. أود ربط تواصلات Discourse ومجموعة Telegram.

إعجابَين (2)

بالتأكيد @Bill، لدينا أيضًا Telegram، ويمكنك مشاهدته هنا. إذا كنت بحاجة إلى مساعدة في إعداد سيناريوهاتك، يرجى الاتصال بفريق دعم Integromat :slight_smile:

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

إليك أحد السيناريوهات المفضلة لدي، والذي كتبته لتلخيص أسبوعي لأفضل الأعمال الفنية على Blender Artists، والذي أنشره على موقعي الآخر BlenderNation. أقوم بإنشاء جدول بيانات على Google يحتوي على روابط المنشورات التي أرغب في عرضها. يقوم السيناريو بتحميل كل موضوع، وجلب الصورة المصغرة، ورفعه إلى WordPress، وبناء المقال بالكامل. كل ما علي فعله هو النقر على نشر. ما كان يستغرق مني ساعة على الأقل لإنشائه سابقًا، أصبح الآن يتطلب خمس دقائق فقط من العمل. (السيناريو الذي نشرته أعلاه هو الخطوة الثانية في هذه العملية - حيث يأخذ نفس الجدول ويهنئ الجميع، ويمنحهم شارة، وما إلى ذلك).

13 إعجابًا

واو، @bartv، هذا مثير للإعجاب للغاية، شكرًا لمشاركتك! إنه دائمًا متعة أن نصادف مستخدمًا خبيرًا :slightly_smiling_face:. استمر في عملك الرائع وشكرًا لك على الأتمتة معنا :pray:

3 إعجابات

لقد فتحت طلب ميزة لدعم وسوم Discourse:
https://www.integromat.com/en/requests/requests-to-update-existing-apps/p/discourse-add-tag-support

لم أستطع العثور على أي شيء يتعلق بالوسوم في الحقول المتاحة في Integromat. أعتقد أن توفير هذه الميزة سيكون مفيدًا للغاية.

في حالتي الخاصة، أرغب في القدرة على تعيين وسم لموضوع في Discourse واستخدامه كمحفز في Integromat لنقل محتوى ذلك الموضوع إلى ClickUp. على وجه التحديد، سأستخدم هذه الميزة لتمييز مواضيع المنتدى المحددة لتتبع التطوير في ClickUp (مثل ميزة جديدة، عيب، إلخ).

لا ينبغي نقل جميع مواضيع المنتدى إلى ClickUp، ونريد أن نتمكن من استخدام الفئات للتمييز بين العيوب والميزات (أو أشياء أخرى). قد يكون حلًا بديلاً حاليًا نقل موضوع إلى فئة خاصة باسم “ClickUp” واستخدام دعم البيانات الحالي في Integromat للتعامل مع ذلك، لكن استخدام الوسوم سيكون أفضل بكثير وأقل إزعاجًا.

شكرًا لكم على دعم Integromat الرائع!

مرحبًا بك يا @oshyan، نأمل أن تكون بخير، وشكرًا لك على الأتمتة معنا!

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

هناك حل لهذه المشكلة، ولكن - كما ذُكر سابقًا - ليس أنيقًا جدًا.

  1. احصل على قائمة بجميع الوسوم عبر وحدة “إجراء استدعاء لواجهة برمجة التطبيقات” (تعرف على كيفية إجراء استدعاءات لواجهات برمجة التطبيقات باستخدام Integromat هنا).
  2. احصل على تفاصيل كل وسم = احصل على قائمة المواضيع المعينة عبر وحدة “إجراء استدعاء لواجهة برمجة التطبيقات”.
  3. احفظ الحالة الحالية في قاعدة بيانات (يمكن أن تكون مخزن بيانات داخل Integromat).
  4. قارن الحالة الحالية بالحالة السابقة.
  5. حدد المواضيع التي تحتوي على وسوم جديدة.
  6. نفذ الإجراء المطلوب في ClickUp.

المؤسف هو أن هذا السيناريو سيستهلك عددًا كبيرًا من العمليات. ندرك أن هذا غير مريح للغاية، لكن Integromat يمكنه العمل فقط بما تسمح به واجهة برمجة التطبيقات المحددة.

نأمل أن يوضح هذا الموقف :slightly_smiling_face:

إذا كانت لديك أي أسئلة، فلا تتردد في طرحها وسنحرص على توفير المزيد من السياق.

تتمنى لك يومًا رائعًا!

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

واو، شكرًا لك، هذا مفيد ومفيد للغاية! يبدو أنني بحاجة إلى طلب بعض تحديثات API من فريق Discourse.

بافتراض أن تم تحديث API للسماح بالاستعلام عن الوسوم الجديدة في المواضيع، فأنا أظن أنه لن يكون من الصعب إضافة دعم الوسوم في Integromat في تلك النقطة؟

ألا يمكن أن يعمل هذا مع ويبهوك للمواضيع؟ على سبيل المثال، كلما تم تحديث موضوع في Discourse وكان يحتوي على وسم، تأكد من إضافته إلى ClickUp.

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

مثير للاهتمام. لست متأكدًا تمامًا من كيفية عمل هذا أو كيفية إعداده. طالما أنه يمكنه المطابقة عند إضافة علامة جديدة إلى موضوع تم إنشاؤه مسبقًا، وتنفيذ إجراء “الإضافة إلى ClickUp” فقط مع علامة معينة (أو علامات معينة)، فسيكون ذلك كافيًا لتلبية احتياجي على الأقل.

ما زلت أعتقد أن واجهة برمجة التطبيقات تبدو وكأنها تحتاج إلى دعم أفضل للعلامات.

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

3 إعجابات

شكرًا لك! أعتقد أن هذا يوجهني نحو اتجاه للبحث عنه إذا لم تتحقق حل قائم على Integromat. سأخبرك إذا كانت التفاصيل مفيدة. شكرًا مرة أخرى. :slight_smile:

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

@oshyan @bartv @JonathanShaw

:raised_hand_with_fingers_splayed: مرحبًا يا رفاق!

بعد مزيد من التحقيق، يمكننا تأكيد أن الحل عبر وحدة الويب هوك العامة الخاصة بنا قد يكون خيارًا عمليًا.

إذا كنت قادرًا على إعداد الويب هوك في حساب Discourse الخاص بك واستخدام عنوان URL لويب هوك Integromat العام كمستمع، فيمكنك الاستماع إلى أحداث “الموضوع” التي تحمل معلومات الوسوم في الحمولة.

قد يبدو بداية السيناريو كما يلي:

كما تعلمون، يمكن أن يحتوي الموضوع على أكثر من وسم واحد، لذا يجب عليك التكرار عبر الوسوم قبل تنفيذ أي إجراءات. ينتهي سيناريونا التجريبي بـ “المكرّر”، لكنك ستحتاج إلى إضافة وحدات أخرى لتنفيذ الإجراءات المطلوبة (مثل تطبيق ClickUp المذكور أعلاه).

يمكنك أيضًا التحقق من الأجزاء الأكثر أهمية في السيناريو في اللقطات التالية:



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

نأمل أن تجد هذا مفيدًا!
أخبرونا إذا كنت بحاجة إلى مزيد من المساعدة :robot:

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

واو، هذا دعم ممتاز! شكراً جزيلاً مرة أخرى. إذن، هل هذا يلغي الحاجة إلى استخدام مستودع بيانات وعملية المقارنة؟

يسعدنا مساعدتك، @oshyan :slightly_smiling_face:

للإجابة على سؤالك —>

نعم، في هذه الحالة المحددة، لا داعي للقلق بشأن مخزن البيانات (أنا متأكد بنسبة 90%)، والسبب في ذلك:

  1. نفترض أنه بمجرد تعيين وسم لموضوع، نادرًا ما يتم إزالته. قد تتم إضافة وسوم جديدة فقط.
  2. كل تغيير في الموضوع سيولد تنبيهًا جديدًا مع مجموعة الوسوم الحالية المعينة للموضوع - لذا بمجرد ظهور وسومك “المُراقَبة” معنية بموضوع ما، سيتم تفعيل سيناريو إنشاء إجراءات ClickUp على الفور.

قد يكون هناك سبب لاستخدام مخزن البيانات إذا كنت ترغب في جعل السيناريو أكثر متانة (ومعقدًا إلى حد ما بصراحة):

  1. على سبيل المثال، يحصل موضوع على وسم، ثم يُزال الوسم، ثم يُضاف نفس الوسم مرة أخرى لاحقًا => هذا سيُفعّل سيناريوهك لإجراء نفس الإجراء الذي تم معالجته بالفعل. في هذه الحالة، قد ترغب في تخزين معلومات حول ما تم دفعه بالفعل إلى ClickUp وما لم يتم دفعه، وعدم المضي قدمًا إذا كان العنصر قد تم دفعه بالفعل إلى ClickUp… من ناحية أخرى، يمكنك ببساطة “ت listing جميع المهام” قبل الدفع إلى ClickUp، ودفعه إلى ClickUp فقط إذا لم تكن المهمة موجودة فيه بعد، دون الحاجة إلى التعامل مع مخزن البيانات. هذا يعتمد حقًا على منطق عملك.
  2. قد يكون مخزن البيانات مجرد سجل جيد للعناصر المعالجة إذا أردت يومًا ما معرفة ما حدث في تاريخ XYZ. من ناحية أخرى، يمكنك ببساطة حفظ السجل في Google Sheets… ومرة أخرى - هذا يعتمد على منطق عملك.

أخبرنا إذا كنت بحاجة إلى مزيد من التوضيح.

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