-
-
Notifications
You must be signed in to change notification settings - Fork 90
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
change add-to-group/secure-join QR code data from OPENPGP4FPR:
- to i.delta.chat
-scheme
#5467
Comments
We have already changed the code for contact verification on various devices (like desktop: deltachat/deltachat-desktop#3650), so this would only affect group invite codes. Also would be great we would let core do the the conversion between the links on all UIs: deltachat/invite#28 |
i do not think, this is true. imu, this, and comparable changes, affects the code copied-to-clipboard only or what is shared on android/ios - but then not only for groups but also for secure-join-links. the suggested change of the issue is about changing the QR code data that is shown in Delta Chat what's true is that the hacks about copying slightly different data to clipboard or share them, can be removed as the core just always deals with i.delta.chat links (and support openpgp4fpr for legacy reasons) |
good to know that the qr code data was not changed yet. anyways makes sense to not only change the svg, but also the returned qr code data in core and remove the conversion logic from the UI. (so core directly returns the invite links instead of OPENPGP4FPR). in technical words:
|
this is how the change is meant to be. |
why do we need the QR data to be a i.delta.chat link??? for generating the link instead of client-side, a new api "get_invitelink()` could be added 🤔 |
to allow it being scanned unconditionally, with or without delta chat being installed.
for the length: it adds 9 characters, that seems a cheap price for the added functionality. for compatibility, see discussion in the initial post |
I just re-read the original post and realized I missed that bit, yes good point I think it is worthy 👍 |
also for me it made it worse in a Xiaomi device: the first QR offers to copy text/link to clipboard (not even to open browser!?) second link offers to open delta chat on CalyxOS device: first link offers to open the browser (even if DC is installed, for some reason is not verified that the app can handle the i.delta.chat links) while the second link offers to copy text to clipboard, not to open directly in delta chat either :( |
same behavior on Redmi 9A (which is Xiaomi I think) |
so, all in all it seems a bit questionable, and seems to worsen things on some devices. it maybe still makes sense to do the change, however, to free up thinking resources, it's no longer needed to be closed for 1.46 |
|
also also discussed offline, we should do the change. compared to the huge advantages that the QR codes start working without Delta Chat being installed, the drawbacks are negligible (only notable drawback is that in rare cases qr codes scanned with the system camera may not open in Delta Chat directly - but even in these cases, you can open Delta Chat and the invite-link from the browser) however, as this is a pretty sensible area, we should create/adapt tests and also test that in practise carefully :) |
As discussed in #5467 we want to use `i.delta.chat` in QR codes in favor of `OPENPGP4FPR:` scheme. This PR does the replacement in `get_securejoin_qr` which is used in `get_securejoin_qr_svg`.
using
https://i.delta.chat...
links in the QR codes allows users to scan the QR code with any mobile without having delta chat installed yet.users will then get instructions how to install delta chat, resulting in a much better ux workflow as sharing such a link works in more cases.
to be clear: scanning from Delta Chat still does not do any calls to
i.delta.chat
or to somewhere else -i.delta.chat
can even be down or being blocked.drawback would only be that openkeychain won't be able to scan these codes, however, not sure if someone ever did that (the other way round, will still work - and openkeychain can be fixed as well)
question is about timing:
starting with 1.44 releases (using core 1.134.0 and merged #5219),
i.delta.chat
links in QR codes are accepted equivalent toOPENPGP4FPR:
(in fact, they differ only by first&
/#
)so, if we change the QR codes in the upcoming 1.46, an 1.42 does not support these QR codes directly - but maybe that's okay as Delta Chat offers to open the URL in the browser - and from there, one should be able to do the join. so, maybe the benefits of getting new users are more important than to support ppl that did not upgrade :)
but the new flow should definetely be tested with a 1.42
EDIT: what should also be tested before targeting this issue, is what happens when "common" system cameras scan the i.delta.chat code when delta chat is installed. if delta chat is opened for
OPENPGP4FPR:
directly, it would be cool if that happens also fori.delta.chat
.here is are two test QR codes that should ideally behave the same when scanning with the system camera (no need to check from inside delta chat)
(just check if the message "Chat with Bob...?" is asked, no need to really do the join, Bob is probably offline anyways :)
the qr codes contain the data
https://i.delta.chat/#4BBB21F24BF172148246CFAA5FB0363572FC9FE1&a=siznq0vgz%40nine.testrun.org&n=bob&i=Sh3Dwasz8K5&s=UjY23SgefLv
resp.OPENPGP4FPR:4BBB21F24BF172148246CFAA5FB0363572FC9FE1#a=siznq0vgz%40nine.testrun.org&n=bob&i=Sh3Dwasz8K5&s=UjY23SgefLv
what's expected on android is a dialog asking for the app that should be used to open the link (the dialog appears only when delta chat was not set as default before)
The text was updated successfully, but these errors were encountered: