يمكنك تشغيل دالة استجابةً أحداث الإعداد عن بُعد في Firebase، بما في ذلك نشر إصدار جديد للإعدادات أو العودة إلى إصدار قديم يوضّح هذا الدليل كيفية إنشاء وظيفة خلفية في ميزة "الإعداد عن بُعد". يختلف عن إصداري نموذج.
تشغيل وظيفة "الإعداد عن بُعد"
لتحديد معالِج لأحداث "الإعداد عن بُعد"، استخدِم
functions.remoteConfig
للدالة onUpdate()
في الوحدة.
كائن TemplateVersion
الذي يعرضه
يحتوي النطاق onUpdate
على البيانات الوصفية الرئيسية
حقول لتحديث النموذج، مثل رقم إصدار التحديث ووقته.
يمكنك أيضًا استرداد البريد الإلكتروني للمستخدم الذي أجرى التعديل، مع ذكر الاسم
وصورة إذا كان ذلك متاحًا.
وفي ما يلي مثال على دالة "الإعداد عن بُعد" التي
عرض فرق بين كل نسخة محدثة والنسخة التي استبدلتها الدالة
يفحص الحقل versionNumber
لكائن النموذج ويسترد
النسخة الحالية (المحدثة حديثًا) مع الإصدار الأول رقم أقل:
exports.showConfigDiff = functions.remoteConfig.onUpdate(versionMetadata => { return admin.credential.applicationDefault().getAccessToken() .then(accessTokenObj => { return accessTokenObj.access_token; }) .then(accessToken => { const currentVersion = versionMetadata.versionNumber; const templatePromises = []; templatePromises.push(getTemplate(currentVersion, accessToken)); templatePromises.push(getTemplate(currentVersion - 1, accessToken)); return Promise.all(templatePromises); }) .then(results => { const currentTemplate = results[0]; const previousTemplate = results[1]; const diff = jsonDiff.diffString(previousTemplate, currentTemplate); functions.logger.log(diff); return null; }).catch(error => { functions.logger.error(error); return null; }); });
يستخدم هذا النموذج كلاً من json-diff
request-promise
وحدة من أجل
ننشئ الفرق وإنشاء الطلب للحصول على كائن القالب. أخذ عيّنة
التي تتضمن منطق العميل "الإعداد عن بُعد" بالإضافة إلى "المراسلة عبر السحابة الإلكترونية من Firebase"
يُرجى الاطّلاع على نشر تحديثات "الإعداد عن بُعد" في الوقت الفعلي.