Azure 如何在设备供应服务注册列表中映射IoTHub?-注册状态“;“未分配”;

Azure 如何在设备供应服务注册列表中映射IoTHub?-注册状态“;“未分配”;,azure,azure-iot-hub,Azure,Azure Iot Hub,我有一个名为“myDPS”的Azure设备资源调配服务设置,IoT集线器以下链接 IoTHub开发亚洲 IoTHub产品欧洲 目前没有注册列表。下面是我用来注册设备的c代码 private const string RegistrationId = "TestRegID"; private const string OptionalDeviceId = "Device1"; private const ProvisioningStatus Optional

我有一个名为“myDPS”的Azure设备资源调配服务设置,IoT集线器以下链接

  • IoTHub开发亚洲
  • IoTHub产品欧洲
  • 目前没有注册列表。下面是我用来注册设备的c代码

    private const string RegistrationId = "TestRegID";
    private const string OptionalDeviceId = "Device1";
    private const ProvisioningStatus OptionalProvisioningStatus = ProvisioningStatus.Enabled;
    private const string SampleTpmEndorsementKey = "***"// Key generated using TPM Simulator
    
    static async Task SetRegistrationDataAsync()
    {
       Console.WriteLine("Starting SetRegistrationData");
       Attestation attestation = new TpmAttestation(SampleTpmEndorsementKey);
       IndividualEnrollment individualEnrollment = new 
       IndividualEnrollment(RegistrationId, attestation);
       individualEnrollment.DeviceId = OptionalDeviceId;
       individualEnrollment.ProvisioningStatus = OptionalProvisioningStatus;
       Console.WriteLine("\nAdding new individualEnrollment...");
       var serviceClient = ProvisioningServiceClient.CreateFromConnectionString(ServiceConnectionString);
       IndividualEnrollment individualEnrollmentResult =
        await  serviceClient.CreateOrUpdateIndividualEnrollmentAsync(individualEnrollment).ConfigureAwait(false);
        Console.WriteLine("\nIndividualEnrollment created with success.");
        Console.WriteLine(individualEnrollmentResult);
    }
    
    上述代码成功将设备注册到DPS,但状态显示为unassigned

    问题#1-注册状态未分配,有时显示失败 状态:失败 错误代码:404201

    第2期 一旦上述问题得到解决,我希望有一些配置,我可以指定哪个设备应该映射到哪个物联网,这样设备就可以自动决定它的目标物联网集线器

    示例

    设备1->IoTHub开发亚洲

    设备2->IoTHub开发亚洲

    设备3->IoTHub开发欧洲

    我假设通过注册列表进行的静态配置可以有所帮助,但不确定如何使用它


    三种受支持的分配策略决定了如何将设备分配给物联网集线器:

  • 最低延迟:根据对设备具有最低延迟的集线器,将设备配置到IoT集线器
  • 平均加权分布(默认值):链接的物联网集线器同样可能配置了设备。这是默认设置。如果您只将设备配置到一个物联网集线器,则可以保留此设置
  • 通过注册列表进行静态配置:注册列表中所需物联网集线器的指定优先于DPS级别的分配策略
  • 如果需要分配设备,应使用对
    ProvisioningDeviceClient.RegisterAsync()的单个调用
    API。您可以参考。在示例中,您需要将注册ID替换为以前创建的注册ID。

    问题#2的任何解决方案?@codetoshare,对于问题#2,您可以在DPS中管理链接的物联网集线器,然后将注册组或个人注册分配给受管链接的物联网集线器。你可以参考以获得一些信息。