Как запускать уведомления Firebase с помощью поля метки времени?

# #firebase #flutter #push-notification #notifications #timestamp

Вопрос:

Я разрабатываю приложение, использующее Firebase в качестве бэкенда с flutter. Я пытаюсь добавить функциональность уведомлений в приложение. Я знаю, что в firebase есть служба push_notification, и большинство учебников, которые я нашел, рассказывают о том, как настроить ее для приложений обмена сообщениями. Тем не менее, я пытаюсь уведомить пользователя на основе поля метки времени в одном из документов в базе данных. Я не уверен, есть ли способ запускать уведомления локально (на стороне клиента) или из базы данных.

Предположим, что у пользователя есть документ в базе данных для каждого задания, и каждое задание имеет дату выполнения в качестве файла в базе данных. Я хочу уведомить пользователя за 24 часа до выполнения задания. Или, возможно, предоставьте пользователю возможность выбрать количество дней/часов, о которых следует уведомлять перед каждым назначением.

Есть ли способ настроить эту функциональность из firebase? Как бы вы запланировали запуск push-уведомления?

Есть ли способ настроить эту функциональность локально (на стороне клиента)? Как?

Ответ №1:

В Firebase нет встроенных функций для планирования уведомлений на основе динамической метки времени. Выполните следующие действия:

  1. Настройте облачные функции Firebase для отправки уведомлений на основе токенов для каждого устройства. Вам необходимо перейти на план Blaze, чтобы использовать эти функции.

    Как отправлять уведомления с помощью функций Firebase

  2. Вы можете использовать node-schedule Cloud Scheduler функции Firebase или в них. Или, в качестве альтернативы, если периодический таймер решает вашу проблему, вы можете использовать pub-sub scheduler