Acionar notificações push

Tipos de notificação

Adicionar mensagem e notificar

Contexto

Depois que um usuário adiciona um cartão, você pode enviar uma mensagem relacionada a ele e garantir que ele seja notificado. Ao usar a solicitação da API Add Message com um message_type igual a TEXT_AND_NOTIFY, o seguinte ocorre:

  1. Um item Mensagem é adicionado à "parte de trás do cartão" (também conhecida como Modelo de detalhes) e uma notificação push é enviada aos usuários com o cartão salvo.
  2. Quando o usuário toca na notificação, a Carteira do Google é aberta na parte frontal do cartão (também conhecida como visualização de cartão), e o usuário vê um ícone de destaque na parte de cima da tela com um botão "Ver mensagem".
  3. Ao clicar no destaque, os usuários vão acessar a parte de trás do cartão, onde as novas mensagens não lidas são destacadas.

Algumas considerações ao enviar mensagens com notificações aos usuários

  • Os usuários precisam ter as notificações ativadas para que os cartões recebam as notificações push relacionadas a mensagens.
  • As mensagens podem conter URIs para seu site ou app. Os hiperlinks precisam ser um site ou app relacionado ao cartão. É uma violação da Política de uso aceitável direcionar os usuários a links não relacionados ao cartão.
  • Você pode enviar no máximo três mensagens que acionam uma notificação push em um período de 24 horas. O Google pode limitar a cota de envio de notificações push se considerar que você está enviando spam para os usuários.
  • A notificação push que os usuários veem na tela de bloqueio é controlada pelo Google Wallet.
  • É possível usar os métodos UPDATE ou PATCH para editar ou remover dados de mensagens usando o endpoint de classe ou objeto regular.

Etapas de integração

Quando você quiser notificar os usuários sobre uma nova mensagem do emissor adicionada usando a API AddMessage, será necessário atualizar o AddMessageRequest para que a mensagem que contém o novo texto tenha o MessageType TEXT_AND_NOTIFY em vez de TEXT.

Exemplo de solicitação JSON para adicionar mensagem e notificar em uma classe de cartões

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

Exemplo de solicitação JSON para adicionar mensagem e notificar em um objeto de cartões

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

Exemplo de resposta para adicionar uma mensagem e notificar uma classe de cartão

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

Como processar exceções

Qualquer tentativa de notificar mais de três vezes vai gerar uma resposta QuotaExceededException . Outras atualizações do cartão podem ser definidas usando "TEXT" em vez de "TEXT_AND_NOTIFY", conforme discutido nas etapas de integração.