Firebase Cloud Messaging(FCM)コネクタ構成ガイド
この記事では、Firebase Cloud Messagingコネクタの構成方法について説明します。
API情報
このコネクタは、以下のベンダーAPIを使用します:
- API名:Google Firebase API
- APIバージョン:v1
- APIエンドポイント:
https://fcm.googleapis.com/
- ドキュメンテーション:Firebase Cloud Messaging
コネクタアクション
アクション名 | AudienceStream | EventStream |
---|---|---|
Androidデバイスにメッセージを送信 | ✓ | ✓ |
iOSデバイスにメッセージを送信 | ✓ | ✓ |
Webアプリにメッセージを送信 | ✓ | ✓ |
構成の構成
コネクタマーケットプレイスに移動し、新しいコネクタを追加します。コネクタの追加方法の一般的な指示については、About Connectorsを参照してください。
コネクタを追加した後、以下の構成を構成します:
- FirebaseプロジェクトID
必須。 プロジェクトIDを入力します。Firebaseコンソールを使用してFirebaseプロジェクトのIDを見つけることができます。Project settingsを開きます。プロジェクトIDは上部のペインに表示されます。 - クライアントID
必須。 Firebase Cloud Messaging APIにアクセスできるWebアプリケーションのクライアントIDを入力します。あなたのGoogle API Console Credentials Pageは、認証済みのリダイレクトURIをホワイトリストに登録する必要があります:https://my.tealiumiq.com/oauth/google/callback.html
。Create Authorization Credentialsを参照してください。 - クライアントシークレット
必須。 Webアプリケーションクライアントのシークレットを入力します。
アクション
アクションの名前を入力し、ドロップダウンメニューからアクションタイプを選択します。
次のセクションでは、各アクションのパラメータとオプションの構成方法について説明します。
Androidデバイスにメッセージを送信
パラメータ
メッセージのターゲットを指定するには、以下のパラメータのいずれか一つだけを構成します:Token
、Topic
、またはCondition
。
パラメータ | 説明 |
---|---|
Token | メッセージを送信するための登録トークン。 |
Topic | メッセージを送信するための購読済みトピック名。例:weather 。注:/topics/ プレフィックスは含めないでください。 |
Condition | メッセージを送信するための購読済みトピックの条件。例:foo in topics && bar in topics 。 |
Analytics Label | メッセージの分析データに関連付けられたラベル。 |
Collapse Key | メッセージのグループを識別するためのキーで、配信が再開されたときに最後のメッセージだけが送信されるようにすることができます。一度に最大4つの異なるcollapse keysが許可されています。 |
Priority | メッセージの優先度。値はNORMAL またはHIGH にすることができます。詳細については、Setting the priority of a messageを参照してください。 |
Time to Live | s で終わる最大9桁の小数点以下の秒数で表される期間。例:3.5s 。このフィールドは、デバイスがオフラインの場合にFCM保存にメッセージを保持する時間(秒)を表します。サポートされる最大の生存時間は4週間で、構成されていない場合のデフォルト値も4週間です。メッセージをすぐに送信したい場合は、0 に構成します。 |
Restricted Package Name | メッセージを受信するための登録トークンと一致する必要があるアプリケーションのパッケージ名。 |
Direct Boot Ok | true に構成されている場合、デバイスがダイレクトブートモードにある間、メッセージがアプリに配信されます。詳細については、Support Direct Boot modeを参照してください。 |
Title | 通知のタイトル。 |
Body | 通知の本文テキスト。 |
Icon | 通知のアイコン。drawableリソースmyicon の通知アイコンをmyicon に構成します。指定されていない場合、FCMはアプリマニフェストで指定されたランチャーアイコンを表示します。 |
Color | #rrggbb 形式で表される通知アイコンの色。 |
Sound | デバイスが通知を受信したときに再生する音。default またはアプリにバンドルされたサウンドリソースのファイル名をサポートします。サウンドファイルは/res/raw/ に存在する必要があります。 |
Tag | 通知ドロワー内の既存の通知を置き換えるために使用される識別子。指定されていない場合、各リクエストは新しい通知を作成します。指定されていて、同じタグの通知がすでに表示されている場合、新しい通知は通知ドロワー内の既存の通知を置き換えます。 |
Click Action | ユーザーが通知をクリックしたときに関連付けられるアクション。指定されている場合、ユーザーが通知をクリックすると、一致するインテントフィルターを持つアクティビティが起動されます。 |
Body Localization Key | ユーザーの現在のロケールに本文テキストをローカライズするために使用される、アプリリソース内の本文文字列のキー。詳細については、String Resourcesを参照してください。 |
Body Localization Args | ユーザーの現在のロケールに本文テキストをローカライズするために使用される、Body Localization Key内の形式指定子の代わりに使用される文字列値。詳細については、Formatting and Stylingを参照してください。 |
Title Localization Key | ユーザーの現在のロケールにタイトルテキストをローカライズするために使用される、アプリリソース内のタイトル文字列のキー。詳細については、String Resourcesを参照してください。 |
Title Localization Args | ユーザーの現在のロケールにタイトルテキストをローカライズするために使用される、Title Localization Key内の形式指定子の代わりに使用される文字列値。詳細については、Formatting and Stylingを参照してください。 |
Channel ID | notification’s channel ID(Android Oで新規)。アプリは、このチャネルIDの通知が受信される前に、このチャネルIDでチャネルを作成する必要があります。指定されていない場合、または提供されたチャネルIDがまだアプリによって作成されていない場合、FCMは代わりにアプリで指定されたチャネルIDを使用します。 |
Ticker | このパラメータは、通知のティッカーテキストをアクセシビリティサービスに送信します。APIレベル21(Lollipop)より前では、このパラメータは通知が初めて到着したときにステータスバーに表示されるテキストを構成します。 |
Sticky | false に構成されているか指定されていない場合、ユーザーがパネルでクリックすると通知は自動的に消去されます。true に構成されている場合、通知はユーザーがクリックしても継続します。 |
Event Time | 通知のイベントが発生した時間。パネル内の通知はこの時間でソートされます。ナノ秒解像度と最大9桁の小数点以下の桁を持つRFC3339 UTC形式のタイムスタンプ。例:2014-10-02T15:01:23Z および2014-10-02T15:01:23.045123456Z 。 |
Local Only | true に構成されている場合、通知は現在のデバイスにのみ関連していることを示します。 |
Notification Priority | この通知の相対的な優先度を構成します。優先度は、通知がどれだけ重要であるかを示す指標です。値はPRIORITY_UNSPECIFIED 、PRIORITY_MIN 、PRIORITY_LOW 、PRIORITY_DEFAULT 、PRIORITY_HIGH 、またはPRIORITY_MAX にすることができます。 |
Default Sound | true に構成されている場合、通知のためにAndroidフレームワークのデフォルトの音を使用します。 |
Default Vibrate Timings | true に構成されている場合、通知のためにAndroidフレームワークのデフォルトの振動パターンを使用します。 |
Default Light Settings | true に構成されている場合、通知のためにAndroidフレームワークのデフォルトのLEDライト構成を使用します。 |
Vibrate Timings | 使用する振動パターンを構成します。秒単位の持続時間で、最大9桁の小数点以下の桁数を持つことができ、s で終わります。例:3.5s 。Firebase Resource: Messageを参照してください。 |
Visibility | 通知のvisibilityを構成します。値はVISIBILITY_UNSPECIFIED 、PRIVATE 、PUBLIC 、SECRET のいずれかになります。 |
Notification Count | この通知内のアイテム数を構成します。 |
Light On Duration | Light Off Durationと共に、LEDの点滅レートを定義します。秒単位の持続時間で、最大9桁の小数点以下の桁数を持つことができ、s で終わります。例:3.5s 。 |
Light Off Duration | Light On Durationと共に、LEDの点滅レートを定義します。秒単位の持続時間で、最大9桁の小数点以下の桁数を持つことができ、s で終わります。例:3.5s 。 |
Color Red | 全体の光色の中での赤の量を表す0 から1 の間の値。この値をColor GreenとColor Blueに構成した値と組み合わせて、全体の色を決定します。例えば、Color Red = 1 、Color Blue = .5 、Color Green = 0 はフューシャまたは深いピンク色を作ります。 |
Color Green | 全体の光色の中での緑の量を表す0 から1 の間の値。この値をColor RedとColor Blueに構成した値と組み合わせて、全体の色を決定します。 |
Color Blue | 全体の光色の中での青の量を表す0 から1 の間の値。この値をColor GreenとColor Redに構成した値と組み合わせて、全体の色を決定します。 |
Color Alpha | この色がピクセルに適用されるべき割合。つまり、最終的なピクセル色は次の式によって定義されます:ピクセル色 = alpha * (この色) + (1.0 - alpha) * (背景色)。 |
Image | 通知に表示する画像のURL。 |
Data | "key" : "value" ペア形式のユーザー指定データ。 |
Template Variables | Templatesのデータ入力としてテンプレート変数を提供します。使用例については、Template Variables Guideのドキュメンテーションを参照してください。
|
Templates | Message OptionsおよびNotification Optionsセクションで参照されるテンプレートを提供します。Templates Guideのドキュメンテーションを参照してください。テンプレートは、名前で二重中括弧を使用してサポートされるフィールドに注入されます。例:{{template_name}} |
-
Resource: Message、AndroidConfigのドキュメンテーションを使用例として参照してください。
-
ネストされたオブジェクトをサポートするために、Templatesセクションを使用してテンプレートを定義します。テンプレートは、Custom Textオプションを使用して、一致する二重中括弧でその名前を参照してマッピングする必要があります:
{{template_name}}
。
iOSデバイスにメッセージを送信する
パラメータ
メッセージのターゲットを指定するには、次のパラメータのいずれか一つだけを構成します:Token
、Topic
、またはCondition
。
パラメータ | 説明 |
---|---|
Token | メッセージを送信する登録トークン。 |
Topic | メッセージを送信する購読済みトピック名。例:weather 。注:/topics/ プレフィックスは含めないでください。 |
Condition | メッセージを送信する購読済みトピックの条件。例:foo in topics && bar in topics 。 |
Analytics Label | メッセージの分析データに関連付けられたラベル。 |
Image | 通知に表示する画像のURL。 |
Title | 通知のタイトル。Apple Watchはこの文字列を短いルック通知インターフェースで表示します。 |
Subtitle | 通知の目的を説明する追加情報。 |
Body | アラートメッセージの内容。 |
Launch Image | 表示する起動画像ファイルの名前。 |
Title Localization Key | ローカライズされたタイトル文字列のキー。Titleキーの代わりにこのキーを指定して、タイトルをアプリのLocalizable.strings ファイルから取得します。値は、文字列ファイルのキーの名前を含む必要があります。 |
Title Localization Args | タイトル文字列の変数に対する置換値を含む文字列の配列。Title Localization Keyで指定された文字列の%@ 文字は、この配列の値に置き換えられます。配列の最初の項目は文字列の最初の%@ 文字を置き換え、2番目の項目は2番目のインスタンスを置き換え、というようになります。 |
Subtitle Localization Key | ローカライズされたサブタイトル文字列のキー。Subtitleキーの代わりにこのキーを使用して、サブタイトルをアプリのLocalizable.strings ファイルから取得します。値は、文字列ファイルのキーの名前を含む必要があります。 |
Subtitle Localization Args | タイトル文字列の変数に対する置換値を含む文字列の配列。Subtitle Localization Keyで指定された文字列の%@ 文字は、この配列の値に置き換えられます。 |
Body Localization Key | ローカライズされたメッセージ文字列のキー。Bodyキーの代わりにこのキーを使用して、メッセージテキストをアプリのLocalizable.strings ファイルから取得します。値は、文字列ファイルのキーの名前を含む必要があります。 |
Body Localization Args | メッセージテキストの変数に対する置換値を含む文字列の配列。Body Localization Keyで指定された文字列の%@ 文字は、この配列の値に置き換えられます。 |
Badge | アプリのアイコンに表示するバッジの数。このパラメータを0 に構成すると、現在のバッジがある場合は削除されます。 |
Sound Critical | クリティカルアラートフラグ。このパラメータを1 に構成すると、クリティカルアラートが有効になります。 |
Sound File Name | アプリのメインバンドルまたはアプリのコンテナディレクトリのLibrary/Soundsフォルダにあるサウンドファイルの名前。この値を文字列default に構成すると、システムサウンドが再生されます。 |
Sound Volume | クリティカルアラートのサウンドの音量。このパラメータを0 (無音)から1 (最大音量)の間の値に構成します。 |
Thread ID | 関連する通知をグループ化するためのアプリ固有の識別子。 |
Category | 通知のタイプ。 |
Content Available | バックグラウンド通知フラグ。サイレントなバックグラウンド更新を行うには、この値を1 に構成し、ペイロードにAlert、Badge、Soundキーを含めないでください。 |
Mutable Content | 通知サービスアプリ拡張フラグ。値が1の場合、システムは通知を配信前に通知サービスアプリ拡張に渡します。 |
Target Content ID | 前面に出るウィンドウの識別子。 |
Interruption Level | 通知の重要度と配信タイミング。 |
Relevance Score | システムがアプリからの通知をソートするために使用する関連性スコア。0 から1 の間の数値。 |
Filter Criteria | システムが現在のFocusで通知を表示するかどうかを判断するために評価する文字列。 |
Stale Date | Live Activityが古くなり、時代遅れになる日付を表すUNIXタイムスタンプ。 |
Content State | Live Activityの更新されたまたは最終的なコンテンツを含むJSONオブジェクト。このパラメータの内容は、カスタムActivityAttributesの実装で記述したデータと一致する必要があります。このオプションはテンプレートをサポートしています。 |
Timestamp | リモート通知がLive Activityを更新または終了するために送信される時間を指定するUNIXタイムスタンプ。 |
Events | リモートプッシュ通知で進行中のLive Activityを更新または終了するかどうかを指定します。値はupdate またはend になります。 |
データ | "key" : "value" のペア形式でユーザーが指定したデータ |
ヘッダー | Apple Push Notification Serviceで定義されたHTTPリクエストヘッダー。apns-expirationやapns-priorityなどのサポートされているヘッダーについては、APNsリクエストヘッダーを参照してください。詳細については、Firebaseリソース: メッセージを参照してください。 |
テンプレート変数 | テンプレートにデータ入力としてテンプレート変数を提供します。使用例については、テンプレート変数ガイドのドキュメンテーションを参照してください。
|
テンプレート | メッセージオプションと通知オプションセクションで参照されるテンプレートを提供します。詳細については、テンプレートガイドのドキュメンテーションを参照してください。テンプレートは、名前で二重中括弧でサポートされたフィールドに注入されます。例:{{template_name}} |
-
使用例については、AndroidConfigのドキュメンテーションを参照してください。
-
ネストしたオブジェクトをサポートするために、テンプレートセクションを使用してテンプレートを定義します。テンプレートは、一致する二重中括弧でその名前を参照するカスタムテキストオプションを使用してマッピングする必要があります:
{{template_name}}
Webアプリにメッセージを送信する
パラメータ
メッセージのターゲットを指定するには、次のパラメータのいずれか一つだけを構成します:Token
、Topic
、またはCondition
。
パラメータ | 説明 |
---|---|
トークン | メッセージを送信するための登録トークン。 |
トピック | メッセージを送信するための購読済みトピック名。例:weather 。注:/topics/ プレフィックスは含めないでください。 |
条件 | メッセージを送信するための購読済みトピックの条件。例:foo in topics && bar in topics 。 |
アナリティクスラベル | メッセージのアナリティクスデータに関連付けられたラベル。 |
リンク | ユーザーが通知をクリックしたときに開くセキュアなリンク。値はhttps:// で始まる必要があります。 |
アクション | 通知に表示するユーザーアクションを識別する文字列。 |
アクションタイトル | ユーザーに表示するアクションテキストを含む文字列。 |
アクションアイコン | アクションと共に表示するアイコンのURLを含む文字列。 |
バッジ | 通知自体を表示するスペースが不足している場合に通知を表すために使用される画像のURL。 |
タイトル | 通知のタイトル。 |
ボディ | 通知の本文文字列。 |
データ | 通知のデータの構造化クローンを返します。このオプションはテンプレートをサポートします。 |
方向 | 通知のテキスト方向。 |
アイコン | 通知のアイコンとして使用される画像のURL。 |
画像 | 通知の一部として表示される画像のURL。 |
言語 | 通知の言語コード。 |
再通知 | 新しい通知が古い通知を置き換えた後にユーザーに通知するかどうかを指定します。 |
インタラクションの要求 | 通知が自動的に閉じるのではなく、ユーザーがクリックまたは閉じるまでアクティブであるべきことを示すブール値。 |
サイレント | 通知がサイレントであるべきかどうかを指定します。このパラメータがtrue に構成されている場合、デバイスの構成に関係なく、音や振動は発生しません。 |
タグ | 通知のID。 |
タイムスタンプ | 通知が作成された時間または適用される時間(過去、現在、または未来)を指定します。 |
バイブレート | 振動ハードウェアを搭載したデバイスに発生させる振動パターンを指定します。最大9桁の小数点以下の秒数で、s で終わります。例:3.5s 。詳細については、Firebaseリソース: メッセージを参照してください。 |
データ | "key" : "value" のペア形式でユーザーが指定したデータ |
ヘッダー | webpushプロトコルで定義されたHTTPヘッダー。サポートされているヘッダーについては、Webpushプロトコルを参照してください。例:"TTL": "15" 。詳細については、Firebaseリソース: メッセージを参照してください。 |
テンプレート変数 | テンプレートにデータ入力としてテンプレート変数を提供します。使用例については、テンプレート変数ガイドのドキュメンテーションを参照してください。
|
テンプレート | メッセージオプションと通知オプションセクションで参照されるテンプレートを提供します。詳細については、テンプレートガイドのドキュメンテーションを参照してください。テンプレートは、名前で二重中括弧でサポートされたフィールドに注入されます。例:{{template_name}} |
-
使用例については、AndroidConfigのドキュメンテーションを参照してください。
-
ネストしたオブジェクトをサポートするために、テンプレートセクションを使用してテンプレートを定義します。テンプレートは、一致する二重中括弧でその名前を参照するカスタムテキストオプションを使用してマッピングする必要があります:
{{template_name}}
。
最終更新日 :: 2023年April月11日