Docs Menu
Docs Home
/ /
Atlas App Services
/

プッシュ通知 [非推奨]

項目一覧

  • Overview
  • 管理インターフェース
  • プッシュ通知を送信する
  • プッシュ通知を受信するようにクライアントを設定する
  • ルール テンプレート
  • 通知には特定のタイトルが必要です
  • 通知は特定のトピックに対してのみ使用してください
  • 通知は限られたユーザー ID にのみ送信可能
  • プッシュ通知ルール
  • 通知ドキュメント フィールド

重要

サードパーティ サービスとプッシュ通知の廃止

Atlas App Services のサードパーティ サービスとプッシュ通知は非推奨となり、代わりに関数内の外部依存関係を使用する HTTP エンドポイントを作成できるようになりました。

Webhook はHTTPS endpointsに名前変更され、動作は変更されません。 既存の Webhook を移行する必要があります。

既存のサービスは、 30、2025 まで引き続き機能します。

サードパーティ サービスとプッシュ通知は非推奨になったため、App Services UI からデフォルトで削除されました。 既存のサードパーティ サービスまたはプッシュ通知を管理する必要がある場合は、次の操作を実行して構成を UI に追加できます。

  • 左側のナビゲーションの [ App Settings Manageセクションの下にある [] をクリックします。

  • Temporarily Re-Enable 3rd Party Servicesの横にあるトグル スイッチを有効にし、変更を保存します。

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 アプリケーションにプッシュ通知を統合する一般的なプロセスは次のとおりです。

  1. FCMの依存関係を追加します。

  2. プッシュ のインスタンスを作成します。

  3. push.registseDevice()を使用する またはpush.registerDeviceAsync() メソッドを使用して、クライアントをプッシュ通知に登録します。

  4. FirebaseMesting の サブスクライブTo API() を使用する トピックにサブスクライブします。

  5. 抽象的な FirebaseMesgingService を拡張するクラスを作成します と が 使用して複数のドキュメントを挿入できます。このクラスは、 FCMとの通信を処理します。

  6. Android プロジェクトのAndroidManifest.xmlファイルを更新して、 FirebaseMessagingServiceからのクラスとアプリケーションのレシーバーを登録します。

Android クライアントとの FCM 統合に関する最新情報と詳細な手順については、次を参照してください: Android で Firebase Cloud メッセージング クライアント アプリを設定する ガイドを参照してください。

iOS アプリで App Services とともに FCM を使用するには、次の一般的な手順に従います。

  1. Apple Developer Member センター を使用して有効な Apple プッシュ通知サービス(APN)証明書を作成 。

  2. GoogleService-Info.plist のコピー ファイルを XCode プロジェクトに渡す追加オプション。

  3. FCM を構成し、iOS アプリを追加します。 アプリを登録すると、FCM は登録トークンを返します。

iOS クライアントとの FCM 統合に関する最新情報と詳細な手順については、「 iOS で Firebase クラウド メッセージングのクライアント アプリを設定する 」を参照してください。 ガイドを参照してください。

{
"%%args.notification.title": "Test Notification Please Ignore"
}
{
"%%args.to": "%%values.validTopics"
}
{
"%%true": {
"%function": {
"name": "allUserIdsAreValid",
"arguments": [
"%%args.userIds"
]
}
}
}

注意

このテンプレートでは、次の処理を実行するallUserIdsAreValidという名前のサンプル関数を呼び出します。

  1. userIds引数で提供されたユーザー ID のリストを受け入れます

  2. 現在のユーザーの ID に一致するユーザー ドキュメントを MongoDB に照会します

  3. 提供された電話番号をユーザー ドキュメントに記載されている番号と比較します

  4. 比較のブール値を返します

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"展開でアクセスできます。

フィールド
タイプ
説明
userIds
文字列の配列。
メッセージ受信者のユーザー ID。
to
文字列
メッセージの受信者。 値は、デバイスの登録トークン、デバイスグループの通知キー、または単一のトピック( /topics/がプレフィックス付き)にすることができます。
registrationTokens
文字列の配列。
マルチキャスト メッセージを受信しているデバイスの登録トークンのリスト。
priority
string
通知の優先順位。 値は"high"または"normal"のいずれかです。 FCM 経由の HTTP JSON メッセージのpriorityオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
collapseKey
string
削減可能なメッセージに関連付けられた削減キー。 FCM 経由の HTTP JSON メッセージのcollapse_keyオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
contentAvailable
ブール値
メッセージの受信時にアイドル状態のクライアント アプリを起動するかどうかを決定するフラグ。 FCM 経由の HTTP JSON メッセージのcontent_availableオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
mutableContent
ブール値
通知内容をユーザーに表示する前に変更できるかどうかを決定するフラグ。 FCM 経由の HTTP JSON メッセージのmutable_contentオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
timeToLive
整数

デバイスがオフラインの場合にメッセージを保持する最大時間(ミリ秒単位)。 有効な値の範囲は 0 から 2419200 です。

FCM 経由の HTTP JSON メッセージのtime_to_liveオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。

data
JSON document
データ メッセージのペイロード。 dataドキュメントは、カスタム キーと値のペアで構成されています。 FCM 経由の HTTP JSON メッセージのdataオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
notification
JSON document
通知のペイロード。 notificationドキュメントは事前定義されたフィールドで構成されています。 FCM 経由の HTTP JSON メッセージのnotificationオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。

次の表では、プッシュ通知ルールの許可フィールドとして使用できるnotificationドキュメントのフィールドが示されています。 ルール内のこれらのフィールドのいずれかにアクセスするには、 "%%args.notification.<field>"を使用します。

フィールド
タイプ
説明
title
string
通知のタイトル。 FCM 経由の HTTP JSON メッセージのtitleオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
body
string
通知の本文。 FCM 経由の HTTP JSON メッセージのbodyオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
sound
string
通知の受信時に実行される名前。 FCM 経由の HTTP JSON メッセージのsoundオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
clickAction
string
ユーザーが通知をクリックしたときに実行するアクション。 FCM 経由の HTTP JSON メッセージのclick_actionオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
bodyLocKey
string
ボディ string をローカライズするためのキー。 FCM 経由の HTTP JSON メッセージのbody_loc_keyオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
bodyLocArgs
string
ボディ string 内のローカライズのために形式指定子を置き換える string 値。 FCM 経由の HTTP JSON メッセージのbody_loc_argsオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
titleLocKey
string
タイトル string をローカライズするためのキー。 FCM 経由の HTTP JSON メッセージのtitle_loc_keyオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
titleLocArgs
string
タイトル string 内のローカライズの形式指定子を置き換える string 値。 FCM 経由の HTTP JSON メッセージのtitle_loc_argsオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
icon
string
Android のみ。 通知アイコン。 FCM 経由の HTTP JSON メッセージのiconオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
color
string
Android のみ。 アイコンの色を #rggb 形式で示します。 FCM 経由の HTTP JSON メッセージのcolorオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
tag
string
Android のみ。 指定した場合、各通知によって新しいエントリは作成されず、既存のエントリが指定されたタグに置き換えられます。 設定されていない場合、通知ごとに新しいエントリが作成されます。 FCM 経由の HTTP JSON メッセージのtagオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。
badge
string
iOS のみ。 gclient アプリのホームページ アイコンのバッジ。 FCM 経由の HTTP JSON メッセージのbadgeオプションに対応します。 FCM HTTP プロトコル リファレンスを参照してください。

戻る

パーティションベースの同期モード