Как я могу зарегистрировать устройство для регистрации в группе в концентраторе Azure IOT?

Я видел код для индивидуальной регистрации, но не могу найти код для регистрации в группе. Мне нужно массово зарегистрировать тысячу устройств в Azure IOT Hub, и я подумывал о регистрации в группах. Буду признателен за любой пример кода.

1 ответ

Это должно быть возможно как при групповой регистрации, так и при групповой индивидуальной регистрации. Из примеров, связанных с тем, как управлять регистрацией устройств с помощью SDK Azure Device Provisioning Service:

Массовая индивидуальная регистрация

public async Task<List<IndividualEnrollment>> CreateBulkIndividualEnrollmentsAsync()
{
    Console.WriteLine("\nCreating a new set of individualEnrollments...");

    List<IndividualEnrollment> individualEnrollments = new List<IndividualEnrollment>();

    foreach (var item in _registrationIds)
    {
        Attestation attestation = new TpmAttestation(item.Value);

        individualEnrollments.Add(new IndividualEnrollment(item.Key, attestation));
    }

    Console.WriteLine("\nRunning the bulk operation to create the individualEnrollments...");

    BulkEnrollmentOperationResult bulkEnrollmentOperationResult =

    await _provisioningServiceClient.RunBulkEnrollmentOperationAsync(BulkOperationMode.Create, individualEnrollments).ConfigureAwait(false);

    Console.WriteLine("\nResult of the Create bulk enrollment.");

    Console.WriteLine(bulkEnrollmentOperationResult);

    return individualEnrollments;
}

Создать группу регистрации

public async Task CreateEnrollmentGroupAsync()
{
    Console.WriteLine("\nCreating a new enrollmentGroup...");

    Attestation attestation = X509Attestation.CreateFromRootCertificates(_groupIssuerCertificate);

    EnrollmentGroup enrollmentGroup =
        new EnrollmentGroup(
            EnrollmentGroupId,
            attestation);

    Console.WriteLine(enrollmentGroup);

    Console.WriteLine("\nAdding new enrollmentGroup...");

    EnrollmentGroup enrollmentGroupResult =
        await _provisioningServiceClient.CreateOrUpdateEnrollmentGroupAsync(enrollmentGroup).ConfigureAwait(false);

    Console.WriteLine("\nEnrollmentGroup created with success.");

    Console.WriteLine(enrollmentGroupResult);
}

Обновить

Взгляните на образцы устройства. Вам не нужно указывать тип регистрации (индивидуальный / групповой) при регистрации устройства. корреляция с определенной регистрацией на портале выполняется с использованием сертификата, который устройство использует при регистрации.

Обновление 2

См. Раздел Быстрый запуск: управление устройством, подключенным к концентратору IoT (.NET), чтобы узнать, как установить связь с устройством, которое уже зарегистрировано в концентраторе IoT.

Надеюсь, поможет!

Другие вопросы по тегам