Exemple #1
0
        public async Task <IActionResult> ProvisionDevices([FromBody] DeviceProvisioningRequest request)
        {
            if (await deviceBusiness.ProvisionDevices(request) == request.DeviceCount)
            {
                return(Ok());
            }

            return(Accepted());
        }
Exemple #2
0
        public async Task <int> ProvisionDevices(DeviceProvisioningRequest request)
        {
            int deviceInitilise = 0;
            var escapeName      = request.EntityName
                                  .Replace(" ", "")
                                  .Replace("-", "");

            (string pk, string sk) = await iotEdgeProvisioningBusiness.CreateEnrollementGroup(escapeName);

            var devices = await deviceRepository.GetAvailableDevices(request.DeviceCount);

            foreach (var device in devices)
            {
                if (await iotEdgeProvisioningBusiness.SetupDevice(device.DeviceId, pk, sk, escapeName))
                {
                    deviceInitilise += 1;
                    device.EntityId  = request.EntityId;
                    await deviceRepository.UpdateDevice(device);
                }
            }

            return(deviceInitilise);
        }