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通知のペイロード。 ドキュメントは事前定義されたフィールド で構成されています。notification FCM 経由のHTTP JSONメッセージの オプションに対応します。 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 プロトコル リファレンスを参照してください。

戻る

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