private async Task InitializeDeviceClient(string connectionString) { _deviceClient = DeviceClient.CreateFromConnectionString(connectionString, TransportType.Http1); var iotHubConnectionStringBuilder = IotHubConnectionStringBuilder.Create(connectionString); DeviceClientPanel.Children.Add(new TextBlock() { Text = "Host: " + iotHubConnectionStringBuilder.HostName }); DeviceClientPanel.Children.Add(new TextBlock() { Text = "Device: " + iotHubConnectionStringBuilder.DeviceId }); Message receivedMessage; string messageData; while (true) { receivedMessage = await _deviceClient.ReceiveAsync(); if (receivedMessage != null) { messageData = Encoding.ASCII.GetString(receivedMessage.GetBytes()); var updateAccessKeyRequest = JsonConvert.DeserializeObject<UpdateAccessKeyRequest>(messageData); if (updateAccessKeyRequest != null) { DeviceClientPanel.Children.Add(new TextBlock() { Text = "Update Access Key received" }); UpdateConnectionString(updateAccessKeyRequest.AccessKey); await _deviceClient.CloseAsync(); _deviceClient = DeviceClient.CreateFromConnectionString(GetConnectionString(), TransportType.Http1); await _deviceClient.CompleteAsync(receivedMessage); } } } }
public async Task CloseAsync() { await deviceClient.CloseAsync(); }
public Task CloseAsync() { return(_deviceClient.CloseAsync()); }