Kích hoạt thông báo đẩy

Loại thông báo

Thêm thông báo và thông báo

Thông tin khái quát

Sau khi người dùng thêm thẻ/vé, bạn có thể gửi cho họ một thông báo liên quan đến thẻ/vé đó và đảm bảo họ nhận được thông báo. Khi sử dụng yêu cầu Thêm API thông báo với message_type bằng TEXT_AND_NOTIFY, những điều sau sẽ xảy ra:

  1. Mục "Thông báo" được thêm vào "mặt sau của thẻ và vé" (còn gọi là Mẫu chi tiết) và thông báo đẩy sẽ được gửi đến người dùng đã lưu thẻ và vé.
  2. Sau khi người dùng nhấn vào thông báo, Google Wallet sẽ mở ra ở đầu thẻ và người dùng sẽ thấy một chú thích ở đầu màn hình có nút "Xem tin nhắn".
  3. Khi nhấp vào chú thích, người dùng sẽ được đưa đến mặt sau của thẻ và các tin nhắn mới chưa đọc sẽ được làm nổi bật.

Một số điều cần cân nhắc khi gửi tin nhắn có thông báo cho người dùng

  • Người dùng phải bật thông báo cho thẻ và vé của họ để nhận thông báo đẩy liên quan đến thông báo.
  • Thông báo có thể chứa URI đến trang web hoặc ứng dụng của bạn. Siêu liên kết phải là một trang web hoặc ứng dụng liên quan đến thẻ và vé. Việc đưa người dùng đến các đường liên kết không liên quan đến thẻ và vé là hành vi vi phạm Chính sách sử dụng được chấp nhận.
  • Bạn có thể gửi tối đa 3 thông báo kích hoạt thông báo đẩy trong khoảng thời gian 24 giờ. Google có thể điều tiết hạn mức phân phối thông báo đẩy nếu Google cho rằng bạn đang gửi nội dung rác cho người dùng.
  • Thông báo đẩy mà người dùng thấy trên màn hình khoá do Google Wallet kiểm soát.
  • Bạn có thể sử dụng các phương thức UPDATE hoặc PATCH để chỉnh sửa hoặc xoá dữ liệu thông báo bằng cách sử dụng điểm cuối lớp hoặc đối tượng thông thường.

Các bước tích hợp

Khi muốn thông báo cho người dùng về thông báo mới của người phát hành được thêm bằng API AddMessage, bạn cần cập nhật AddMessageRequest để Message chứa văn bản mới có MessageType TEXT_AND_NOTIFY thay vì TEXT.

Ví dụ về Yêu cầu JSON để thêm thông báo và thông báo trong Lớp thẻ và vé

  …
  "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"
    },
  …

Ví dụ về Yêu cầu JSON để thêm thông báo trong Đối tượng thẻ và vé

  …
  "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"
    },
  …

Ví dụ về Phản hồi để thêm thông báo và thông báo cho một Lớp vé

  // 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"
    },
  …

Xử lý ngoại lệ

Nếu bạn cố gắng thông báo nhiều hơn 3 lần, hệ thống sẽ trả về phản hồi QuotaExceededException . Bạn có thể đặt mọi nội dung cập nhật khác cho thẻ và thẻ này bằng cách sử dụng "TEXT" thay vì "TEXT_AND_NOTIFY" như đã thảo luận trong Các bước tích hợp.

Cập nhật trường và thông báo

Thông tin khái quát

Sau khi người dùng thêm thẻ và vé, bạn có thể kích hoạt thông báo đẩy khi cập nhật một số trường nhất định. Thông báo sẽ xuất hiện trên màn hình khoá của người dùng và thông báo cho họ rằng có nội dung cập nhật về thẻ và vé của họ. Thông báo này sẽ chỉ kích hoạt cho một nhóm nhỏ các trường cụ thể được xác định dưới đây bằng cách sử dụng các phương thức API UPDATE và PATCH. Sau khi lệnh gọi API để cập nhật thẻ và vé được thực hiện, những điều sau sẽ xảy ra:

  1. Một thông báo đẩy sẽ được kích hoạt và hiển thị trên màn hình khoá của người dùng, thông báo cho họ về nội dung cập nhật thẻ và vé.
  2. Sau khi người dùng nhấn vào thông báo, Google Wallet sẽ mở ra ở đầu thẻ và người dùng sẽ thấy một chú thích ở đầu màn hình có nút "Xem lại nội dung cập nhật".
  3. Khi nhấp vào nút này, người dùng sẽ được đưa đến một màn hình nơi họ có thể xem các trường đã thay đổi do nội dung cập nhật.

Một số điều cần cân nhắc khi gửi thông báo cập nhật trường

  • Người dùng phải bật thông báo cho thẻ và vé của họ để nhận thông báo đẩy liên quan đến nội dung cập nhật.
  • Bạn có thể gửi tối đa 3 nội dung cập nhật kích hoạt thông báo đẩy trong khoảng thời gian 24 giờ. Google có thể điều tiết hạn mức phân phối thông báo đẩy nếu cho rằng bạn đang gửi nội dung rác cho người dùng.
  • Thông báo đẩy mà người dùng thấy trên màn hình khoá do Google Wallet kiểm soát.
  • Trường notifyPreference là một trường tạm thời chỉ tồn tại trên yêu cầu này. Đối với các yêu cầu trong tương lai khi bạn muốn kích hoạt thông báo, bạn sẽ phải đặt lại trường này trên yêu cầu lớp hoặc đối tượng.

Các bước tích hợp

Để kích hoạt các thông báo này, bạn cần sử dụng các lệnh gọi UPDATE hoặc PATCH hiện có và chỉ định notifyPreference. Khi cập nhật một trường trên một lớp hoặc đối tượng, bạn có thể thêm một trường mới (notifyPreference) vào yêu cầu lớp hoặc đối tượng để kích hoạt thông báo.

Ví dụ về Yêu cầu JSON để cập nhật và thông báo trong một Lớp

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

Việc đặt notifyPreference thành notifyOnUpdate sẽ kích hoạt một thông báo, miễn là trường đã cập nhật hiện được hỗ trợ.

Các trường được hỗ trợ

LoyaltyClass
  • rewardsTier
  • secondaryRewardsTier
  • programName
LoyaltyObject
  • loyaltyPoints.balance
  • secondaryLoyaltyPoints.balance