Identificadores

Un DeviceIdentifier encapsula los IDs de hardware para identificar un dispositivo fabricado. En este documento, se explica cómo trabajar con identificadores en la API de inscripción automática.

Un DeviceIdentifier combina los metadatos o IDs de hardware necesarios para identificar un dispositivo de forma única.

Tu organización incluye los valores del identificador de dispositivo cuando subes datos del dispositivo a través del portal o cuando llamas a la API. Debido a que las instancias de DeviceIdentifier son inmutables, no puedes usar la API para cambiar los valores del campo.

Campos obligatorios

Dispositivos Android

La inscripción automática suele identificar los dispositivos mediante los IDs del módem celular (o IMEI, MEID). Sin embargo, para admitir dispositivos sin módems celulares, como las tablets, también puedes identificar dispositivos con un conjunto de campos diferente. En la siguiente tabla, se muestran los campos obligatorios para cada tipo de dispositivo:

Identificador Red móvil Solo Wi-Fi Notas
hardware_id Este campo debe ser un número IMEI o MEID. La inscripción automática valida el formato de los valores de IMEI cuando los pasas en los argumentos de la API. Para dispositivos con más de un módem celular, consulta Dispositivos con SIM doble.
serialNumber Es el número de serie del fabricante del dispositivo. El número de serie distingue mayúsculas de minúsculas y es el mismo valor que se muestra en Build.getSerial().
model El valor del modelo de dispositivo debe coincidir con el valor integrado del dispositivo que muestra Build.MODEL. Consulta la referencia de nombres de modelos para obtener una lista de valores permitidos por cada fabricante.
manufacturer Para que la inscripción automática funcione en un dispositivo que solo Wi-Fi, el valor del campo manufacturer debe coincidir con el valor integrado del dispositivo que muestra Build.MANUFACTURER. Para los dispositivos móviles, el campo manufacturer es opcional, pero recomendado, ya que facilita que los clientes identifiquen sus dispositivos. Consulta la referencia de nombres de fabricante para obtener más información.

Si el dispositivo no incluye un módem celular (por ejemplo, una tablet o un escáner de inventario de almacén), usa los campos de solo Wi-Fi. Para el resto de los dispositivos, usa los campos móviles.

Dispositivos con doble tarjeta SIM

Un dispositivo doble SIM incluye dos módems discretos y tiene dos números IMEI. Usa el número IMEI numérica más bajo, ya que la inscripción automática funciona de manera más confiable con el IMEI más bajo.

Dispositivos ChromeOS

En el caso de los dispositivos ChromeOS, el conjunto de identificadores obligatorios es el mismo para los dispositivos móviles y que solo usan Wi-Fi:

Identificador Notas
serialNumber Es el número de serie del fabricante del dispositivo.
model El valor del modelo del dispositivo debe coincidir con el valor integrado del dispositivo. Consulta la lista de valores de modelos de ChromeOS como referencia.
chromeOsAttestedDeviceId El ID del dispositivo presentado Consulta la lista de dispositivos ChromeOS compatibles como referencia.

Cómo hacer referencia a un dispositivo

Usa un DeviceIdentifier para encontrar o reclamar dispositivos. Debes incluir los campos obligatorios especificados para el tipo de dispositivo.

En el siguiente fragmento, se muestra un número IMEI que se usa para buscar un dispositivo específico llamando a partners.devices.findByIdentifier:

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()

En el siguiente fragmento, se muestra cómo crear un identificador de dispositivo que solo Wi-Fi:

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'}

Más información