---
sourceDocument: Xanadu モバイルの構成とナビゲーション
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/xanadu/mobile

 Release :

    - xanadu

ft:locale :

    - ja-JP

ft:publication_title :

    - Xanadu モバイルの構成とナビゲーション

ft:clusterId :

    - mobile

bundleId :

    - mobile

workflow :

    - Platform


---

# プッシュ通知メッセージのコンテンツを構成する

# プッシュ通知メッセージのコンテンツを構成する {#ariaid-title1}

* リリースバージョン: Xanadu
* 
* 更新日 2024年08月01日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：7分

プッシュ通知メッセージのコンテンツを構成し、通知を受信するモバイルアプリケーションを選択します。重要なアラート通知を設定したり、メッセージの外観をカスタマイズしたり、ユーザーが通知をタップしたときに使用されるディープリンクを決定したりできます。

## 始める前に

プッシュ通知メッセージのコンテンツを構成するには、モバイルディープリンクジェネレーターを使用してディープリンクを生成する必要があります。詳細については、「[モバイル向けディープリンク](https://servicenow-prod.fluidtopics.net/lLGgcnHRiiqOTalYCTAqdA "モバイルディープリンクは、モバイルアプリ内の特定のコンテンツや場所にユーザーを誘導するリンク形式です。これらのリンクは、メール通知、テキストメッセージ、プッシュ通知、ランチャー画面、入力フォーム画面に配置できます。複数の SSO ID プロバイダーに対してモバイルアプリのログイン URL を設定することもできます。")」を参照してください。

必要なロール：admin

## このタスクについて

\[プッシュメッセージコンテンツ\] フォームに次のように入力します。

* 通知に名前を付けます。
* 通知の送信先のモバイルアプリを選択します。
* オプションで、通知メッセージの外観をカスタマイズします。
* ユーザーが通知をタップしたときに使用するディープリンクを決定します。

{#config-push-notification-message-content__ul_nmt_pf2_zpb}  
プッシュ通知メッセージのコンテンツは、最大 3 つの追加フィールドをサポートしています。これらのフィールドをオプションのテキストスロットとして使用すると、ソースレコードのフィールドをそのスロットに表示できます。  
注:  
テキストスロットはモバイルアプリ上に固定されているため、場所やサイズを変更することはできません。各スロットは、プッシュ通知メッセージのコンテンツスクリプトの JSON オブジェクト内で `Status`、 `Identifier`、および `Description` にマッピングされます。

追加のフィールドでは、モバイル UI のスタイルも使用できます。スタイリングの詳細については、「[モバイル UI のスタイル](https://servicenow-prod.fluidtopics.net/cGTz70i~0x4B3XeYmYW7uw "UI スタイルは、アプレットのフィールドのフォントと背景色を定義します。")」を参照してください。

## 手順

1. 移動先 すべてシステム通知プッシュプッシュメッセージコンテンツ.
2. \[新規\] を選択します。
3. \[プッシュ通知メッセージコンテンツ\] フォームの各フィールドに入力します。  
   {#config-push-notification-message-content__table_fbr_1vm_5pb__entry__2}

   | フィールド | 説明 |
   |-|-|
   | 名前 | このレコードの文字列値。 注: この名前は通知には表示されず、構成中に使用する参照にすぎません。 |
   | プッシュアプリ | 通知を送信するモバイルアプリの参照です。 * モバイルエージェント には ServiceNow モバイル アプリケーションを使用します。 * Now Mobile アプリ には ServiceNow Request アプリケーションを使用します。 {#config-push-notification-message-content__ul_ek3_nvm_5pb} |
   | プッシュ メッセージ生成 | 通知リンクを含むスクリプトブロックです。スクリプトブロックでは、JSON オブジェクトはリンクを返す必要があるため、`Link` キーが存在している必要があります。そのキーには、モバイルディープリンクジェネレーターによって生成された、対応するディープリンク値が必要です。 |
   [表 : 1. \[プッシュメッセージコンテンツ\] フォーム]

   {#config-push-notification-message-content__table_fbr_1vm_5pb}  
   この例では、入力されたフォームと、適切な `Link` キーと対応するディープリンク値を持つ JSON オブジェクトを示します。
4. **オプション:** テキストスロットなどの追加フィールドを通知コンテンツに追加します。  
   \[プッシュメッセージ生成\] スクリプトブロックで、各フィールドのレイアウトフィールドオブジェクトを作成します。
   1. 通知レイアウトオブジェクトをインスタンス化します。  

          var layoutGen = new global.NotificationLayoutFieldGenerator();

   2. 通知レイアウトスクリプトを使用し、グローバルアプリケーションスコープを含めてレイアウトフィールドを生成します。  
      スクリプトインクルードの詳細については、「 [スクリプトインクルード](https://www.servicenow.com/docs/access?context=c_ScriptIncludes&version=xanadu&pubname=xanadu-application-development&ft:locale=en-US)」を参照してください。  
      注:  
      通知レイアウトジェネレーターのスクリプトインクルードは、変更しないでください。
   3. レイアウトフィールドを作成します。  
      各レイアウトフィールドには、`Table`、`Sys_Id`、および `Column` が必要です。  
      注:  
      `Table` と `Sys_Id` の値は、`current.getTableName()` と `current.sys_id` を使用して現在のレコードから直接取得する必要があります。目的のテーブルの `Column` 値が存在し、ディクショナリーの列名と正確に一致する必要があります。  

          var text_01 = layoutGen.layoutField(current.getTableName(), current.sys_id, "priority");

   4. レイアウトフィールドを元の JSON オブジェクトに、別のオブジェクトとして渡します。  
      モバイルアプリケーションは、必要な追加フィールドを含むオブジェクトであるオプションの `Layout` キーをリッスンします。`Layout` オブジェクトで、各追加フィールドを `Status`、`Identifier`、または `Description` のキーに関連付けます。次の例を参照として使用できます。  

          (function buildJSON( /*GlideRecord*/ current, /*String*/ message, /*Object*/ attributes) { 

              var layoutGen = new global.NotificationLayoutFieldGenerator(); 
              var text_01 = layoutGen.layoutField(current.getTableName(), current.sys_id, "priority"); 
              var text_02 = layoutGen.layoutField(current.getTableName(), current.sys_id, "state"); 
              var text_03 = layoutGen.layoutField(current.getTableName(), current.sys_id, "short_description"); 

              var deepLinkGenerator = new global.MobileDeepLinkGenerator("Request"); 
              var link = deepLinkGenerator.getFormScreenLink("b71040b1533a33007bc2ddeeff7b1221", current.getTableName(), current.getValue("sys_id")); 

              var json = { 

                  "Link": link, 

                  "Layout": { 

                      "Status": text_01, 

                      "Identifier": text_02, 

                      "Description": text_03 

                  } 

              }; 

              return json;

          })(current, message, attributes);

   {#config-push-notification-message-content__substeps_vdb_dxm_5pb}
5. **オプション:** カスタマイズされた通知タイトルを追加します。  
   カスタマイズされた通知タイトルを追加しない場合、通知にはデフォルトのモバイルアプリ名が表示されます。

   プッシュメッセージ生成スクリプトブロックで、`json` セクションに次のコード例を追加します。

       var json= {};
       var msg_title  = "System updates!";
       json= {
         "android_title" : msg_title,
         "aps": {
           "alert": {
             "title": msg_title,
           }
         }

   サンプル JSON コードの要素は次のとおりです。
   * `System updates!` というmsg_title変数は、iOSとAndroidの両方に適用される通知タイトル名です。
   * ノード`json["android_title"]` は Android の変数です。
   * ノード `json["aps"]["alert"]["title"]` は iOS の変数です。
   {#config-push-notification-message-content__ul_zpp_ztj_d1c}
6. 次のコードを追加して Android デバイスをアクティブにしてウェイクアップし、通知をトリガーできるようにします。  
   ユーザーは iOS デバイスと Android デバイスの両方を使用するため、このコードを追加する必要があります。コード内の JSON エントリは、スクリプティングから返された辞書名の値です。
   Android メッセージ配信を制御する特定のフィールドが sncGoogleKeys でサポートされています。詳細については、「 [Firebase Cloud Messaging HTTP プロトコル](https://firebase.google.com/docs/cloud-messaging/http-server-ref#downstream-http-messages-json)」を参照してください。  
   注:  
   デバイスがスリープモードの場合、Androidデバイスをウェイクアップするために、priorityパラメーターを `high` に設定します。このパラメーターは、重要なアラートをエンドユーザーに配信するのに役立ちます。

       json["sncGoogleKeys"] = {
           "priority": "high",
           "android": {
             "priority": "high"
           }
       }

7. \[更新\] を選択します。

## タスクの結果

ディープリンクを含むプッシュ通知メッセージのコンテンツレコードを作成しました。

## 次のタスク

プッシュ通知メッセージのコンテンツを構成した後、それをプッシュ通知メッセージレコードとペアリングする必要があります。プッシュ通知メッセージの構成の詳細については、「[プッシュ通知メッセージを構成する](https://servicenow-prod.fluidtopics.net/ugBmS_eXmCY3oo6cHLukPw "ユーザーがプッシュ通知を受信したときにユーザーに表示するメッセージを構成します。")」を参照してください。

