重要
サードパーティ サービスとプッシュ通知の廃止
Atlas App Services のサードパーティ サービスとプッシュ通知は非推奨となり、代わりに関数内の外部依存関係を使用する HTTP エンドポイントを作成できるようになりました。
Webhook はHTTPS endpointsに名前変更され、動作は変更されません。 既存の Webhook を移行する必要があります。
既存のサービスは、 30、2025 まで引き続き機能します。
サードパーティ サービスとプッシュ通知は非推奨になったため、App Services UI からデフォルトで削除されました。 既存のサードパーティ サービスまたはプッシュ通知を管理する必要がある場合は、次の操作を実行して構成を UI に追加できます。
左側のナビゲーションの [ App Settings Manageセクションの下にある [] をクリックします。
Temporarily Re-Enable 3rd Party Servicesの横にあるトグル スイッチを有効にし、変更を保存します。
Overview
Atlas App Services は、モバイル(Android および iOS)アプリを Firebase Cloud Messging(FCM)サービスと統合して、プッシュ通知を提供することをサポートしています。 App Services コンソール内から通知メッセージを設定して送信しますが、クライアントは特定のトピックに送信されたメッセージを Firebase Cloud
Messaging (FCM)
に登録します。
管理インターフェース
App Services UI のPush Notifications画面では、通知ドラフトを作成し、ユーザーに通知を送信し、 通知ルールを定義できます。
Push Notifications画面には 4 つのタブがあります。
タブ名 | 説明 |
---|---|
Draft | [ ドラフト ] タブでは、ドラフト メッセージのリストを表示できます。 ドラフト メッセージには次の操作があります。
|
Sent | [ 送信 ] タブには、App Services が登録されたクライアントにすでに送信したメッセージが表示されます。 ここから、送信されたメッセージのリストを表示できます。 送信されたメッセージに対して、以下の操作を行うことができます。
|
Config | [構成] タブで、 FCM認証情報(送信元 ID とレガシー API キー)を提供します。 |
Rules |
プッシュ通知を送信する
Push Notificationsページから新しいプッシュ通知を送信できます。 [ Send New NotificationボタンをクリックしてSend New Notificationダイアログを開きます。 このダイアログでは、通知メッセージ、ラベル、関連するトピックのオーディエンスを指定します。

プッシュ通知を受信するようにクライアントを設定する
Android アプリケーションにプッシュ通知を統合する一般的なプロセスは次のとおりです。
FCMの依存関係を追加します。
push.registseDevice()を使用する またはpush.registerDeviceAsync() メソッドを使用して、クライアントをプッシュ通知に登録します。
Use FirebaseMessaging の describeToToic() を使用してトピックにサブスクライブします。
抽象的な FirebaseMesgingService を拡張し、 onMessageField() メソッドを実装するクラスを作成します。このクラスは、FCM との通信を処理します。
Android プロジェクトの
AndroidManifest.xml
ファイルを更新して、FirebaseMessagingService
からのクラスとアプリケーションのレシーバーを登録します。
Android クライアントとの FCM 統合に関する最新情報と詳細な手順については、 公式の「Androidガイドで Firebase Cloud メッセージングクライアントアプリを設定する」 を参照してください。
iOS アプリで App Services とともに FCM を使用するには、次の一般的な手順に従います。
Apple Developer Member センター を通じて有効な Apple プッシュ通知サービス(APN)証明書を作成します。
GoogleService-Info.plistファイルをXCodeプロジェクトにコピーします。
FCM を構成し、iOS アプリを追加します。 アプリを登録すると、FCM は登録トークンを返します。
iOSクライアントとの FCM 統合に関する最新情報と詳細な手順については、公式iOSでガイドクラウド メッセージングクライアントアプリの設定を参照してください。
ルール テンプレート
通知には特定のタイトルが必要です
{ "%%args.notification.title": "Test Notification Please Ignore" }
通知は特定のトピックに対してのみ使用してください
{ "%%args.to": "%%values.validTopics" }
通知は限られたユーザー ID にのみ送信可能
{ "%%true": { "%function": { "name": "allUserIdsAreValid", "arguments": [ "%%args.userIds" ] } } }
注意
このテンプレートでは、次の処理を実行するallUserIdsAreValid
という名前のサンプル関数を呼び出します。
userIds
引数で提供されたユーザー ID のリストを受け入れます現在のユーザーの ID に一致するユーザー ドキュメントを MongoDB に照会します
提供された電話番号をユーザー ドキュメントに記載されている番号と比較します
比較のブール値を返します
exports = function(toPhone) { const mdb = context.services.get('mongodb-atlas'); const users = mdb.db('demo').collection('users'); const user = users.findOne({ _id: context.user.id }); return user.phoneNumber === toPhone; }
プッシュ通知ルール
プッシュ通知のルールを指定するには、 Push Notificationsページの [ Rules ] タブをクリックします。
注意
App Services の他のサービスと違い、プッシュ通知のルールは任意です。 デフォルトでは、すべてのプッシュ通知が許可されています。 ただし、ルールを指定すると、そのルールによって課せられる制限が有効になります。
プッシュ通知 ルールでは、次の引数が許可されています。 "%%args"
展開でアクセスできます。
フィールド | タイプ | 説明 |
---|---|---|
| 文字列の配列。 | メッセージ受信者のユーザー ID。 |
| 文字列 | メッセージの受信者。 値は、デバイスの登録トークン、デバイスグループの通知キー、または単一のトピック( |
| 文字列の配列。 | マルチキャスト メッセージを受信しているデバイスの登録トークンのリスト。 |
| string | 通知の優先順位。値は |
| string | 削減可能なメッセージに関連付けられた削減キー。FCM 経由のHTTP JSONメッセージの |
| ブール値 | メッセージの受信時にアイドル状態のクライアントアプリを起動するかどうかを決定するフラグ。FCM 経由のHTTP JSONメッセージの |
| ブール値 | 通知内容をユーザーに表示する前に変更できるかどうかを決定するフラグ。FCM 経由のHTTP JSONメッセージの |
| 整数 | デバイスがオフラインの場合にメッセージを保持する最大時間(ミリ秒単位)。 有効な値の範囲は 0 から 2419200 です。 FCM 経由のHTTP JSONメッセージの |
| JSON document | データ メッセージのペイロード。 |
| JSON document | 通知のペイロード。 |
通知ドキュメント フィールド
次の表では、プッシュ通知ルールの許可フィールドとして使用できるnotification
ドキュメントのフィールドが示されています。 ルール内のこれらのフィールドのいずれかにアクセスするには、 "%%args.notification.<field>"
を使用します。
フィールド | タイプ | 説明 |
---|---|---|
| string | 通知のタイトル。FCM 経由のHTTP JSONメッセージの |
| string | 通知の本文。FCM 経由のHTTP JSONメッセージの |
| string | 通知の受信時に実行される名前。FCM 経由のHTTP JSONメッセージの |
| string | ユーザーが通知をクリックしたときに実行するアクション。FCM 経由のHTTP JSONメッセージの |
| string | ボディ string をローカライズするためのキー。FCM 経由のHTTP JSONメッセージの |
| string | ボディ string 内のローカライズのために形式指定子を置き換える string 値。FCM 経由のHTTP JSONメッセージの |
| string | タイトル string をローカライズするためのキー。FCM 経由のHTTP JSONメッセージの |
| string | タイトル string 内のローカライズの形式指定子を置き換える string 値。FCM 経由のHTTP JSONメッセージの |
| string | Android のみ。通知アイコン。FCM 経由のHTTP JSONメッセージの |
| string | Android のみ。アイコンの色を #rggb形式で示します。FCM 経由のHTTP JSONメッセージの |
| string | Android のみ。指定した場合、各通知によって新しいエントリは作成されず、既存のエントリが指定されたタグに置き換えられます。設定されていない場合、通知ごとに新しいエントリが作成されます。FCM 経由のHTTP JSONメッセージの |
| string | iOSのみ。gclientアプリのホームページ アイコンのバッジ。FCM 経由のHTTP JSONメッセージの |