Activar notificaciones push

Tipos de notificación

Agrega un mensaje y notifica

Segundo plano

Después de que un usuario agrega un pase, te recomendamos que le envíes un mensaje relacionado con él y te asegures de que reciba una notificación al respecto. Cuando se usa la solicitud de la API de Add Message con un message_type igual a TEXT_AND_NOTIFY, ocurre lo siguiente:

  1. Se agrega un elemento "Mensaje" a la "parte posterior del pase" (también conocida como plantilla de detalles) y se envía una notificación push a los usuarios con el pase guardado.
  2. Una vez que el usuario presiona la notificación, se abre la Billetera de Google en la parte frontal del pase (también conocida como vista de tarjeta) y el usuario verá un texto destacado en la parte superior de la pantalla con el botón "Ver mensaje".
  3. Si los usuarios hacen clic en el texto destacado, se los llevará a la parte posterior del pase, donde se destacan los mensajes nuevos sin leer.

Algunas consideraciones para enviar mensajes con notificaciones a los usuarios

  • Los usuarios deben tener habilitadas las notificaciones para que sus pases reciban las notificaciones push relacionadas con los mensajes.
  • Los mensajes pueden contener URIs a tu sitio web o app. Los hipervínculos deben ser un sitio web o una app relacionados con el pase. Enviar a los usuarios a vínculos que no estén relacionados con el pase es un incumplimiento de la Política de Uso Aceptable.
  • Puedes enviar un máximo de 3 mensajes que activen una notificación push en un período de 24 horas. Google puede reducir la cuota de entrega de notificaciones push si considera que estás enviando spam a los usuarios.
  • Google Wallet controla la notificación push que los usuarios ven en la pantalla de bloqueo.
  • Puedes usar los métodos UPDATE o PATCH para editar o quitar datos de mensajes con el extremo de clase o objeto normal.

Pasos para la integración

Cuando quieras notificar a los usuarios sobre un nuevo mensaje de entidad emisora que se agregó con la API de AddMessage, deberás actualizar AddMessageRequest para que el Message que contiene tu texto nuevo tenga el MessageType TEXT_AND_NOTIFY en lugar de TEXT.

Ejemplo de solicitud JSON para agregar un mensaje y notificar en una clase de pases

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

Ejemplo de solicitud JSON para agregar un mensaje y notificar en un objeto Pases

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

Ejemplo de respuesta para agregar un mensaje y notificar una clase de aprobación

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

Manejo de excepciones

Cualquier intento de notificar más de 3 veces generará una respuesta QuotaExceededException. Cualquier otra actualización del pase se puede configurar con "TEXT" en lugar de "TEXT_AND_NOTIFY", como se explica en los Pasos de integración.

Actualiza el campo y notifica

Segundo plano

Después de que un usuario agrega un pase, es posible que desees activar una notificación push cuando actualices ciertos campos. La notificación aparecerá en la pantalla de bloqueo del usuario y le informará que hay una actualización en su pase. Esta notificación solo se activará para un subconjunto específico de campos definidos más abajo con los métodos de la API UPDATE y PATCH. Una vez que se llama a la API para actualizar el pase, ocurre lo siguiente:

  1. Se activa una notificación push y se muestra en la pantalla de bloqueo del usuario para informarle sobre una actualización de pase.
  2. Una vez que el usuario presiona la notificación, se abre la Billetera de Google en la parte frontal del pase (también conocida como vista de tarjeta) y el usuario verá un texto destacado en la parte superior de la pantalla con el botón “Revisar actualización”.
  3. Si hace clic en el botón, el usuario llega a una pantalla en la que puede ver los campos que cambió la actualización.

Algunas consideraciones a la hora de enviar notificaciones de actualización de campo

  • Los usuarios deben tener habilitadas las notificaciones para que sus pases reciban las notificaciones push relacionadas con las actualizaciones.
  • Puedes enviar un máximo de 3 actualizaciones que activen una notificación push en un período de 24 horas. Google puede reducir la cuota de entrega de notificaciones push si considera que estás enviando spam a los usuarios.
  • La Billetera de Google controla las notificaciones push que los usuarios ven en la pantalla de bloqueo.
  • El campo notifyPreference es un campo transitorio que solo existe en esta solicitud. Para solicitudes futuras, cuando desees activar una notificación, deberás restablecer este campo en la solicitud de clase o objeto.

Pasos para la integración

Para activar estas notificaciones, deberás usar las llamadas UPDATE o PATCH existentes y especificar notifyPreference. Cuando actualizas un campo en una clase o un objeto, puedes agregar un campo nuevo, notifyPreference, a la solicitud de la clase o el objeto para activar la notificación.

Ejemplo de solicitud JSON para actualizar y notificar en una clase

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

Si estableces notifyPreference como notifyOnUpdate, se activará una notificación, siempre que se admita el campo actualizado.

Campos disponibles

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