1

私は管理者ログインを持つアプリを持っています。私は、管理者がFirebaseコンソールに行かなくても、アプリケーション自体からプッシュ通知を送信する機能を追加しようとしています。 Firebaseのサポートに頼んだとき、私はこの返信を受けました。SwiftにFirebaseを使用してアプリをプッシュ通知する

"Firebase Cloud Messagingを使用することができます。アプリからアップストリームメッセージをアプリケーションサーバーに送信し、アップストリームメッセージを処理してクライアントアプリケーションにプッシュ通知を送信することができます。

誰もこれまでに行ったことはありますか?私はこれがどのように機能するかを理解しようとしています。非管理者はログインせずにアプリを使用するだけなので、プッシュ通知が送信されるようにアップストリームメッセージを受信するデフォルトのユーザーIDを作成しますか?プッシュ通知として自分の電話機にアプリを持っている誰にでも上向きのメッセージを送信する方法はありますか?

https://firebase.google.com/docs/notifications/

しかし、あなたはあなたのクライアントアプリケーション(モバイルまたはウェブ)から直接プッシュ通知を送信したい場合、あなたはあなた自身を実装する必要があります。

答えて

1

あなたのクライアントアプリケーションにプッシュ通知を送信するためにFirebaseコンソールのGUIを使用することができますFCM(Firebase Cloud Messaging)サーバーと連携して他のクライアントに通知を送信するAppサーバー。

それはFirebaseドキュメントにここで説明しています:あなたはの管理者バージョンの中からFCMメッセージを開始するために、あなたの管理者を有効にするように https://firebase.googleblog.com/2016/08/sending-notifications-between-android.html

+0

Google Cloud機能では、独自のアプリサーバーが必要です。以下の回答を参照してください。 – Crashalot

+0

アップデート:@Crashalotが指摘しているように、Firebaseがクラウド機能を導入した後、別個のAppサーバーを実装する必要はなく、デバイスからデバイスへのプッシュ通知の送信を処理するクラウド機能を作成できます。 – ElectroBuddha

+0

独自のアプリケーションサーバーなしでプッシュ通知を行う方法を説明する回答にリンクしていないのを忘れた:https://stackoverflow.com/a/47106374/144088 – Crashalot

0

はサウンド: https://firebase.google.com/docs/cloud-messaging/server

もこのことについてFirebaseブログの記事がありますアプリ。その場合、Firebaseのサポートは正しいですし、あなたはそのタイプのものを実装することができるいくつかの方法があります。

基本ロジックは次のようになります。

  1. 管理リクエストを送信するサーバーを教えてください。
  2. サーバーが管理者の代わりに要求を送信します。

手順1を実装するためのオプションがいくつかありますが、手順2は常に同じです。ステップ1では、次の操作を実行できます。

  • 管理者ユーザーからの要求のみを受け入れるエンドポイントをサーバーに作成します。管理ユーザーは、サーバーに必要なすべての情報を含むHTTP要求をエンドポイントに送信し、関連するすべてのユーザーにFCMメッセージを送信します。
  • FCMへのXMPP接続を介して、クライアントからサーバーへのアップストリームメッセージを使用します。管理ユーザーは、FCMクライアントSDKを使用して、FCMに「上流」メッセージを送信します。このメッセージはサーバーに転送され、サーバーはすべての関連ユーザーにFCMメッセージを送信します。

私はあなたの要件を理解していると仮定して、最初のオプションが簡単で、うまく動作すると思います。

関連する問題