Skip to content
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

Support ENS names in share and parse urls #11403

Open
MishkaRogachev opened this issue Jul 4, 2023 · 10 comments
Open

Support ENS names in share and parse urls #11403

MishkaRogachev opened this issue Jul 4, 2023 · 10 comments
Labels
backend-team E:Desktop New Share URL Format Implementation of the new share URL link format and other deep link associated issues feature

Comments

@MishkaRogachev
Copy link
Contributor

MishkaRogachev commented Jul 4, 2023

Continue #10851

Description

Add api function and parseUserURLWithENS and shareUserURLWithENS implementation to messenger_share_urls.go. Parsing shared url with ens name should ask mailservers for a contact by ENS name

Right now, we support passing a chat key, but we need to support an ENS name as well as per vacp2p/rfc#602 (comment)

Acceptance Criteria

@jrainville jrainville added the E:Desktop New Share URL Format Implementation of the new share URL link format and other deep link associated issues label Jul 13, 2023
@jrainville jrainville added this to the 0.14 milestone Jul 13, 2023
@jrainville jrainville added the C3 label Jul 13, 2023
@John-44
Copy link

John-44 commented Aug 17, 2023

@MishkaRogachev it might be better if we just share chat keys for ens name users as a temp solution, as we are going to completely rewrite and re architect how ens works in the future. Not worth spending time on this now IMHO

@John-44
Copy link

John-44 commented Aug 17, 2023

I propose postponing this item until at least the 0.19 release

@jrainville
Copy link
Member

@MishkaRogachev how far along were you?

@MishkaRogachev
Copy link
Contributor Author

@jrainville @John-44 I've been working on it for a few days now, but I don't really like the result. The thing is that the necessary functionality is implemented in ENSService here, and it's very messy to dump the whole api into messenger. Besides, there is already ENSResolver, which partially duplicates the functionality of ENSService. What I'm trying now is to refactor the common code to add the function of getting the public key by name. But it's not working (melting smile).

On other hand i would prefer to have some common tool to call other services with messenger

@jrainville
Copy link
Member

@MishkaRogachev alright then, let's drop it and focus on it another time then

@jrainville jrainville removed C3 E:Desktop New Share URL Format Implementation of the new share URL link format and other deep link associated issues labels Aug 17, 2023
@jrainville jrainville removed this from the 0.14 milestone Aug 17, 2023
@John-44
Copy link

John-44 commented Aug 17, 2023

@jrainville @John-44 I've been working on it for a few days now, but I don't really like the result. The thing is that the necessary functionality is implemented in ENSService here, and it's very messy to dump the whole api into messenger. Besides, there is already ENSResolver, which partially duplicates the functionality of ENSService. What I'm trying now is to refactor the common code to add the function of getting the public key by name. But it's not working (melting smile).

On other hand i would prefer to have some common tool to call other services with messenger

@MishkaRogachev everything to do with our current ENS integration needs to be thrown away and we need to start again, because there is soo soo much missing and soo much that needs to be done differently. We are going to do this at some point next year, hence why I don't think we should invest any more than the absolute minimum amount in the current ENS functionality as we know we are going to be throwing it away.

The once thing we need to make sure is working, is that when a user who is using and ENS name shares a link to their profile, that link includes their status chat key. As long as this works we are good for now.

@jrainville
Copy link
Member

@MishkaRogachev can you confirm that when a user with an ENS name shares their URL, it uses the "normal" contact link and not the ens link?

@MishkaRogachev
Copy link
Contributor Author

@MishkaRogachev can you confirm that when a user with an ENS name shares their URL, it uses the "normal" contact link and not the ens link?

It depends on what endpoint the client is using, if it is ShareUserURLWithENS then we can't parse it yet. But we can make a crutch on the client side: if /u is not followed by zQ3sh, we can parse the url in nim and request pubkey from ENSService. Is a desktop-side crutch not as scary as a status-go crutch? :)

@jrainville
Copy link
Member

What I mean is that when going in the Profile Modal, the URL should always be the "normal" Share URL, ie something like this: https://status.app/u/Ow==#zQ3shtdTkTVyx886T8MDhmFEChkJ7EdGLUVfrdaB7TSdFNGZE
and that, even when when the user has an ENS name.

If it needs a "patch", then yes, 100% do it in Nim or QML so that we only call the "normal" share URL functions

@MishkaRogachev
Copy link
Contributor Author

ShareUserURLWithENS

What I mean is that when going in the Profile Modal, the URL should always be the "normal" Share URL, ie something like this: https://status.app/u/Ow==#zQ3shtdTkTVyx886T8MDhmFEChkJ7EdGLUVfrdaB7TSdFNGZE and that, even when when the user has an ENS name.

I see that we're only using shareUserUrlWithData here, so it should be fine

@jrainville jrainville added the E:Desktop New Share URL Format Implementation of the new share URL link format and other deep link associated issues label Oct 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend-team E:Desktop New Share URL Format Implementation of the new share URL link format and other deep link associated issues feature
Projects
Status: No status
Development

Successfully merging a pull request may close this issue.

3 participants