diff --git a/Chino.Android/ExposureInformation.cs b/Chino.Android/ExposureInformation.cs
index b3191d1..ddad97d 100644
--- a/Chino.Android/ExposureInformation.cs
+++ b/Chino.Android/ExposureInformation.cs
@@ -1,4 +1,5 @@
using System;
+using System.Linq;
using Newtonsoft.Json;
using AndroidExposureInformation = Android.Gms.Nearby.ExposureNotification.ExposureInformation;
@@ -16,7 +17,7 @@ public ExposureInformation(AndroidExposureInformation source)
Source = source;
}
- public int[] AttenuationDurationsInMinutes => Source.GetAttenuationDurationsInMinutes();
+ public int[] AttenuationDurationsInMillis => ConvertToMillis(Source.GetAttenuationDurationsInMinutes());
public int AttenuationValue => Source.AttenuationValue;
@@ -27,5 +28,8 @@ public ExposureInformation(AndroidExposureInformation source)
public int TotalRiskScore => Source.TotalRiskScore;
public RiskLevel TransmissionRiskLevel => (RiskLevel)Enum.ToObject(typeof(RiskLevel), Source.TransmissionRiskLevel);
+
+ private static int[] ConvertToMillis(int[] attenuationDurationsInMinutes)
+ => attenuationDurationsInMinutes.Select(d => d * 60 * 1000).ToArray();
}
}
diff --git a/Chino.Common/IExposureInformation.cs b/Chino.Common/IExposureInformation.cs
index 5446c6e..4de0047 100644
--- a/Chino.Common/IExposureInformation.cs
+++ b/Chino.Common/IExposureInformation.cs
@@ -11,9 +11,9 @@
public interface IExposureInformation
{
///
- /// Array of durations in minutes at certain radio signal attenuations.
+ /// Array of durations in milliseconds at certain radio signal attenuations.
///
- public int[] AttenuationDurationsInMinutes { get; }
+ public int[] AttenuationDurationsInMillis { get; }
///
/// The time-weighted signal strength attenuation value which goes into getTotalRiskScore().
diff --git a/Chino.iOS/ExposureInformation.cs b/Chino.iOS/ExposureInformation.cs
index 27368b0..a03a923 100644
--- a/Chino.iOS/ExposureInformation.cs
+++ b/Chino.iOS/ExposureInformation.cs
@@ -1,4 +1,5 @@
using System;
+using System.Linq;
using ExposureNotifications;
using Newtonsoft.Json;
@@ -15,7 +16,7 @@ public ExposureInformation(ENExposureInfo source)
Source = source;
}
- public int[] AttenuationDurationsInMinutes => Source.AttenuationDurations;
+ public int[] AttenuationDurationsInMillis => ConvertToMillis(Source.AttenuationDurations);
public int AttenuationValue => Source.AttenuationValue;
@@ -26,5 +27,8 @@ public ExposureInformation(ENExposureInfo source)
public int TotalRiskScore => Source.TotalRiskScore;
public RiskLevel TransmissionRiskLevel => (RiskLevel)Enum.ToObject(typeof(RiskLevel), Source.TransmissionRiskLevel);
+
+ private static int[] ConvertToMillis(int[] attenuationDurations)
+ => attenuationDurations.Select(d => d * 1000).ToArray();
}
}