Uruchamiaj powiadomienia push

Typy powiadomień

Dodawanie wiadomości i powiadamianie

Tło

Gdy użytkownik doda kartę, możesz wysłać mu wiadomość związaną z tą kartą i poinformować go o tym. Gdy użyjesz żądania Add Message API z message_type równym TEXT_AND_NOTIFY, nastąpi:

  1. Do „rewersu karty” (czyli szablonu szczegółów) dodawany jest element „Wiadomość”, a użytkownikom z zapisaną kartą wysyłane jest powiadomienie push.
  2. Gdy użytkownik kliknie powiadomienie, otworzy się Google Wallet z kartą na pierwszym planie (czyli w widoku karty). Użytkownik zobaczy też w górnej części ekranu przycisk „Wyświetl wiadomość”.
  3. Po kliknięciu tego okienka użytkownicy przejdą do tyłu karty, gdzie nowe nieprzeczytane wiadomości są wyróżnione.

Wskazówki dotyczące wysyłania wiadomości z powiadomieniami do użytkowników

  • Aby otrzymywać powiadomienia push związane z wiadomościami, użytkownicy muszą włączyć powiadomienia dotyczące swoich kart.
  • Wiadomości mogą zawierać identyfikatory URI Twojej witryny lub aplikacji. Hiperlinki muszą prowadzić do witryny lub aplikacji powiązanej z kartą. Przekierowywanie użytkowników do linków niezwiązanych z kartą jest naruszeniem Zasad dopuszczalnego użytkowania.
  • W ciągu 24 godzin możesz wysłać maksymalnie 3 wiadomości, które wywołują powiadomienie push. Jeśli Google uzna, że wysyłasz spam do użytkowników, może ograniczyć Twoją miesięczną kwotę powiadomień push.
  • Powiadomienia push wyświetlane użytkownikom na ekranie blokady są kontrolowane przez Google Wallet.
  • Aby edytować lub usuwać dane wiadomości, możesz użyć metod UPDATE lub PATCH, korzystając z zwykłego punktu końcowego klasy lub obiektu.

Etapy integracji

Jeśli chcesz powiadomić użytkowników o nowej wiadomości od wystawcy dodanej za pomocą interfejsu API AddMessage, musisz zaktualizować żądanie AddMessageRequest, aby wiadomość zawierająca nowy tekst miała parametr MessageType o wartości TEXT_AND_NOTIFY zamiast TEXT.

Przykład żądania JSON służącego do dodawania wiadomości i powiadomień w klasie Passes

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

Przykład żądania JSON służącego do dodawania wiadomości i powiadomień w obiekcie Passes

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

Przykład odpowiedzi z dodatkowym komunikatem i powiadomieniem o klasie uprawnień

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

Obsługa wyjątków

W przypadku większej liczby prób wysłania powiadomienia odpowiedź będzie brzmieć QuotaExceededException . Wszelkie dalsze aktualizacje przepustki można ustawić, używając parametru „TEXT” zamiast „TEXT_AND_NOTIFY”, jak opisano w krokach integracji.

Zaktualizuj pole i wyślij powiadomienie

Tło

Gdy użytkownik doda kartę, możesz uruchomić powiadomienie push po zaktualizowaniu określonych pól. Powiadomienie pojawi się na ekranie blokady użytkownika i poinformuje go o aktualizacji karty. To powiadomienie zostanie wygenerowane tylko w przypadku określonego podzbioru pól zdefiniowanych poniżej za pomocą metod UPDATE i PATCH interfejsu API. Gdy wywołasz interfejs API, aby zaktualizować kartę, dzieje się to:

  1. Na ekranie blokady użytkownika wyświetla się powiadomienie push z informacją o aktualizacji dokumentu.
  2. Gdy użytkownik kliknie powiadomienie, otworzy Portfel Google, aby wyświetlić kartę (czyli widok karty). W górnej części ekranu zobaczy przycisk „Sprawdź aktualizację”.
  3. Po kliknięciu przycisku użytkownik zobaczy ekran z polami, które zostały zmienione przez aktualizację.

Wskazówki dotyczące wysyłania powiadomień o aktualizacjach pól

  • Aby otrzymywać powiadomienia push dotyczące aktualizacji, użytkownicy muszą włączyć powiadomienia dotyczące swoich kart.
  • W ciągu 24 godzin możesz wysłać maksymalnie 3 aktualizacje, które wywołują powiadomienie push. Jeśli Google uzna, że wysyłasz spam do użytkowników, może ograniczyć Twoją miesięczną kwotę powiadomień push.
  • Powiadomienia push wyświetlane użytkownikom na ekranie blokady są kontrolowane przez Portfel Google.
  • Pole notifyPreference to pole przejściowe, które istnieje tylko w ramach tego żądania. W przyszłości, gdy chcesz wywołać powiadomienie, musisz zresetować to pole w prośbie o klasę lub obiekt.

Etapy integracji

Aby wywołać te powiadomienia, musisz użyć istniejących wywołań UPDATE lub PATCH i określić preferencje powiadomienia (notifyPreference). Podczas aktualizowania pola w klasie lub obiekcie możesz dodać do żądania klasy lub obiektu nowe pole notifyPreference, aby wywołać powiadomienie.

Przykład żądania JSON służącego do aktualizowania i powiadamiania w zajęciach

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

Ustawienie wartości notifyPreference na notifyOnUpdate spowoduje wyświetlenie powiadomienia, o ile tylko zaktualizowane pole jest obecnie obsługiwane.

Obsługiwane pola

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