Remote Config tetikleyicileri


Bir işlevi şuna yanıt olarak tetikleyebilirsiniz: Aşağıdakiler dahil Firebase Remote Config etkinlik yeni bir yapılandırma sürümünün yayınlanması veya eski sürüme geri dönmesi. Bu kılavuzda, Remote Config arka plan işlevinin nasıl oluşturulacağı açıklanmaktadır. arasında bir fark vardır.

Remote Config işlevini tetikleyin

Remote Config etkinlikleri için bir işleyici tanımlamak üzere functions.remoteConfig modülünün onUpdate() işlevi. Döndürülen TemplateVersion nesnesi: onUpdate, anahtar meta verilerini içeriyor alanları oluşturabilirsiniz. Ayrıca, güncellemeyi yapan kullanıcının e-postasını, adıyla birlikte ve varsa bir resim.

Aşağıda bir Remote Config fonksiyonuna ilişkin örnek verilmiştir: her güncellenmiş sürümün ve değiştirildiği sürümün farkını döndürür. İşlev şablon nesnesinin versionNumber alanını inceler ve bir numarası daha düşük olan mevcut (yeni güncellenmiş) sürümle birlikte:

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;
    });
});

Bu örnekte json-diff ve request-promise modülünde farkı oluşturun ve şablon nesnesini almak için isteği oluşturun. Örnek için Remote Config istemci mantığını ve Firebase Cloud Messaging, Remote Config güncellemelerini gerçek zamanlı olarak yayma adlı makaleyi inceleyin.