Pub/Sub-Benachrichtigungen einrichten

Pub/Sub-Benachrichtigungen bieten Ihnen die Möglichkeit, Benachrichtigungen über neu registrierte Geräte, Geräteberichte und kürzlich ausgeführte Befehle zu erhalten.

Wenn Sie Pub/Sub-Benachrichtigungen einrichten möchten, müssen Sie die Pub/Sub API aktivieren und ein Thema erstellen. Wenn Sie Nachrichten empfangen möchten, die zu einem Thema veröffentlicht werden, erstellen Sie ein Abo für dieses Thema. Durch das Abo wird das Thema mit einer Abonnentenanwendung verbunden, die Nachrichten empfängt und verarbeitet, die für das Thema veröffentlicht wurden. Nachdem Sie ein Abo erstellt haben, müssen Sie Android Device Policy die Berechtigung erteilen, in Ihrem Thema zu veröffentlichen.

1. Pub/Sub API für Ihr Projekt aktivieren

Eine Anleitung zum Aktivieren der Pub/Sub API finden Sie in der Kurzanleitung zur Konsole. Sie müssen das gleiche Projekt auswählen, für das die Android Management API aktiviert ist.

2. Thema erstellen

Nachdem Sie die API aktiviert haben, müssen Sie ein Thema erstellen, in dem Android Device Policy Benachrichtigungen veröffentlichen kann. Es gibt zwei Möglichkeiten, ein Thema zu erstellen:

a. Manuell in der Google Cloud Platform Console.
b. Über die Pub/Sub API (siehe Themenmethode erstellen)

Nachdem Sie ein Thema erstellt haben, notieren Sie sich den Namen des Themas.

3. Abo erstellen

Mit einem Abo werden alle eingehenden Nachrichten zu einem bestimmten Thema erfasst. Es gibt zwei Möglichkeiten, ein Abo zu erstellen:

a. Manuell in der Google Cloud Platform Console.
b. Über die Pub/Sub API (siehe Abomethode erstellen)

4. Android Device Policy die Berechtigung erteilen, in Ihrem Thema zu veröffentlichen

Sie müssen android-cloud-policy@system.gserviceaccount.com die Berechtigung zum Veröffentlichen in Ihrem Thema erteilen. Es gibt zwei Möglichkeiten, Veröffentlichungsrechte zu gewähren:

a. Manuell in der Google Cloud Platform Console.

  • Fügen Sie android-cloud-policy@system.gserviceaccount.com als Mitglied zu Ihrem Thema hinzu.
  • Klicken Sie auf Rolle auswählen > Pub/Sub > Pub/Sub-Publisher.

b. Pub/Sub API verwenden (siehe Zugriffssteuerung über die Google Cloud Pub/Sub IAM API)

  • Fügen Sie serviceAccount:android-cloud-policy@system.gserviceaccount.com zu members hinzu.
  • Setzen Sie role auf roles/pubsub.publisher.

5. Enterprise-Update für Benachrichtigungen ausführen

Rufen Sie enterprises.patch auf und geben Sie die folgenden Parameter an, um Benachrichtigungen zu einem Unternehmen mit dem von Ihnen erstellten Thema zu verbinden:

  • pubsubTopic: Der Name Ihres Pub/Sub-Themas im Format projects/{project}/topics/{topic}.
  • enabledNotificationTypes: Gib alle Benachrichtigungstypen an, die du erhalten möchtest. Sie haben die Wahl zwischen ENROLLMENT, STATUS_REPORT und COMMAND.

6. Pub/Sub API zum Abrufen von Benachrichtigungen verwenden

Für die Nachrichtenzustellung durch ein Abo kann entweder der Push- oder der Pull-Mechanismus verwendet werden. Richtlinien und Anleitungen zum Empfangen von Benachrichtigungen über diese beiden Mechanismen finden Sie im Pub/Sub-Abonnentenleitfaden.

Nachrichtenformat

Nachrichten haben die Form einer PubsubMessage. Das Feld attributes der Nachricht enthält ein Attribut mit dem Schlüssel notificationType und dem Wert, der auf den Benachrichtigungstyp festgelegt ist, der die Nachricht ausgelöst hat (z.B. ENROLLMENT). Das Feld data der Nachricht enthält die JSON-Darstellung der aktualisierten Ressource, codiert als UTF-8-String. Die Benachrichtigungen und die entsprechenden Ressourcentypen sehen so aus:

  • Für COMMAND-Benachrichtigungen wird der Ressourcentyp Vorgang verwendet.
  • USAGE_LOGS-Benachrichtigungen verwenden den Ressourcentyp UsageLogEvent.
  • Für ENROLLMENT- und STATUS_REPORT-Benachrichtigungen wird der Ressourcentyp Gerät verwendet.

Beim Festlegen von pubsubTopic in einem Enterprise-Konto wird eine erste Nachricht veröffentlicht, wobei notificationType auf test gesetzt ist. Mit dieser Nachricht wird geprüft, ob die Android Device Policy die Berechtigung zum Veröffentlichen für das Thema hat und ignoriert werden sollte.