Configura notificaciones de Pub/Sub

Las notificaciones de Pub/Sub te permiten recibir alertas sobre dispositivos inscritos recientemente, informes de dispositivos y comandos emitidos recientemente.

Para configurar las notificaciones de Pub/Sub, debes habilitar la API de Pub/Sub y crear un tema. Para recibir mensajes publicados en un tema, crea una suscripción a ese tema. La suscripción conecta el tema a una aplicación de suscriptor que recibe y procesa los mensajes publicados en el tema. Después de crear una suscripción, debes otorgar permiso a Android Device Policy para publicar en tu tema.

1. Cómo habilitar la API de Pub/Sub para tu proyecto

Si quieres obtener instrucciones para habilitar la API de Pub/Sub, consulta la guía de inicio rápido de la consola. Asegúrate de seleccionar el mismo proyecto para el que está habilitada la API de Android Management.

2. Cómo crear un tema

Después de habilitar la API, debes crear un tema en el que Android Device Policy pueda publicar notificaciones. Existen dos maneras de crear un tema:

a. De forma manual en Google Cloud Platform Console.
b. Mediante la API de Pub/Sub (consulta crear topicmethod).

Después de crear un tema, toma nota del nombre del tema.

3. Cree una suscripción

Una suscripción captura la transmisión de mensajes publicados a un tema específico. Existen dos maneras de crear una suscripción:

a. De forma manual en Google Cloud Platform Console.
b. Mediante la API de Pub/Sub (consulta cómo crear un método de suscripción).

4. Otorga a Android Device Policy el derecho de publicar en tu tema

Debes darle permiso a android-cloud-policy@system.gserviceaccount.com para publicar en tu tema. Existen dos maneras de otorgar derechos de publicación:

a. De forma manual en Google Cloud Platform Console

  • Agrega android-cloud-policy@system.gserviceaccount.com como miembro al tema.
  • Haz clic en Seleccionar un rol > Pub/Sub > Publicador de Pub/Sub.

b. Mediante la API de Pub/Sub (consulta Control de acceso a través de la API de IAM de Google Cloud Pub/Sub)

  • Se agregó serviceAccount:android-cloud-policy@system.gserviceaccount.com a members.
  • Establece role en roles/pubsub.publisher.

5. Actualiza la empresa para admitir notificaciones

Para conectar las notificaciones de una empresa con el tema que creaste, llama a enterprises.patch y especifica los siguientes parámetros:

  • pubsubTopic: Es el nombre de tu tema de Pub/Sub con el formato projects/{project}/topics/{topic}.
  • enabledNotificationTypes: Incluye todos los tipos de notificaciones que deseas recibir. Elige entre ENROLLMENT, STATUS_REPORT y COMMAND.

6. Usa la API de Pub/Sub para recibir notificaciones

Una suscripción puede usar el mecanismo de envío o extracción para la entrega de mensajes. Los lineamientos y las instrucciones para recibir notificaciones mediante estos dos mecanismos están disponibles en la Guía para suscriptores de Pub/Sub.

Formato del mensaje

Los mensajes tienen la forma de un PubsubMessage. El campo attributes del mensaje contiene un atributo con la clave notificationType y el valor establecidos para el tipo de notificación que activó el mensaje (p.ej., ENROLLMENT). El campo data del mensaje contiene la representación JSON del recurso que se actualizó, codificada como una string UTF-8. Las notificaciones y sus tipos de recursos correspondientes son los siguientes:

  • Las notificaciones COMMAND usan el tipo de recurso Operación.
  • Las notificaciones USAGE_LOGS usan el tipo de recurso UsageLogEvent.
  • Las notificaciones ENROLLMENT y STATUS_REPORT usan el tipo de recurso Device.

Cuando se configura la pubsubTopic en una empresa, se publicará un mensaje inicial con notificationType establecido en test. Este mensaje se envía para verificar que Android Device Policy tenga el permiso de publicación sobre el tema y debe ignorarse.