Uruchamiaj powiadomienia push

Typy powiadomień

Dodaj wiadomość i powiadom

Wprowadzenie

Gdy użytkownik doda kartę, możesz wysłać mu wiadomość na temat karty i upewnić się, że zostanie o niej powiadomiony. Przy użyciu żądania Add Message API z message_type równym TEXT_AND_NOTIFY zachodzą te sytuacje:

  1. Element „Wiadomość” jest dodawany do „tylnej części karty” (inaczej szablonu szczegółów), a do użytkowników z zapisaną kartą jest wysyłane powiadomienie push.
  2. Po kliknięciu powiadomienia użytkownik otwiera Portfel Google z przodu karty (tzw. widok kart). U góry ekranu wyświetla się objaśnienie z przyciskiem „Wyświetl wiadomość”.
  3. Kliknięcie objaśnienia spowoduje przejście na tylną część karty, gdzie zostaną wyróżnione nowe nieprzeczytane wiadomości.

Kilka uwag na temat wysyłania do użytkowników wiadomości z powiadomieniami

  • Użytkownicy muszą mieć włączone powiadomienia dotyczące kart, aby otrzymywać powiadomienia push związane z wiadomościami.
  • Wiadomości mogą zawierać identyfikatory URI Twojej witryny lub aplikacji. Hiperlinki muszą odnosić się do witryny lub aplikacji powiązanej z kartą. Kierowanie użytkowników na linki niezwiązane z kartą stanowi naruszenie Zasad dopuszczalnego użytkowania.
  • W ciągu 24 godzin możesz wysłać maksymalnie 3 wiadomości wywołujące powiadomienie push. Google może ograniczyć Twój limit dostarczania powiadomień push, jeśli wykryje, że rozsyłasz spam.
  • Powiadomienia push, które użytkownicy widzą na ekranie blokady, są kontrolowane przez Portfel Google.
  • Aby edytować lub usuwać dane wiadomości za pomocą zwykłej klasy lub punktu końcowego obiektu, możesz użyć metody UPDATE lub PATCH.

Etapy integracji

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

Przykładowe żądanie JSON umożliwiające dodanie komunikatu i powiadomienia w klasie kart

  …
  "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ładowe żądanie JSON z możliwością dodania komunikatu i powiadomienia w obiekcie kart

  …
  "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ładowa odpowiedź dodająca wiadomość i powiadomienie dotyczące klasy karty

  // 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

Każda próba wysłania powiadomienia więcej niż 3 razy spowoduje uzyskanie odpowiedzi QuotaExceededException . Wszelkie dalsze aktualizacje biletu można ustawić za pomocą parametru „TEXT” zamiast „TEXT_AND_NOTIFY”, jak omówiono w integracji.