PersonalDataIO / CoronaRiskScoring

4 stars 2 forks source link

How is ExposureConfiguration set in SwissCovid ? #3

Open pdehaye opened 4 years ago

pdehaye commented 4 years ago

The CoronaRiskScoring project is trying to assess how different contact tracing apps are being parametrized. We are first focusing on apps using the Apple API (see its description on our wiki) as it will enable quickest comparison.

Project considered We are looking at SwissCovid.

What we need We need pointers to the places in the code where the following parameters are set:

Nice to have We would also like to understand what is done with ENExposureDetectionSummary and ENExposureInfo, after the risks are calculated.

Excellent to have This is only the beginning for us. We want the above so we can track how the parameters are being changed. It is likely actually that this is passed dynamically to the apps. If so, we need to know the process behind these changes, so we can ask the right people for this information.

If you have pointers in the right direction, they would be greatly appreciated.

pdehaye commented 4 years ago

It turns out SwissCovid doesn't use much of risk scoring part of the Google/Apple API actually, at least in the present configuration!

In a public call ahead of the trial phase, as well as in this document, DP-3T explains they only use the summary parts of the APIs, not the risk calculation parts.

For the same question, but approached from the app side(s), see:

pdehaye commented 4 years ago

The backend server provides the relevant parameters.

For instance:

https://www.pt.bfs.admin.ch/v1/config?appversion=&osversion=&buildnr=

https://github.com/DP-3T/dp3t-app-android-ch/blob/2d7a09a6934695df985049904e09c28b561cbe6b/app/src/main/java/ch/admin/bag/dp3t/networking/ConfigWorker.java#L90-L92

The appversion value comes from here.

pdehaye commented 4 years ago

It is still not clear to me what are the valid parameters to pass to the API above, on Android and iOS, for the different appversions, and especially each build.

On iOS, this seems related since it constructs the call.