corona-warn-app / cwa-wishlist

Central repository to collect community feature requests and improvements. The CWA development ends on May 31, 2023. You still can warn other users until April 30, 2023. More information:
https://coronawarn.app/en/faq/#ramp_down
Apache License 2.0
105 stars 14 forks source link

Allow manual code entry to register COVID test (without QR scan) #227

Open wpbdry opened 3 years ago

wpbdry commented 3 years ago

Avoid duplicates

Current Implementation

The camera on my phone doesn't work. When I have done a test and I want to register it in the app, I click on "Document with QR code", accept the declaration of consent, and then the app crashes.

Suggested Enhancement

Allow me to manually enter the alphanumeric code printed below the QR code on my COVID test slip. Either have this option before invoking the camera or catch the camera error and then display the option.

Expected Benefits


Internal Tracking ID: EXPOSUREAPP-3415 Internal Tracking ID: EXPOSUREAPP-5095

daimpi commented 3 years ago

Allow me to manually enter the alphanumeric code printed below the QR code on my COVID test slip.

Good idea 👍

Just a small info regarding

[…] meaning I can never add the test in my main phone, meaning if I am positive the people I have been in contact with will not be notified.

In such a case where your result comes back positive you should call the Tele-Tan hotline and get a tan to enter in your own phone, such that your contacts can actually be warned.

dsarkar commented 3 years ago

Hi @wpbdry,

Thank you for your proposal. All issues in the cwa-wishlist repository will be discussed with our contracting entities. They will decide whether they will be implemented or pursued further. As soon as we have any updates, we will let you know about the details. Best regards, DS

Corona-Warn-App Open Source Team

ndegendogo commented 3 years ago

I can only support this feature request. And it should cover all QR use cases: get the lab result, as well as uploading DEK keys. After all, the scanning gives no security by itself (or am I wrong here?), scanning is only convenience. The "encoded value" should be printed in human-readable format besides the QR code in any case.

This feature will result in better coverage of the lab use case in case of technical problems like: bad quality of QR code, or bad / broke camera

AnthyG commented 3 years ago

I mean I don't really understand how this hasn't been thought of before, and I can't imagine that implementing this would be that hard considering it's literally just a text input that needs the GUID-format to validate the input, and the rest of the logic is already implemented by the QR-Code system.
If I had the energy and motivation to learn Kotlin (?) just enough to implement this very basic feature, I'd sure do it myself.. :D
(maybe I'll do, if setting the dev environment up turns out to be easy (I've tried myself with Android Studio a few years ago, but not Kotlin), and this issue hasn't seen any progress for a few days)

AnthyG commented 3 years ago

So I just tried stuff again with the qr code I got, and if Google Lens actually tells the truth, then the content of the QR-Code is just in the format GUID=[GUID], where [GUID] is the actual GUID. However, according to corona-warn-app/cwa-app-android#1514, the content should rather be a URL (?). I've also read somewhere, that the app just accepts any QR-Code, no matter if it's valid to the system. But that doesn't seem to be true either, because my original QR-Code just did not work at all.

Creating a QR-Code with the format https://localhost/?[GUID] and then scanning that, worked. Ofc, considering the sentence before the last one, I now have no idea, if it'll actually show my result, .. ETA is tomorrow. If it works, I'll let the doctor's office know, as they said, they had a person before me, who couldn't scan the QR-Code either.

Then again, this would not help anyone who doesn't have a functioning camera on their phone. So I'll now try myself on adding the text input, ... given if I can set up the development environment..

ndegendogo commented 3 years ago

What is the status of this feature request? Is it being considered? Is it on the roadmap? If not: was there a decision, and what are the reasons that this is not wanted? Or was there simply no prio to discuss it?

This comment suggests to use QR generating tools to work around wrongly formatted QR codes; but, to be honest, this is only for tech-savvy people, and not for the average user of cwa.

dsarkar commented 3 years ago

Hi @ndegendogo, we will contact the developers regarding this wishlist item, and put it in the context of the extra slash issue https://github.com/corona-warn-app/cwa-app-android/issues/1551#issuecomment-735372948.

References: Extra slash issue: EXPOSUREAPP-3546

Best wishes, DS


Corona-Warn-App Open Source Team

ndegendogo commented 3 years ago

Thanks @dsarkar

mrlnc commented 3 years ago

Another use-case to consider: some labs send QR codes via e-mail; you can't scan the code if your only device is a smartphone.

224 universal URLs could help: users click on the https://coronawarn.app/<guid> link if they cannot scan the QR code.

ndegendogo commented 3 years ago

some labs send QR codes via e-mail

@mrlnc ... and hopefully these QR codes are compatible with the cwa system. Several systems are out in the wild, and cwa is only one of them. (And for the user all this is intransparent and confusing).

dsarkar commented 3 years ago

EXPOSUREAPP-5095

ndegendogo commented 3 years ago

@dsarkar is there any decision on this feature request? Will it be implemented?

Today exactly this happened to me. I got my code via email. It was as an image (png, remote content; which I have blocked in email), and as a link to this image. Still I needed a second device or laptop or similar, before I could scan it.

So I have now an additional wish: I want not only to type the code manually with my keyboard, but also copy-and-paste should work.

vaubaehn commented 3 years ago

Here we have another concrete use case, where an alternative option to import/enter a test probably would have prevented for one user to turn his back on CWA and go for FOSS CCTG: https://github.com/corona-warn-app/cwa-app-android/issues/75#issuecomment-810922200

dsarkar commented 3 years ago

@vaubaehn @ndegendogo and community, currently this story has internally a high priority, and there is a high chance that this will be implemented in one of the future releases.

MikeMcC399 commented 3 years ago

@dsarkar

currently this story has internally a high priority, and there is a high chance that this will be implemented in one of the future releases.

Is there any plan to add a checksum to the GUID code as specified in https://update.kbv.de/ita-update/Blankoformulare/10C_OEGD/KBV_ITA_VGEX_Implementierungshinweise_10C_OEGD.pdf? If the code is scanned in as a QR code the QR code itself includes error correction. If the code is input by hand it is very easy to mistype the code without it being noticed.

dsarkar commented 3 years ago

@MikeMcC399 Will try to get an answer.

thomasaugsten commented 3 years ago

@MikeMcC399 What kind of checksum for an UUIDv4 do you mean here? This is a complete random number with the characters 0-F

MikeMcC399 commented 3 years ago

@thomasaugsten

What kind of checksum for an UUIDv4 do you mean here? This is a complete random number with the characters 0-F

I'm sorry if my question was unclear. I realise that the format of the code is like the example 3D6D08-3567F3F2-4DCF-43A3-8737-4CD1F87D6FDA

If the specification is not changed and CWA allows inputting such a string by hand then a user could make a mistake, for instance by transposing two characters e.g. 3D6D08-3567F3F2-4DCF-43A3-8737-4CD1F87D6FAD instead of 3D6D08-3567F3F2-4DCF-43A3-8737-4CD1F87D6FDA (last two characters changed) which would still be a valid GUID, but it would not be associated with the test of the user, so the user would be left waiting for a test result which could never be delivered.

I am asking if the KBV GUID specification will be changed so any GUID input by hand can be validated by the app better. If the spec is not changed, then the user will have to be very careful about typing in exactly the right characters and making no mistakes.

thomasaugsten commented 3 years ago

There are changes in discussion but at the moment we cannot improve the process

niclashoyer commented 3 years ago

Any progess on this? As digital proof of vaccination also needs qr scanning it is not possible to use this at the moment 😥

AnthyG commented 3 years ago

Don't the qr codes also just contain a UUID? If so, then I don't see why it's not feasible to just implement this textual input. I could also forge a qr code, but if that's possible then the whole system is not really usable.

ndegendogo commented 3 years ago

@AnthyG for the digital certificate for vaccination, the QR code contains a data record with a digital signature. So you need not worry about forging. If your camera is broken you need not scan it. Instead you can carry the paper printout with you.

niclashoyer commented 3 years ago

If your camera is broken you need not scan it. Instead you can carry the paper printout with you.

That is true, but it is still cumbersome and would be a lot easier if one could just use the app and and provide the code by other means (whether this is typing or providing a file containing the code or even scanning the code with a scanner app that works and copy/pasting it). This is not about a broken camera physically, but a not working scanning function that is supposed to work without proprietary software.