-
Notifications
You must be signed in to change notification settings - Fork 2
Apple Exposure Notification framework configuration
pdehaye edited this page May 26, 2020
·
10 revisions
The Apple contact-tracing portal explains Apple's approach, and in particular its Apple Framework API.
All the configuration is done through ENExposureConfiguration, and in particular:
-
ENExposureConfiguration
.attenuationLevelValues
, -
ENExposureConfiguration
.daysSinceLastExposureLevelValues
, -
ENExposureConfiguration
.durationLevelValues
, -
ENExposureConfiguration
.transmissionRiskLevelValues
and -
ENExposureConfiguration
.metadata
.attenuationDurationThresholds
(bold below indicates these configuration parameters)
Results are returned via ENExposureDetectionSummary
and ENExposureInfo
.
totalRiskScore = transmissionRiskValue * durationRiskValue * daysSinceLastExposureRiskValue * attenuationRiskValue
Though the formula’s range can be up to 4096, the framework limits totalRiskScore to the upper limit of ENRiskScore
, which has a maxium value of 255.
- Transmission Risk: Transmission risk is intended to reflect the status of infection in the affected user and its effect on risk of transmission. The value is based on the affected user’s symptoms, when symptoms first appeared, level of diagnosis verification, or other determination from the app or a health authority.
- Duration: Cumulative duration of the exposure. The framework measures this value.
- Days: Days since the exposure incident. The framework measures this value.
- Attenuation: The attenuation (transmission power - RSSI) can vary during an exposure event. Attenuation values >0 are weighted by the duration at each risk level and averaged for the overall duration. The framework measures and calculates this value.
-
ENExposureConfiguration
-
ENExposureConfiguration
.attenuationLevelValues
-
ENExposureConfiguration
.daysSinceLastExposureLevelValues
-
ENExposureConfiguration
.durationLevelValues
-
ENExposureConfiguration
.transmissionRiskLevelValues
-
ENExposureConfiguration
.metadata
.attenuationDurationThresholds
(default value is[50, 70]
)
-
-
ENExposureInfo
-
ENExposureInfo
.attenuationDurations
An array of durations at certain radio signal attenuations (2 buckets, threshold 50dB) -
ENExposureInfo
.attenutationValue
The attenuation (transmission power - RSSI) can vary during an exposure event. Attenuation values >0 are weighted by the duration at each risk level and averaged for the overall duration. (this sentence is very confusing, and Google is much less precise on this) -
ENExposureInfo
.metadata
.attenuationDurations
An array that contains the duration, in seconds, at certain attenuations, using an aggregated maximum exposures of 30 minutes.
-
-
ENExposureDetectionSummary
-
ENExposureDetectionSummary
.attenuationDurations
(2 buckets, threshold 50dB) -
ENExposureDetectionSummary
.metadata
.attenuationDurations
(3 buckets, configurable via two parameters inmetadata
.attenuationDurationThresholds
)
-
In addition to this, we need to understand what is done with ENExposureDetectionSummary
and ENExposureInfo
results.