識別子

DeviceIdentifier はハードウェア ID をカプセル化して、製造されたデバイスを識別します。このドキュメントでは、ゼロタッチ登録 API で識別子を使用する方法について説明します。

DeviceIdentifier は、デバイスを一意に識別するために必要なハードウェアのメタデータまたは ID を組み合わせたものです。

組織では、ポータル経由でデバイスデータをアップロードするとき、または API を呼び出すときに、デバイス ID の値を含めます。DeviceIdentifier インスタンスは不変であるため、API を使用してフィールド値を変更することはできません。

必須項目

Android デバイス

ゼロタッチ登録では通常、IMEI(MEID)のセルラーモデム ID によってデバイスが識別されます。ただし、タブレットなど、セルラーモデムを使用しないデバイスをサポートするために、別のフィールド セットを使用してデバイスを識別することもできます。次の表に、デバイスタイプごとに必須項目を示します。

ID モバイル Wi-Fi のみ メモ
hardware_id このフィールドには IMEI 番号または MEID 番号を指定する必要があります。ゼロタッチ登録では、API 引数に渡す際に IMEI 値の形式を検証します。複数のセルラーモデムを備えたデバイスの場合は、デュアル SIM デバイスをご覧ください。
serialNumber デバイスのメーカーのシリアル番号。シリアル番号は大文字と小文字が区別され、Build.getSerial() から返される値と同じです。
model デバイスモデルの値は、Build.MODEL から返されるデバイスの組み込み値と一致する必要があります。各メーカーに指定できる値のリストについては、モデル名のリファレンスをご覧ください。
manufacturer Wi-Fi 専用デバイスでゼロタッチ登録を機能させるには、manufacturer フィールドの値が Build.MANUFACTURER から返されるデバイスの組み込み値と一致する必要があります。モバイル デバイスの場合、manufacturer フィールドは省略可能ですが、ユーザーがデバイスを識別しやすくなるように指定することをおすすめします。詳しくは、メーカー名のリファレンスをご覧ください。

デバイスにセルラーモデムが搭載されていない場合(タブレット、倉庫のインベントリ スキャナなど)は、[Wi-Fi のみ] フィールドを使用します。その他のすべてのデバイスでは、モバイル フィールドを使用します。

デュアル SIM デバイス

デュアル SIM デバイスには 2 つの個別のモデムが搭載されており、それぞれに IMEI 番号があります。数字が小さい方の IMEI 番号を使用すると、ゼロタッチ登録がより確実に機能するようになります。

ChromeOS デバイス

ChromeOS デバイスの場合、モバイル デバイスと Wi-Fi 専用デバイスで必要な識別子のセットは同じです。

ID メモ
serialNumber デバイスのメーカーのシリアル番号。
model デバイスモデルの値はデバイスの組み込み値と一致する必要があります。詳しくは、ChromeOS のモデル値のリストをご覧ください。
chromeOsAttestedDeviceId 証明済みのデバイス ID。詳しくは、対応する ChromeOS デバイスのリストをご覧ください。

デバイスについて言及する

デバイスの検索または登録には DeviceIdentifier を使用します。デバイスのタイプに対して指定された必須フィールドを含める必要があります。

次のスニペットは、partners.devices.findByIdentifier を呼び出して特定のデバイスを検索するために使用される IMEI 番号を示しています。

Java

// Create a DeviceIdentifier.
DeviceIdentifier deviceIdentifier = new DeviceIdentifier();
deviceIdentifier.setImei("123456789012347");

// Perform the search using the zero-touch enrollment API.
FindDevicesByDeviceIdentifierRequest body = new FindDevicesByDeviceIdentifierRequest();
body.setLimit(1L);
body.setDeviceIdentifier(deviceIdentifier);

FindDevicesByDeviceIdentifierResponse response = service
    .partners()
    .devices()
    .findByIdentifier(PARTNER_ID, body)
    .execute();

.NET

// Create a DeviceIdentifier.
var deviceIdentifier = new DeviceIdentifier
{
    Imei = "123456789012347"
};

// Perform the search using the zero-touch enrollment API.
var body = new FindDevicesByDeviceIdentifierRequest
{
    Limit = 1,
    DeviceIdentifier = deviceIdentifier
};
var response = service.Partners.Devices.FindByIdentifier(body, PartnerId).Execute();

Python

# Create a DeviceIdentifier.
device_identifier = {'imei':'123456789012347'}

# Perform the search using the zero-touch enrollment API.
response = service.partners().devices().findByIdentifier(
    partnerId=PARTNER_ID, body={'deviceIdentifier':device_identifier, \
    'limit':1}).execute()

次のスニペットは、Wi-Fi 専用デバイス ID を作成する方法を示しています。

Java

// Create a device identifier to find a Wi-Fi-only device.
DeviceIdentifier deviceIdentifier = new DeviceIdentifier();
deviceIdentifier.setManufacturer("Honeywell");
deviceIdentifier.setModel("VM1A");
deviceIdentifier.setSerialNumber("ABcd1235678");

.NET

// Create a device identifier to find a Wi-Fi-only device.
var deviceIdentifier = new DeviceIdentifier
{
    Manufacturer = "Honeywell",
    Model = "VM1A",
    SerialNumber = "ABcd1235678"
};

Python

# Create a device identifier to find a Wi-Fi-only device.
device_identifier = {'manufacturer':'Honeywell', \
    'model':'VM1A', 'serialNumber':'ABcd1235678'}

詳細