private Task <string> GetReportHandlerAsync(string jsonParam) { Debug.WriteLine("DeviceHealthAttestationHandler.GetReportHandlerAsync"); var response = new { response = "succeeded", reason = "" }; try { var param = JsonConvert.DeserializeObject <DeviceHealthAttestationDataContract.GetReportMethodParam>(jsonParam); var request = new Message.DeviceHealthAttestationGetReportRequest(); request.Nonce = param.Nonce; // Submit the work and return immediately. GetReportHandlerAsync(request).FireAndForget(); } catch (Exception e) { response = new { response = "rejected:", reason = e.Message }; } return(Task.FromResult(JsonConvert.SerializeObject(response))); }
private async Task GetReportHandlerAsync(Message.DeviceHealthAttestationGetReportRequest request) { try { var response = await _systemConfiguratorProxy.SendCommandAsync(request) as Message.DeviceHealthAttestationGetReportResponse; var report = new DeviceHealthAttestationDataContract.HealthReport() { CorrelationId = response.CorrelationId, HealthCertificate = response.HealthCertificate }; var json = JsonConvert.SerializeObject(report); var properties = new Dictionary <string, string>(); properties.Add("MessageType", DeviceHealthAttestationDataContract.HealthReportTag); await _callback.SendMessageAsync(json, properties); await ReportStatus("Reported"); } catch (Exception e) { Debug.WriteLine($"Get report failed with exception: {e}"); await ReportStatus($"Get report failed with exception: {e.Message}"); } }