How does Zoom's website launch Zoom Meetings from Google Chrome? Can I do it using JavaScript? If so, how can I do it? Confirmation dialog box (Image)
2 Answers
It's not done with JavaScript, but with plain HTML. The way it works is, you create an <a>
with an href
attribute with a protocol other than the ones a browser usually recognizes - that is, other than http
, https
, etc.
If the user has installed an application that recognizes the protocol, the browser will try to open that application.
Similarly to Zoom, for IRC links, you can see something like:
<a href="irc:(IRC INFO HERE)">Link</a>
If you click on that link, and your machine has software installed that recognizes the irc
protocol, that application can be opened directly by clicking on the link (possibly asking you if you want to open it first).
There are lots of different protocols for many different applications. They're quite handy for getting info on a web browser to an application on the user's computer.
For Zoom in particular, there's documentation on how to use its protocols here:
https://marketplace.zoom.us/docs/guides/guides/client-url-schemes

- 356,069
- 52
- 309
- 320
-
So does Zoom Meetings register a custom URL protocol in Windows when a user installs it? – Gabriel Paneque Didi Aug 26 '20 at 23:05
-
3Yes. If you click on a zoom link and you don't have Zoom installed, your browser will tell you that it doesn't recognize the protocol you clicked, and will ask you if you want to try to select an application from your computer to open it with. – CertainPerformance Aug 26 '20 at 23:06
-
Oh, I didn't know apps could register custom protocols. Thank you for your help! – Gabriel Paneque Didi Aug 26 '20 at 23:09
-
@CertainPerformance just one more question: is there a folder/file (or something like that) where those custom protocols are stored in Windows? – Gabriel Paneque Didi Aug 26 '20 at 23:14
-
1@GabrielPanequeDidi Yes, they're stored in the registry. See https://stackoverflow.com/questions/389204/how-do-i-create-my-own-url-protocol-e-g-so – CertainPerformance Aug 26 '20 at 23:15