Pub/Sub 通知を使用すると、新規登録されたデバイス、デバイス レポート、最近発行されたコマンドに関するアラートを受け取ることができます。
Pub/Sub 通知を設定するには、Pub/Sub API を有効にして、トピックを作成する必要があります。トピックに公開されたメッセージを受信するには、そのトピックへのサブスクリプションを作成します。サブスクリプションは、トピックに公開されたメッセージを受信して処理するサブスクライバー アプリケーションにトピックを接続します。サブスクリプションを作成したら、トピックに公開する権限を Android Device Policy に付与する必要があります。
1. プロジェクトで Pub/Sub API を有効にする
Pub/Sub API を有効にする方法については、コンソール クイックスタート ガイドをご覧ください。必ず、Android Management API が有効になっているプロジェクトと同じプロジェクトを選択します。
2. トピックを作成する
API を有効にしたら、Android Device Policy が通知を公開できるトピックを作成する必要があります。トピックを作成するには 2 つの方法があります。
a. Google Cloud コンソールで手動。
b.Pub/Sub API を使用する(トピックの作成メソッドをご覧ください)。
トピックを作成したら、トピック名をメモします。
3. サブスクリプションを作成する
サブスクリプションは、特定のトピックに公開された一連のメッセージをキャプチャします。定期購入を作成するには、次の 2 つの方法があります。
a. Google Cloud コンソールで手動。
b.Pub/Sub API を使用する(create subscription method をご覧ください)。
4. Android Device Policy にトピックに公開する権限を付与する
トピックに公開する権限を android-cloud-policy@system.gserviceaccount.com に付与する必要があります。出版権を付与する方法は 2 つあります。
a. Google Cloud コンソールで手動で作成する。
- android-cloud-policy@system.gserviceaccount.com をメンバーとしてトピックに追加します。
- [ロールを選択] > [Pub/Sub] > [Pub/Sub パブリッシャー] をクリックします。
b. Pub/Sub API の使用(IAM API によるアクセスの制御を参照)
serviceAccount:android-cloud-policy@system.gserviceaccount.com
をmembers
に追加します。role
をroles/pubsub.publisher
に設定します。
5. 通知をサポートするように Enterprise を更新する
作成したトピックに企業に関する通知を接続するには、enterprises.patch
を呼び出して次のパラメータを指定します。
pubsubTopic
: Pub/Sub トピックの名前(projects/{project}/topics/{topic}
形式)。enabledNotificationTypes
: 受信するすべての通知タイプを含めます。ENROLLMENT
、STATUS_REPORT
、COMMAND
から選択します。
6. Pub/Sub API を使用して通知を受け取る
サブスクリプションでは、メッセージ配信に push メカニズムと pull メカニズムのいずれかを使用できます。この両方のメカニズムで通知を受け取る方法については、Pub/Sub サブスクライバー ガイドをご覧ください。
メッセージの形式
メッセージは PubsubMessage の形式を取ります。メッセージの attributes
フィールドには、キー notificationType
とメッセージをトリガーした通知タイプに設定された値(ENROLLMENT
など)を持つ属性が含まれます。メッセージの data
フィールドには、更新されたリソースの JSON 表現が UTF-8 文字列としてエンコードされて含まれています。通知とそれに対応するリソースタイプは次のとおりです。
COMMAND
通知は、リソースタイプ Operation を使用します。USAGE_LOGS
通知は、リソースタイプ UsageLogEvent を使用します。ENROLLMENT
通知とSTATUS_REPORT
通知は、リソースタイプ Device を使用します。
Enterprise で pubsubTopic
を設定すると、notificationType
が test
に設定された最初のメッセージが公開されます。このメッセージは、トピックに対する公開権限が Android Device Policy にあることを確認するために送信されます。このメッセージは無視されます。
予想されるレイテンシ
連続して発生するローカル デバイス イベントはバッチ処理され、1 つの Pub/Sub メッセージで EMM に報告されます。
イベントタイプ | デバイス上のイベントと対応する EMM 通知の間で予想されるレイテンシ1 |
---|---|
優先度の高いキーアプリの状態 | 即時、毎分最大 1 つのレポート |
標準の優先度のキーアプリの状態 | 1 分以内 |
プロビジョニング中のアプリケーション関連のイベント(IT 管理者によってインストール状態が定義されているアプリの場合)2 | 他の関連するプロビジョニング イベントに加えて 1 分以内 |
IT 管理者によってインストール状態が定義されているアプリの場合、プロビジョニング後のアプリケーション関連のイベント。 | 5 分以内 |
従業員がインストール状態を定義したアプリの場合、プロビジョニング中およびプロビジョニング後のアプリケーション関連のイベント3 | 60 分以内 |
デバイス上のその他のアプリイベント | 60 分以内 |
-
制御された状況に基づくベストエフォート目標。実際のレイテンシは、さまざまなデバイスや環境要因によって変わる場合があります。 ↩
-
ポリシーに適用されるアプリの
InstallType
:FORCE_INSTALLED
、BLOCKED
、REQUIRED_FOR_SETUP
、PREINSTALLED
、KIOSK
。↩ -
利用可能なアプリの
InstallType
:AVAILABLE
、INSTALL_TYPE_UNSPECIFIED
。↩