Как периодически и программно запускать основанные на таймере методы в Firebase Functions? - PullRequest
0 голосов
/ 24 июня 2018

Я создаю приложение для краудфандинга, и для каждой кампании в моем приложении назначена дата.Как написать функцию для автоматического удаления этой кампании или ее переноса в другое место после достижения целевой даты?

В частности, я хочу переместить кампанию с ref('/Fund/{Campaign_ID}') на ref('/Timed_out/{Campaign_ID}').

PS: Пожалуйста, не предлагайте ручную работу cron.Для меня было бы невозможно отследить, кто запускает кампанию, если число пользователей и объем кампаний растут.

Моя база данных в формате JSON (важный бит):

{
  "Fund" : {
    "-LEEy7uxXEeI4AJuePoB" : {
      "amount_funded" : 1400000,
      "artist_name" : "Sean Roldan and Friends",
      "genre" : "Indian Blues and Jazz",
      "image_url" : "https://firebasestorage.googleapis.com/v0/b/artcall-f8f1a.appspot.com/o/profile_images%2Fthumbs%2Fseanroldan.jpg?alt=media&token=6414d8d6-e8a8-487e-baf3-0d36d017a205",
      "percent_funded" : 0,
      "perf_location" : "Chennai",
      "reward_amt" : 6000,
      "target_amount" : 1750000,
      "target_date" : 1566568176731,
      "time_left" : 1566568176731,
      "total_backers" : 0
    }
  },
  "Fund_Project_Request" : {
    "-LEEy7uxXEeI4AJuePoB" : {
      "as123132" : 2,
      "asd123132" : 2,
      "asdf123asdf21" : 2
    }
  },
  "Loyalty_Points" : {
    "value" : 3000
  },

Firebase Screenshot

1 Ответ

0 голосов
/ 24 июня 2018

Вы можете использовать одно задание cron для запуска с интервалом, а затем сканировать данные с истекшим сроком.На самом деле, это самый распространенный способ реализовать время жизни в Firebase на данный момент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...