プッシュ通知のトリガー

パートナーがトリガーする通知

メッセージと通知を追加する

背景

ユーザーがパスを追加した後、パスに関連するメッセージを送信して、パスに関する通知を確実に受け取るようにすることができます。message_typeTEXT_AND_NOTIFY に等しい Add Message API リクエストを使用すると、次のことが発生します。

  1. [メッセージ] アイテムが [パスの裏面](詳細テンプレート)に追加され、パスが保存されているユーザーにプッシュ通知が送信されます。
  2. ユーザーが通知をタップすると、Google ウォレットが開き、パスの表面(カードビュー)が表示されます。画面上部には、[メッセージを表示] ボタンのあるコールアウトが表示されます。
  3. コールアウトをクリックすると、パスの裏面が表示され、未読の新しいメッセージがハイライト表示されます。

通知付きのメッセージをユーザーに送信する場合の考慮事項

  • メッセージに関連するプッシュ通知を受け取るには、ユーザーがパスの通知を有効にしている必要があります。
  • メッセージには、ウェブサイトまたはアプリの URI を含めることができます。ハイパーリンクは、パスに関連するウェブサイトまたはアプリである必要があります。パスに関連しないリンクにユーザーを誘導することは、利用規約違反となります。
  • 24 時間以内にプッシュ通知をトリガーするメッセージを送信できるのは最大 3 件です。ユーザーにスパムを送信していると判断された場合、Google はプッシュ通知配信の割り当てをスロットリングすることがあります。
  • ロック画面に表示されるプッシュ通知は、Google ウォレットによって制御されます。
  • UPDATE メソッドまたは PATCH メソッドを使用して、通常のクラスまたはオブジェクト エンドポイントを使用してメッセージデータを編集または削除できます。

統合の手順

AddMessage API を使用して追加された新しいカード発行会社のメッセージをユーザーに通知する場合は、AddMessageRequest を更新して、新しいテキストを含む MessageMessageTypeTEXT ではなく TEXT_AND_NOTIFY になるようにする必要があります。

パスクラスにメッセージを追加して通知する JSON リクエストの例

  
  "id": ISSUER_ID.CLASS_ID",
  "message":
    {
        "header":"My Class message header",
        "body": "My Class message body with a <a href="https://wallet.google">Hyperlink<\a>",
        "id": "message_id",
        "message_type": "TEXT_AND_NOTIFY"
    },
  

Passes オブジェクトにメッセージを追加して通知する JSON リクエストの例

  
  "id": OBJECT_ID",
  "classId": "ISSUER_ID.CLASS_ID",
  "message":
    {
        "header":"My Object message header",
        "body": "My Object message body with a <a href="http://play.google.com/store/apps/details?id=com.google.android.apps.maps">Hyperlink<\a>",
        "id": "message_id",
        "message_type": "TEXT_AND_NOTIFY"
    },
  

パスクラスのメッセージの追加と通知のレスポンスの例

  // The updated resource
      {
      "kind": "walletobjects#walletObjectMessage",
      "header": "My Object message header",
      "body": "My Object message body with a <a href="http://play.google.com/store/apps/details?id=com.google.android.apps.maps">Hyperlink<\a>",
      "id": "message_id",
      "messageType": "textAndNotify"
    },
  

例外処理

3 回を超えて通知を試みると、QuotaExceededException レスポンスが返されます。統合手順で説明したように、パスの追加の更新は「TEXT_AND_NOTIFY」ではなく「TEXT」を使用して設定できます。

フィールドを更新して通知する

背景

ユーザーがパスを追加した後、特定のフィールドを更新したときにプッシュ通知をトリガーすることもできます。通知はユーザーのロック画面に表示され、パスの更新があることを通知します。この通知は、UPDATE API メソッドと PATCH API メソッドを使用して下記で定義されている特定のサブセットのフィールドに対してのみトリガーされます。パスを更新する API 呼び出しが行われると、次の処理が行われます。

  1. プッシュ通知がトリガーされ、パスの更新を知らせる通知がユーザーのロック画面に表示されます。
  2. ユーザーが通知をタップすると、Google ウォレットが開き、パスの表面(カードビュー)が表示されます。画面上部には、[更新内容を確認] ボタンが表示されたコールアウトが表示されます。
  3. ボタンをクリックすると、更新によって変更されたフィールドが表示される画面が表示されます。

フィールド更新通知を送信する際の考慮事項

  • 更新に関するプッシュ通知を受け取るには、パスの通知を有効にする必要があります。
  • 24 時間以内にプッシュ通知をトリガーする更新を送信できるのは最大 3 回です。ユーザーにスパム送信していると判断された場合、Google はプッシュ通知配信の割り当てをスロットリングすることがあります。
  • ロック画面に表示されるプッシュ通知は、Google ウォレットによって制御されます。
  • notifyPreference フィールドは、このリクエストでのみ存在する一時的なフィールドです。今後通知をトリガーするリクエストを行う場合は、クラスまたはオブジェクトのリクエストでこのフィールドをリセットする必要があります。

統合の手順

これらの通知をトリガーするには、既存の UPDATE または PATCH 呼び出しを使用して notifyPreference を指定する必要があります。クラスまたはオブジェクトのフィールドを更新するときに、クラスまたはオブジェクトのリクエストに新しいフィールド notifyPreference を追加して通知をトリガーできます。

クラスの更新と通知を行う JSON リクエストの例

    …
    "dateTime":
        {
            "kind": "walletobjects#eventDateTime",
            "doorsOpen": "2024-09-23T19:20:50.00"
        },
    "multipleDevicesAndHoldersAllowedStatus": "multipleHolders",
    "notifyPreference": "notifyOnUpdate",
    …
  

notifyPreferencenotifyOnUpdate に設定すると、更新されたフィールドが現在サポートされている場合は通知がトリガーされます。

サポートされるフィールド

EventTicketClass
  • eventName
  • eventVenue.name
  • eventvenue.address
  • eventDateTime.doorsOpen
  • eventDateTime.start
EventTicketObject
  • eventSeat.seat
  • eventSeat.row
  • eventSeat.section
  • eventSeat.gate

Google ウォレットによってトリガーされる自動通知

今後の通知

Google ウォレットから、イベントの 3 時間前にユーザーに通知が送信されます。イベント時間は class.dateTime.start で定義されます。

この通知を受け取るには、通知を有効にする必要があります。これを確認するには、[設定] > [通知] の順に移動し、[パスに関する最新情報] がオンになっているかを確認します。

通知は通知エリアに表示されます。 ロック画面の通知を有効にした場合は、ロック画面にも表示されます。

通知は以下のような形式になっています。この形式は変更できません。

  class.eventName
  

通知をタップしてデバイスのロックを解除すると、Google ウォレット アプリにパスが表示されます。

複数のパスがある場合は、一番早く利用できるパスだけ表示されます。また、複数のイベント チケットをグループ化して追加している場合、グループ内の 1 つのパスのみが表示されます。このパスをタップして、左右にスワイプすると、グループ内の他のパスを表示できます。

通知は固定され、ユーザーが開いても自動的には閉じません。class.dateTime.start の 60 分後に自動的に閉じます。