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

Implement deep links #76

Open
gnprice opened this issue Apr 20, 2023 · 0 comments
Open

Implement deep links #76

gnprice opened this issue Apr 20, 2023 · 0 comments
Milestone

Comments

@gnprice
Copy link
Member

gnprice commented Apr 20, 2023

This feature means setting things up so that when you open an appropriate Zulip link from arbitrary apps on your device — like your mail client when reading a Zulip email notification, or your browser when looking at a GitHub thread where someone refers to a Zulip conversation — it opens in the Zulip app, rather than a browser, and goes directly to an appropriate screen in the app.

This is a feature we don't currently have in the zulip-mobile RN app (nor for that matter in zulip-desktop). It'd be a nice feature to have.

For Zulip, there are two ways the feature can work, and we probably ultimately want both of them:

  • Handle a URL like https://chat.zulip.org/ or https://example.zulipchat.com/#narrow/stream/37-foo/topic/bar — the same URLs that the web app puts in the location bar, and provides at "Copy link to message".

    This is the most convenient, when it applies. It requires us to tell the OS at app install time (or upgrade time) what URL patterns we can open, so we'll only be able to do it for URLs like those of Zulip Cloud and chat.zulip.org, not for arbitrary Zulip servers.

  • Make up a way of encoding an arbitrary Zulip realm URL, plus that other information like #narrow/stream/37-foo/topic/bar that the web app puts in a fragment, into a zulip://… URL. Then handle those.

    This one can work in full generality, for all servers.

    In order to be useful, it requires that we start providing these URLs in some contexts where people might want to follow them. For example, Zulip email notifications have a "view it in Zulip" link, and we could start providing two different links there: one for "on the web" and one for "in the Zulip app". (Ideally this would be combined with zulip-desktop gaining support for the same URLs around the same time.)

Chat threads with further technical discussion:

Related issues in zulip-mobile and zulip-desktop, for different aspects of this:

Draft implementation for zulip-mobile on Android, of the zulip:// version:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: No status
Development

No branches or pull requests

1 participant