Click2Call Firefox Extension

Many Voice-Over-IP phone systems now allow you to log into the system with a web browser and initiate a phone call – the system phones your desk phone and the destination phone number you specify.

Click2Call is a Firefox extension that transforms phone numbers in web pages into links that will activate your phone system’s “click-to-call” functionality, eliminating the need to read a phone number off the screen and manually type it into the phone. The extension currently supported Vonage and Cisco WebDialer; however, you can configure a custom service, provided you know the format of the URL for the phone system’s “click-to-call” functionality to configure the extension properly.


  • Firefox 2.0 (Firefox 1.5 may also work, I just haven’t tested it)
  • A phone system with “click-to-call” capabilities


  1. Click here to install the Click2Call Firefox Extension
  2. Restart Firefox
  3. Go to Tools, Add-ons, Extensions, Click2Call, Options
  4. Configure the extension to use your phone system. If you use a system other than Vonage or Cisco WebDialer, choose “Custom” and enter the URL of your phone system’s “click-to-call” functionality, using $phoneNumber to represent where the phone number is embedded in the URL (for example: “$phoneNumber/call”).
  5. Click OK

Once the extension is installed and configured you can seen the results on the test phone numbers – each phone number will be hyperlinked using the URL pattern you specified in Step 4 above.


Click2Call is provided under a BSD license. A copy of the source code, along with the build script is available here.

Known Issues

  • Phone numbers broken by a line break: The current patterns for matching phone numbers do not account for line breaks in the HTML, and hence a phone number that is broken by a line break will not be turned into a link.
  • Localized dialing behavior: I’m not clear how most phone systems handle international phone numbers. It’s unclear to me if the system automatically deals with handling adding long distances pre-fixes (1, 011, etc) . Any feedback on how these systems behave would be welcome.
  • Unsupported phone patterns: I’ve tried to come up with the most popular representations of a phone number, but I’m sure I’ve missed a bunch (especially international numbers). If you contact me with formats that you’d like to see supported, I’ll add them to the next release.
  • Possible performance impact: I’m being pretty aggressive about searching all text in a page, but in some cases this may slow down loading of a page. I will investigate reducing the amount of text searched in a page to limit that impact.


  • Additional PBX system support: I’d like to include presets for additional PBX systems out there to enable easier configuration.
  • Support for PBX-specific features: It would be nice to enable support of extended features provided by specific PBX systems. For example, some PBX systems allow the user to block caller ID when they call.
  • More robust phone number detection: The current approach to identifying phone numbers in a web page are fairly kludgy. It would be nice to have a more complete, all-encompassing way of extracting them.

Release History

  • Release 0.0.1 (February 18, 2007): Initial release.
  • Release 0.0.2 (February 21, 2007): Update to include more international phone number patterns, and create links for phone numbers embedded in iframes.
  • Release 0.0.3 (January 23, 2008): Update adds a more user friendly configuration panel with built-in support for Vonage and Cisco Web Dialer. In addition, the extension now opens links in a new window.

43 thoughts on “Click2Call Firefox Extension

  1. Brendon

    Can you tell me how to get this working with Vonage? I have click2call installed but can’t seem but don’t understand what you mean by:

    “Enter the URL of your phone system’s “click-to-call” functionality, using $phoneNumber to represent where the phone number is embedded in the URL”

    Do you know if your script works with Vonage?

    thanks in advance.

  2. This extension is really meant for people with an in-house VOIP PBX – I don’t know anything about the Vonage service, so I’d have to do some digging to see if there is a way to integrate with their service.

    BTW, I believe Vonage already has some kind of click-to-call plugin already. Hmm, might need to change the name of mine as theirs is called “Click-2-Call”

  3. Pingback: Vonage? Need to switch? < encrypted bits

  4. Vonage recently published the URL to initiate calls. It’s:

    Swap out your username, password, telephone #, and change the toNumber to Mr. Wilson’s “$phoneNumber”

    More details can be found on a Vonage development site, here:

    It works great, with one exception: for some reason, it REALLY slows down gmail. I went from sub-second responses to open messages, to 30 seconds just to log in!! Just for that reason, I’m deinstalling, which is disappointing since I haven’t been able to find another click-to-call extension out there…

    If you fix it so it doesn’t slow down gmail, please let me know!

  5. I use a click2call script on my site with my Vonage service, and figured the same thing could be done with an extension. Vonage does make a click2call program, but I don’t think it works under Mac or Linux. This extension solves that problem!

    To get it to work with Vonage:

    Replace the words inside the brackets with your Vonage username and
    password you would use to log on to their site
    REMOVE THE BRACKETS and make sure to use your entire 11-digit phone number 1 area code number (no spaces) I don’t think this works with numbers outside of USA…

    use this pattern…$phoneNumber

  6. Drewkill:

    Yeah, I’ve heard that from one of my colleagues as well. I think the problem is I’m being overly aggressive with my XPath search criteria (to find text to replace). I will fix that in the next couple of weeks.

  7. Or, you could add a list of exceptions–sites for the extension to not comb and replace.

    Another nuisance (though not as much as the gmail slow-down) — it picks up Zip 4 zip codes as phone numbers.

    But all-in-all, great extension, and thanks for the work!!

  8. I would like to make one request. When the number is dialed a new browser screen opens with the message “000:Request Successful”. You must then click on the “Back” arrow to go back to the original page.

    It would be very convenient it there were just a fade away pop up to indicate a successful call or no message at all as when your phone rings that indicates a “successful call”, or maybe just a error message if the call was unsuccessful.

    Thank you for this great tool, I love it. It will help me to be more productive.

  9. Thanks for the add on. However, is there any way you can change it so that it does not go to a new browser webpage if the call is successful? Can you have it just do a pop up or something else? I am using this on a website where I am editing fields while I’m making calls. I can’t make changes and then make a call without losing my changes. Thanks!

  10. Thanks for the update, it makes it easy if you multiple Vonage accounts and want to change dial out numbers mid stream. I did notice that on my system that two windows are opened and sent to to the Vonage website twice.

  11. Brendon,

    I was using your click2call in my home office with my last job with LignUp and I loved it. It worked great and gave a real boost to my productivity. However I am no longer with LignUp and would like to use the click2call on my new job.

    I have to dial 9 to get out and I am not sure how to modify the extension ($phoneNumber)

    Any help you can give me would be appreciated.

    Thank you,

    Rick Blackburn

  12. You’re a brave one Michael! I’m currently working on fixing the pattern matching to be more reliable, as well as improving the configuration UI. I’ll take a look at FF beta 3 and see what’s involved.

  13. Hey, Brendon

    Someone turned me onto your site because I have a similar plugin – and I thought I would drop you the info ont he Regular expressions I use – itll considerably condense what you have and match more patterns, if you want to use them:

    \+(\d+[ \.\-]){2,4}\d+
    \(\d+\)[ \.\-](\d+[ \.\-]){1,4}\d+
    \b(\d\d\d[ \.\-]){1,2}\d\d\d\d\b

  14. I like this a lot. Keep it coming. I wish this was for IE too. Thank you for sharing. Thank you again.


  15. Hello,
    What kind of format is this installation file in? Is this program for Windows or some other OS? I am not sure how to install click2call.xpi. Any info would be appreciated.


  16. The installation file is an XPI – an extension installation file for Firefox. You need to install Firefox, load this page in Firefox, then follow the installation instructions above.

  17. What a great extension. I just tried using it and I was up and running within minutes. I also need to dial 91 before any number, so although we use Cisco WebDialer, I chose Custom, Entered my WebDialer URL and added 91 before the $phoneNumber (see below).$phoneNumber

    The plugin dials like a champ but it opens a new tab instead of a new window and it also resizes the window to a much smaller one. Is there anything I can do to make sure it always opens in a new window and also keeps the same window size after I close it? The Hang Up button is always hiding and I need to scroll down to it.

    Thanks in advance,

  18. Hi Dotan,

    Unfortunately not at this time – I’ve been spending some time over the past few weeks augmenting the phone parsing to handle properly pre-pending a local or long distance dialing prefix, as required by the situation you describe, as well as correctly handle adding international and national direct dialing prefixes as required.

    I haven’t yet had a look at how to better trigger the HTTP request and display a status/prompt to the user, but judging from the comments, it’s a common requirement.

    Thanks for the suggestion – I’ll try to add it before I do my next release.

  19. Brendon – I love this C2C plugin. I have been using it for the last year and it has been great. However, I just went to Firefox 3 and unfortunately, the plugin doesn’t work. Any plans to make it work for Firefox 3? Thanks for all you do.

  20. Paul: Absolutely want to move this to Firefox 3; I haven’t played with the beta releases, but I don’t believe there should be any serious effort required to make it compatible.

    I’ve also been cooking up a number of improvements to better handle international numbers, avoid accidentially “linkifying” non-telephone numbers, improving the performance, and simplifying the configuration to work better with existing corporate VOIP solutions. I’ll roll these into the Firefox 3-compatible release.

    Stay tuned!

  21. Any word on a FF3 release yet? My company uses your click to call function daily and we all upgraded today to FF3. Trying to install it says “”Click2Call” will not be installed because it does not provide secure updates”

    Thanks Brendon.

  22. An update on FF3 compatibility: I’ve made the necessary changes; however, I’ve run into a bug on MacOS with FF3 that screws up the configuration panel. I’m going to test on Windows and see if it’s an isolated problem. Will report once I’ve tried it there.

  23. Do you (or your readers) know if Talkswitch has a click2call function? If so, anyone know how to use it (URL integration using this extension?) Thanks!

  24. Pingback: GrandCentral Click to Call Add-on for Firefox at That Smith

  25. How about a click to call extension that sends the phone number to an old-fashioned modem, for those who still use POTS? Can your extension be jiggered to do this?


  26. Hmm, good question. Would I be right in guessing that you’re looking for the ability to initiate calls from your browser, but without the need for a VOIP system? Clever idea…I can’t believe I didn’t think to do it before, especially because I used to use a modem to auto-redial so I could get onto the university registration system to register for courses!

    I suppose it could be made to do that – though I’d have to look into using the platform-specific telephony APIs. The current extension is pretty simple – it just uses the browser’s native ability to talk HTTP to contact the VOIP server. Adding the capability to initiate the modem, and make a call would require a fair bit more work. It’s something for me to think about, but it’s not high on my list at the moment.

    Thanks for the great idea.

  27. Thanks for your response. That’s exactly what I’m looking for. It seems useful enough and simple enough that I’m surprised I can’t find such an extension.

    What got me thinking about this is that I’ve used for 12 years a neat Windows-based PIM (Almanac 3.5) that integrates a dialer in its phone book. Works like a charm under all versions of Windows through XP (haven’t used Vista yet). If there are open-source modem dialers out there (Win, Mac & Linux), you could just pass the phone number that’s grabbed from the web page.

  28. Hello Brendon, I´m brazilian and I´m trying to add thr C2C in my firefox version 3 and I couldn´t do.
    The message that I´m getting is:
    O “Click2Call” não será instalado porque não fornece um método seguro de atualização.

    This means: The Ckick2Call, will not install because does not have a security atualization method.

    What I can do to get it, or can you fix this problem?
    Thank you very much for your atention and time.
    Jose Pinto

  29. @Jose: Unfortunately, I haven’t yet completed the changes required in my extension to upgrade it to work in Firefox 3. I’m currently in the middle of a contract, which is taking up all my time – I’ll try to get this fixed as soon as I can!

  30. Here’s another one hoping that you can get this working with Firefox 3. I’ve searched pretty hard and it seems there is only one other FF extension that does something pretty well identical to this one, and it also only works up to FF 2.

    Thanks for your work.

  31. I’m seeing problems with I can not get into the option menu from add on and it fail to install on others.
    Keep the updates coming. :)

  32. Pingback: The FCC, TWC, Skype, And The Cellular Industry – 123blogblog

  33. For Vonage users go to

    Initiate the call from your Vonage number to any number in the world


    The name that you use to log in to the Vonage dashboard
    The password that you use to log in to the Vonage dashboard
    Your Vonage phone number, this must match one of the numbers returned from the getnumbers request above
    The phone number you want to dial

  34. Unfortunately, this is pretty old at this point, and would require someone to retool it for the latest Firefox. Not a priority for me these days, as I’m now a Google Chrome user. Sorry!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>