في ما يلي خطوات إنشاء أداة ربط خاصة بالمنتدى:
- أنشئ مشروعًا جديدًا في "برمجة تطبيقات Google".
- اكتب رمز الموصل.
- أكمِل بيان المشروع.
إنشاء مشروع جديد في "برمجة تطبيقات Google"
انتقِل إلى برمجة تطبيقات Google لإنشاء مشروع جديد. ستنشئ "برمجة تطبيقات Google" نصًا برمجيًا تلقائيًا لك. يمكنك إزالة الدالة myFunction
وإعادة تسمية المشروع. (مزيد من المعلومات عن "برمجة تطبيقات Google")
كتابة رمز الموصّل
يجب أن يتضمّن كل موصّل مجموعة محدّدة من الدوال. سيتم تنفيذ هذه الدوال من خلال التطبيق المضيف (مثل Looker Studio). من المتوقّع أن يتعامل الموصّل مع الطلبات الواردة ويردّ عليها كما هو موضّح في مرجع Community Connector API. إذا واجهت مشاكل أثناء تطوير الرمز، يمكنك الاطّلاع على دليل تصحيح الأخطاء للحصول على المساعدة.
تحديد نوع المصادقة في getAuthType()
يتم استدعاء هذه الدالة لتحديد طريقة المصادقة المستخدَمة في الخدمة التابعة لجهة خارجية. راجِع مرجع getAuthType() للحصول على التفاصيل. يمكنك الاطّلاع على طرق المصادقة المتوافقة حاليًا في مرجع AuthType
.
على سبيل المثال، لا يتطلّب الموصل التالي المصادقة:
إذا كان مصدر البيانات يتطلّب مصادقة OAuth 2.0، اطّلِع على دليل مصادقة OAuth 2.0 وأضِف الوظائف الإضافية المطلوبة إلى الموصل.
تحديد الإعدادات من خلال getConfig()
يتم استدعاء الدالة getConfig()
للحصول على إعدادات الموصل، بما في ذلك القيم التي يقدّمها المستخدم والتي يتطلّبها الموصل. يمكنك الاطّلاع على مرجع getConfig()
لمعرفة التفاصيل.
استنادًا إلى الردّ الذي يقدّمه getConfig()
، ستعرض أداة Looker Studio شاشة إعدادات الموصل. يتم عرض عناصر الضبط المتوافقة في مرجع ConfigType
.
إذا كان مصدر البيانات يتطلّب التاريخ كمعلَمة، استخدِم الدالة config.setDateRangeRequired(true). إذا كنت بحاجة إلى طرح أسئلة حول الإعدادات الشرطية أو الديناميكية، يمكنك الاطّلاع على الإعدادات المتدرّجة.
في ما يلي مثال على موصّل يتطلّب من المستخدم إدخال رمز اسم حزمة npm. يتم تحديد حقل معلومات وحقل إدخال في الدالة
getConfig()
:
تحديد الحقول باستخدام getSchema()
يتم استدعاء هذه الدالة للحصول على المخطط للطلب المحدّد. سيتم توفير أي مَعلمات ضبط محدّدة بواسطة الدالة getConfig()
في الوسيطة request
. يمكنك الاطّلاع على مرجع getSchema()
لمعرفة التفاصيل.
استنادًا إلى مصدر بيانات الموصل والإعدادات التي يقدّمها المستخدم، قد يكون المخطط ثابتًا أو قد تحتاج إلى تقديمه بشكل ديناميكي عند وقت الطلب.
على سبيل المثال، إذا كان أحد الموصلات يستردّ بيانات التقارير استنادًا إلى معرّف تقرير، قد لا تكون البيانات التي يتم عرضها لهذا التقرير وبالتالي المخطط معروفة مسبقًا.
في هذه الحالة، قد يتطلّب getSchema()
جلب البيانات، وسيتم احتساب المخطط.
استرجاع البيانات وعرضها باستخدام getData()
يتم استدعاء هذه الدالة للحصول على بيانات الطلب المحدّد. سيتم توفير أي معلَمات إعداد محدّدة بواسطة الدالة getConfig()
في الوسيطة request
. يمكنك الاطّلاع على مرجع getData()
لمعرفة التفاصيل.
تتطلّب المَعلمات التالية من طلب getData()
مزيدًا من الاهتمام:
يمثّل
lastRefresh
lastRefresh
طابعًا زمنيًا يشير إلى وقت آخر طلب لتحديث البيانات. يجب أن تتمكّن من تحليل القيمة باستخدامnew Date(timestampString)
. إذا كنت تستخدم خدمة التخزين المؤقت في Apps Script أو أي طريقة أخرى للتخزين المؤقت، يمكن أن يساعدك الطابع الزمنيlastRefresh
في تحديد ما إذا كان عليك تقديم طلب جديد لجلب البيانات من مصدر البيانات أو عرض البيانات من ذاكرة التخزين المؤقت.dateRange
إذا تم ضبطdateRangeRequired
علىtrue
فيgetConfig()
، سيتضمّن كل طلبgetData()
النطاق الزمني المحدّد. لمزيد من التفاصيل، راجِع مقالة العمل باستخدام النطاقات الزمنية.
يجلب المثال التالي البيانات استنادًا إلى الطلب الوارد ويعرض إحصاءات الحزمة:
إكمال بيان المشروع
يحتوي ملف البيان على معلومات حول "أداة ربط البيانات الخاصة بالمنتدى" المطلوبة لنشر أداة الربط واستخدامها في Looker Studio.
لتعديل ملف البيان في بيئة تطوير Apps Script، انقر على قائمة عرض ثم على عرض ملف البيان. سيؤدي ذلك إلى إنشاء ملف بيان جديد
appsscript.json
.
عدِّل ملف البيان ليتضمّن البيانات التالية:
للحصول على تفاصيل عن بيان Looker Studio، يُرجى الاطّلاع على مرجع البيان.
الخطوات التالية
تتمثل الخطوة التالية في نشر موصّل Community Connector.