Linphone Web



Since December 2015, Linphone-web is officially discontinued due to removal of NP-API from Google Chrome and Firefox. For more information, see :

Test it

Go to and try Linphone Web easily and for free. This page allows to make calls and chat using the free SIP service or any external SIP service.

The Linphone Web product consists of:

  • The Liblinphone Web Plugin, a browser plugin bringing a JavaScript API similar to the Liblinphone API.
  • The Linphone Web User Interface (UI), a HTML/JavaScript layer relying on the plugin to offer to the end user the possibility to make audio and video calls through an easy and clever interface. This UI can be re-branded and integrated into a website aiming to provide video call experience.

Supported browsers:

  • Internet Explorer 9, 10, 11
  • Mozilla Firefox on Windows Desktop, Mac OS X and GNU/Linux
  • Safari (Mac OS X >= 10.7)

Chrome is no longer supported since version 42, because of npapi (plugin support) effective removal. For more information, read: Linphone developers are currently looking for alternatives to bring back linphone-web on Chrome browser. If you are interested in sponsoring this project, feel free to contact Belledonne Communications

Firefox also recently announced its intention to remove NP-API plugin support by the end of 2016:

Why Linphone-web ?

Linphone-web is an original product derived from the liblinphone software stack (englobing belle-sip, mediastreamer2, oRTP). It is unrelated to webRTC. Many people ask us why not directly using webRTC, since webRTC is present in Firefox and Chrome without requiring to install a specific plugin. Why maintaining such big piece of software like linphone-web while webRTC is presented as THE solution for realtime communications in browsers ?

We would say that the answers could be the same as for these questions:
- Why people aren't using Chrome everywhere instead of using Safari, Internet Explorer, or Firefox ?
- Why Airbus is making planes while Boeing is already doing planes since a longer time ?

The answers can be: freedom of choice, competency, innovation, trust, commercial relationship, better quality.
WebRTC isn't something trivial. It is a media stack, comprising several hundred of thousands of line of code, issued from a very respectable company called "Global IP Sound" that was acquired by Google for several million dollars a few years ago.

We, the company behind Linphone, have also been developing a media stack for years called mediastreamer2. We have no intention to retire it in favor of webRTC. Google and us are simply competitors in this area.

Technically, webRTC suffers from serious issues:
- it has no signaling protocol (the signaling protocol is the protocol that is used to route calls). Unlike linphone-web, WebRTC is just media. It establishes the audio and video stream to an application-provided remote IP and port, but it's up to the application using webRTC to arrange to get this information and pass it to the other. As a result people integrating webRTC in their systems have to make their own weak proprietary signaling protocols, or use fairly limited javascript-written SIP stacks (over websocket !). It is hardly interoperating with already established communications systems.
- it has configuration hardcoded by Google that puts strong requirements on the third parties that wish to interoperate with webrtc: only one video codec (VP8), only one encryption scheme (SRTP-DTLS), ICE is required. People have absolutely no way to change it. For sure it's open source, but who would create a fork of Chrome to provide webRTC with more flexible settings ?

In this world, there are several video codecs available (like mpeg4, H264, soon H265) that are already deployed in many hardware systems. People concerned by secured communications may prefer security mechanism better than SRTP-DLTS, such as zRTP. WebRTC is not the center of the world, and objectively it is currently hardly interoperable with anything else than itself. Even interoperating between a webRTC included in Firefox and the one included in Chrome doesn't work out of the box at the time of this writting.

Also, all reasonable people in the field of secure communications will not trust that webRTC is exempt of any backdoor. The backdoor is not in the public source code, but who can verify what is really included in the Chrome browser ?

Within media stacks, they are many areas of differentiation on the techniques and algorithm that can be used, that can result in progresses in audio & video quality. Do we want the world to use a single media stack for all communications over the world, without any competitor ? This is not reasonable. As long as the world needs Boeing and Airbus, we will need Google and others.

What Google is doing with NPAPI retirement decision without replacement solution, leaving the field of communications exclusively in the hands of its webRTC product, is questionable in terms of abuse of dominent position.
Meanwhile, our role is to provide to all our current and future end users and customers, who care about independency, innovation, security and freedom, an alternate solution to webRTC.



Linphone-web is an easy to use, standard approach (based on SIP) for real time communications in web browsers. It doesn't require additional gateways to interoperate with existing SIP networks.

It comprises all the feature set from the well-established liblinphone engine.

Main features:

  • Audio and video calls
  • Languages: English, French
  • Call History
  • Address Book
  • Chat with local storage and file sharing
  • Multiple call management

Advanced Features:

  • Audio codecs: G711, G722, SPEEX, OPUS, G729, AMR,  ISAC
  • Video codecs: VP8, H264, MPEG4
  • Integrated ICE support (RFC5246) to allow peer to peer audio & video connections without media relay server.

(note: G729, H264, AMR codecs are disabled in the online version)



The Linphone Web Plugin is distributed under the GPLv2 license or under proprietary license with commercial agreement. The Linphone Web UI is distributed under the Affero GPLv3 as well as proprietary license. Contact Belledonne Communications for costs and other service information.

Source code

Clone sources with git:



  • Linphone web javascript graphical interface

git clone git:// --recursive


  • Liblinphone javascript bindings for web (browser plugin)

git clone git:// --recursive


Web developers can access the a jsdoc3 generated API documentation of linphone-web from .