يوفّر Cloud Functions للمطوّرين إمكانية الوصول إلى Firebase وGoogle Cloud الأحداث، بالإضافة إلى قوة معالجة قابلة للتوسّع لتشغيل الرموز البرمجية استجابةً لهذه الأحداث. إنّه من المتوقع أن تستخدم تطبيقات Firebase وظائف السحابة الإلكترونية بطرق فريدة لتحقيق متطلباتها الفريدة، تندرج حالات الاستخدام النموذجية ضمن الجوانب التالية:
- إبلاغ المستخدمين عند حدوث أمر مثير للاهتمام:
- تنفيذ تعقيم قاعدة البيانات وصيانتها:
- تنفيذ المهام المكثفة في السحابة الإلكترونية بدلاً من تطبيقك
- الدمج مع خدمات وواجهات برمجة تطبيقات تابعة لجهات خارجية:
مراجعة حالات الاستخدام والأمثلة لكل فئة اهتمام ثم المتابعة إلى البرنامج التعليمي البدء أو إلى أدلة إرشادية محددة لأحداث المصادقة أحداث الإحصاءات وغيرها
إبلاغ المستخدمين عند حدوث شيء مثير للاهتمام
يمكن للمطوّرين استخدام حزمة "Cloud Functions" للحفاظ على تفاعل المستخدمين وإطلاعهم على آخر الأخبار. تحتوي على معلومات ذات صلة عن التطبيق. ضع في اعتبارك، على سبيل المثال، تطبيق يسمح للمستخدمين بمتابعة أنشطة بعضهم البعض في التطبيق. في كل مرة يقوم فيها المستخدم متابعًا لمستخدم آخر، تظهر الكتابة في Realtime Database بعد ذلك، يمكن أن يؤدي حدث الكتابة هذا إلى تشغيل دالة لإنشاء إشعارات Firebase Cloud Messaging (FCM) للسماح يعرف المستخدمون أنهم قد اكتسبوا متابعين جدد.
- يتم تنشيط الدالة عند الكتابة إلى مسار Realtime Database حيث يتم تخزين المتابعين.
- تنشئ الدالة رسالة لإرسالها عبر FCM.
- تُرسِل FCM رسالة الإشعار إلى جهاز المستخدم.
لمراجعة الرمز البرمجي الذي يعمل، يمكنك الاطّلاع على نموذج الرمز البرمجي في GitHub:
- Node.js: fcm-notifications
- Python: fcm-notifications
حالات أخرى مثيرة للاهتمام لاستخدام الإشعارات
- يمكنك إرسال رسائل تأكيد إلكترونية إلى المستخدمين الذين يشتركون في نشرة إخبارية.
- أرسِل رسالة ترحيب إلكترونية عندما يكمل المستخدم الاشتراك.
- إرسال رسالة تأكيد قصيرة SMS عندما ينشئ المستخدم حسابًا جديدًا.
إجراء تعقيم قاعدة البيانات وصيانتها
من خلال معالجة حدث قاعدة بيانات Cloud Functions، يمكنك تعديل Realtime Database أو Cloud Firestore استجابةً لسلوك المستخدم، ما يجعل النظام بالشكل المطلوب الولاية. على سبيل المثال، يمكنك مراقبة كتابة الأحداث وتغيير تنسيقها. (على سبيل المثال، التغيير إلى أحرف كبيرة بالكامل) لسلاسل معينة في واجهة الرسائل. إليك طريقة تنفيذ ذلك:
- يستمع معالِج أحداث قاعدة بيانات الدالة إلى أحداث الكتابة في مسار معيّن، ويسترجع بيانات الأحداث التي تحتوي على نص الرسائل.
- تعالج الدالة النص لتغيير السلاسل إلى أحرف كبيرة.
- وتُعيد الدالة كتابة النص المعدَّل إلى قاعدة البيانات.
لمراجعة الرمز البرمجي المستخدَم، يُرجى الاطّلاع على نموذج الرمز في GitHub:
- Node.js: uppercase-rtdb
- بايثون: uppercase-rtdb
حالات الاستخدام الأخرى لتعقيم قواعد البيانات وصيانتها
- إزالة محتوى مستخدم محذوف نهائيًا من "Realtime Database"
- يمكنك تقييد عدد العُقد الثانوية في قاعدة بيانات Firebase.
- تتبُّع عدد العناصر في قائمة Realtime Database
- نسخ البيانات من Realtime Database إلى Google Cloud BigQuery
- تحويل النص إلى رمز تعبيري
- إدارة البيانات الوصفية المحسوبة لسجلات قاعدة البيانات.
تنفيذ مهام مكثّفة في السحابة الإلكترونية بدلاً من تنفيذ مهام في تطبيقك
يمكنك الاستفادة من Cloud Functions لنقل البيانات إلى حساب Google. العمل الكثيف للموارد السحابية (وحدة المعالجة المركزية (CPU) أو الاتصال بالشبكات الكثيفة) بدلاً من تشغيله على جهاز المستخدم، ما يؤدي إلى تحسين سرعة استجابة التطبيق. على سبيل المثال، يمكنك كتابة دالة للاستماع إلى عمليات تحميل الصور على Cloud Storage، يمكنك تنزيل الصورة على المثيل. تشغيل الدالة وتعديلها وتحميلها مرة أخرى إلى Cloud Storage. إنّ يمكن أن تشمل التعديلات تغيير حجم الصور أو اقتصاصها أو تحويلها باستخدام أدوات مثل حاد أو وسادة:
- يتم تشغيل دالة عند تحميل ملف صورة إلى Cloud Storage.
- تقوم الدالة بتنزيل الصورة وإنشاء نسخة مصغّرة منها.
- تكتب الدالة موقع الصورة المصغّرة هذا في قاعدة البيانات، حتى يتمكن تطبيق العميل من العثور عليه واستخدامه.
- تحمّل الدالة الصورة المصغّرة مرّة أخرى إلى Cloud Storage في مكان جديد.
- ينزِّل التطبيق رابط الصورة المصغّرة.
للحصول على جولة تفصيلية حول مثال على معالجة الصور، راجِع دليل جارٍ معالجة Cloud Storage أحداث.
أمثلة أخرى على المهام المجمّعة في السحابة الإلكترونية من Firebase
- حذف حسابات Firebase غير المستخدَمة بشكل دوري Node.js | Python.
- الاحتفاظ تلقائيًا بنسخة احتياطية من الصور المحمَّلة Node.js | Python.
- يمكنك إرسال رسائل إلكترونية مجمَّعة إلى المستخدمين.
- تجميع البيانات وتلخيصها بشكل دوري.
- معالجة قائمة انتظار الأعمال المعلّقة
الدمج مع الخدمات وواجهات برمجة التطبيقات التابعة لجهات خارجية
يمكن أن يساعد Cloud Functions تطبيقك في العمل بشكل أفضل مع الخدمات الأخرى من خلال لاستدعاء واجهات برمجة تطبيقات الويب وعرضها. على سبيل المثال، أحد التطبيقات المستخدمة للتعاون على التطوير بعد التزام GitHub بغرفة دردشة لمجموعة العمل.
- يدفع أحد المستخدمين التزامه بمستودع GitHub.
- يتم تشغيل وظيفة HTTPS من خلال واجهة برمجة تطبيقات الردّ التلقائي على الويب في GitHub.
- تُرسِل الدالة إشعارًا بالالتزام إلى قناة Slack الخاصة بالفريق.
طرق أخرى للدمج مع خدمات وواجهات برمجة التطبيقات التابعة لجهات خارجية
- استخدِم Google Cloud Vision API لتحليل الصور المحمَّلة ووضع علامات عليها.
- ترجمة الرسائل باستخدام "ترجمة Google"
- استخدام المصادقة المخصّصة لتسجيل دخول المستخدمين.
- إرسال طلب إلى ردّ تلقائي على الويب في ردود Realtime Database
- تفعيل البحث في النص الكامل على عناصر Realtime Database
- معالجة الدفعات من المستخدمين
- إنشاء ردود تلقائية على المكالمات الهاتفية ورسائل SMS.
- إنشاء برنامج محادثة آلي باستخدام "مساعد Google"