2017-12-14 19 views
1

私は、firebaseに保存した日付から特定の時間にユーザーに通知する必要があるフィットネスアプリを実行しています。特定の時刻にfirebaseから通知をトリガする方法は?

例:firebase DBに今日のタイムスタンプを保存しています。「start_at」:「タイムスタンプ」と言います。保存した日付(タイムスタンプ)から1週間後に通知を送信する必要があります。

これはcronの機能に似ています。私はファイヤーベースでそれを達成する方法を正確には知らない。

誰でも私を助けることができますか?

+0

私はこの経験はありませんが、私はあなたを導くことができます。私が見ているのは、関数apiと通知apiです。通知を作成して時刻を付けるためには、関数内でトリガーを設定できる必要があります。ダッシュボードから通知を送信するタイミングを設定できるので、APIの一部でなければなりません。クラウド機能でこのフローを設定するだけです。私が思うクラウド機能からの通知を送るにはあなたはaccを支払う必要があります。 – parohy

+0

ちょうどあなたが行くように支払う。私は、これはあなたがクラウド機能からの通知を送信することができると思うが、それは無料です。無料のクオータでトラフィックを支払うことはありません。 – parohy

+0

[Firebase Cloud Messagingでプッシュ通知をスケジュールする]の複製があります(https://stackoverflow.com/questions/40357256/schedule-a-push-notification-with-firebase-cloud-messaging) –

答えて

0

一般的に、FirebaseとGoogle Cloud Platformには通知やクラウド機能のトリガーをプログラム的にスケジュールする機能はありません。

あなたは選択肢にあります

  • は、周波数ではGoogle App Engineからトリガーされるクラウド機能(ES 1時間)を書きます。実行をスケジュールする方法についてはHere is the explanationを参照してください。
  • 独自のサーバーを設定して、FCMのAPIを通じて通知を送信します。 Node.jsを使用する場合は、node-cronを使用できます。
+0

@Chitra feedback? – ale00

+0

私はあなたの最初の選択を試みましたが、私は2週間それを設定する方法と、異なる時間に別のユーザーのためにそれを設定する方法がわかりません。 2番目の選択肢として、このプロジェクトのために別途サーバーを設定する必要はありません。 – Hira

+0

また、クラウド機能を特定のユーザーのために起こった変更を聞くようにする方法。例えば、 "functions.database.ref( '/ Users/{id}')。onWrite(event .."これは私の関数で通知を受け取ります。ここで私は動的ユーザIDを渡すことができますか? (通知)のコンテンツとバッジの値は動的ですか?ありがとう – Hira