Is there a way to set Google Voice as default tel protocol handler?

I would like to be able to click tel links in my web browser (Firefox 70.0.1) and have it launch voice.google.com, with the phone number populated in the dialer so that I can then dial the number via my phone (which also has Google Voice). Is this currently possible?


As of 23 Feb 2022, Google provides instructions to Use one-click dialing on Google Voice .

Prior to that, in Chrome, I was able to register Google Voice to handle tel: links by running the following code via Developer Tools > Console.

window.navigator.registerProtocolHandler("tel", "https://voice.google.com/u/0/calls?a=nc,%s","phone");

I was not able to do that without adding a browser extension. Since I use Chromium, I used https://chrome.google.com/webstore/detail/google-voice-by-google/kcnhkahnjcbndmmehfkdnkjomaanaooo?hl=en

Firefox extensions for Google are listed here but I did not find one offering click-to-dial into gVoice after searching through 31 screens of extensions.


NOTE I'm on a Mac but should work for Windows as well with some verbiage changes.

I've found a way to do this in Firefox without any extensions.

  1. Type "about:support" in the search bar.
  2. You'll have troubleshooting information displayed along with a grid titled "Application Basics"
  3. Find the one labeled "Profile Folder" and click the "Show in Finder" button
  4. In the window that opens, find the handler.json file and edit it using your preferred editor.
  5. In the "schemes" section, add the following code (I placed mine after the "mailto" portion ensuring all the tabs lined up).
  "tel":
    {
        "handlers":
        [
            {
                "name": "Google Voice",
                "uriTemplate": "https://voice.google.com/u/0/calls?a=nc,%s"
            }
        ],
    },
  1. Save your changes, quit and reload your browser.

You may or may not be prompted to pick the application (mine gave me the option of Facetime or Google Voice), I picked Google Voice and "Remember this choice". It immediately opened a tab and proceeded to complete the call. When I reviewed the file again, there was an "action": 2 added. My guess would be due to my picking the 2nd option and "remember".

Screenshot included for your reference.

handler.json code