Group: Skype Replacement

From LibrePlanet
Jump to: navigation, search
m
(23 intermediate revisions by 7 users not shown)
Line 3: Line 3:
 
== Protocol, not client ==
 
== Protocol, not client ==
  
We need to make the discussion about protocols, not clients, (think how people say "send me an email" rather than "send me a Hotmail").
+
We need to make the discussion about protocols, not clients, (think how people say “send me an email” rather than “send me a Hotmail”).
  
 
The primary functionality of Skype we aim to replace is real-time:
 
The primary functionality of Skype we aim to replace is real-time:
* voice calls
+
 
 +
* voice calls (to computers)
 
* video calls
 
* video calls
 
* text chat
 
* text chat
Anywhere over the internet (or beyond), with as many people per conversation, logging, etc. whatever other features (clarify this section as necessary).
+
* voice calls to plain old telephones (via a SIP gateway or similar)
 +
 
 +
Anywhere over the Internet (or beyond), with as many people per conversation, logging, etc. whatever other features (clarify this section as necessary).
  
 
The free protocols currently available to do this are.
 
The free protocols currently available to do this are.
 +
 
{| class="wikitable sortable" style="text-align: center; width: auto;"
 
{| class="wikitable sortable" style="text-align: center; width: auto;"
 
! style="width: 10em" | !! Voice !! Video !! Text !! Notes
 
! style="width: 10em" | !! Voice !! Video !! Text !! Notes
 
|-
 
|-
| SIP || {{Yes}} || {{Yes}}? || {{Yes}} || sessions?
+
| SIP || {{Yes}} || {{Yes}}? || {{Yes}} || Sessions?
 
|-
 
|-
| XMPP/Jingle || {{Yes}} || {{Yes}} || {{Yes}} || Full presence, group chat, widely deployed
+
| XMPP/Jingle || {{Yes}} || {{Yes}} || {{Yes}} || Full presence, group chat, widely deployed.
 
|-
 
|-
| Mumble || {{Yes}} || {{No}}? || {{Yes}}? ||
+
| Mumble || {{Yes}} || {{No}} || {{Yes}} || Intended for gaming, has positional audio support in some games as well as an overlay.
 
|-
 
|-
| WebRTC || {{Yes}} || {{Yes}} || {{No}} || Not a protocol, just media Javascript APIs
+
| WebRTC || {{Yes}} || {{Yes}} || {{No}} || Not a protocol, just media JavaScript APIs. <!-- Can text be done anyway, using another protocol? -->
 
|-
 
|-
| Tox || {{Yes}} || {{Yes}} || {{Yes}} || In early development, not fully implemented
+
| Tox || {{Yes}} || {{Yes}} || {{Yes}} || In early development, not fully implemented, although it seems usable as of now (2015-01-24).
 
|}
 
|}
  
 
== Central Registry? ==
 
== Central Registry? ==
  
Apart from technical problems with free Skype replacements, there is a "network effect" problem preventing free protocols (and clients) becoming popular.
+
Apart from technical problems with free Skype replacements, there is a “network effect” problem preventing free protocols (and clients) from becoming popular.
 
This might be solved by explaining the problems of Skype to the people and providing the stories about injustice concerning this software.
 
This might be solved by explaining the problems of Skype to the people and providing the stories about injustice concerning this software.
  
 
== Free clients ==
 
== Free clients ==
 +
 
Lists exist already:
 
Lists exist already:
 +
 
* http://en.wikipedia.org/wiki/List_of_SIP_software
 
* http://en.wikipedia.org/wiki/List_of_SIP_software
 
* http://en.wikipedia.org/wiki/Jingle_(protocol)
 
* http://en.wikipedia.org/wiki/Jingle_(protocol)
 
* http://xmpp.org/xmpp-software/clients/
 
* http://xmpp.org/xmpp-software/clients/
 
* http://tox.im/
 
* http://tox.im/
Do we need more info? If so it can go here.
+
 
 +
Do we need more information? If so it can go here.
 +
 
 
{| class="wikitable sortable" style="text-align: center; width: auto;"
 
{| class="wikitable sortable" style="text-align: center; width: auto;"
 
! style="width:10em" | !! SIP? !! XMPP/Jingle? !! Mumble? !! Tox !! Active development? !! Platforms !! License !! Notes
 
! style="width:10em" | !! SIP? !! XMPP/Jingle? !! Mumble? !! Tox !! Active development? !! Platforms !! License !! Notes
 
|-
 
|-
|Linphone || {{Yes}} || {{No}} || {{No}} || {{No}} || {{Yes}} || GNU/Linux, Windows, OS X, iOS, Android, Blackberry, WinRT || GPLv2+
+
|[http://www.linphone.org Linphone] || {{Yes}} || {{No}} || {{No}} || {{No}} || {{Yes}} || GNU/Linux, Windows, OS X, iOS, Android, BlackBerry, WinRT || GPLv2+ || ZRTP Encryption
 
|-
 
|-
|Jitsi || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || Java || LGPL
+
|[http://sflphone.org/ SFLphone]  || {{Yes}} || {{No}} || {{No}} || {{No}} || {{Yes}} || GNU/Linux || GPLv3 || [https://en.wikipedia.org/wiki/IAX2 IAX2] Support
 
|-
 
|-
|Ekiga || {{Yes}} || {{No}}? || {{No}} || {{No}} || {{Yes}} || GNU/Linux, Windows XP || GPLv2+
+
|[http://jitsi.org Jitsi] || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || Java || LGPL || ZRTP Encrypted Media, OTR, Conference
 +
|-
 +
|[http://https://gajim.org Gajim] || {{No}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || Python || LGPL || OTR
 +
|-
 +
|[http://www.ekiga.org Ekiga] || {{Yes}} || {{No}} || {{No}} || {{No}} || {{Yes}} || GNU/Linux, Windows XP, H323 || GPLv2+
 
|-
 
|-
 
|[http://live.gnome.org/Empathy Empathy] || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || GNU/Linux || GPL || GNOME default
 
|[http://live.gnome.org/Empathy Empathy] || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || GNU/Linux || GPL || GNOME default
 
|-
 
|-
|Psi
+
|Psi ||  ||  ||  ||  ||  ||  ||  ||
 +
|-
 +
|Yate  ||  ||  ||  ||  ||  ||  ||  ||
 +
|-
 +
|Mumble || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || GNU/Linux, Windows, OS X, iOS, Android¹ || BSD ||
 
|-
 
|-
|Yate
+
|[http://sourceforge.net/projects/qradiolink/ QRadioLink] || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || GNU/Linux (audio only, video planned) || GPL ||
 
|-
 
|-
|Mumble || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || GNU/Linux, Windows, OS X, iOS || BSD
+
|Pidgin || {{No}}? || {{Yes}} || {{No}}? || {{No}} || {{Yes}} || GNU/Linux, Windows (no calls) || GPL ||
 
|-
 
|-
|[http://sourceforge.net/projects/qradiolink/ QRadioLink] || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || GNU/Linux (audio only, video planned) || GPL
+
|Twinkle || {{Yes}} || {{No}}? || {{No}} || {{No}} || || || ||
 
|-
 
|-
|Pidgin || {{No}}? || {{Yes}} || {{No}}? || {{No}} || {{Yes}} || GNU/Linux, Windows (no calls) || GPL
+
|Asterisk  || {{Yes}} ||   {{Yes}} || {{No}} || {{No}} || {{Yes}} || GNU/Linux || GPL ||  Server software, VoIP PBX, connect SIP clients and hardware phones
 
|-
 
|-
|Twinkle || {{Yes}} || {{No}}? || {{No}} || {{No}}
+
|sipX  || ||   ||   ||  ||  ||  ||  ||
 
|-
 
|-
|Asterisk
+
|Jitsi Meet  ||  {{No}} ||  {{No}}  ||  {{No}}  ||  {{No}}  ||  {{Yes}}  || Chromium Browser, WebRTC ||  GPL  || Server software
 
|-
 
|-
|sipX
+
|[https://talky.io/ Talky ]  ||  {{No}} ||  {{No}}  ||  {{No}}  ||  {{No}}  ||  {{Yes}}  || Browser, WebRTC ||  || Server software 
 
|-
 
|-
|Tox || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || GNU/Linux, Windows || GPL3
+
|[http://openmeetings.apache.org/ Openmeetings]  ||  {{No}} ||  {{No}}  ||  {{No}}  ||  {{No}}  ||  {{Yes}}  || Browser based, Flash ||Apache  || Server software 
 +
|-
 +
|[http://bigbluebutton.org/ Big Blue Button]  ||  {{No}} ||  {{No}}  ||  {{No}}  ||  {{No}}  ||  {{Yes}}  || Browser based, Flash, WebRTC || GPL  || Server software 
 +
|-
 +
|Tox || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || GNU/Linux, Windows, Mac || GPLv3 || Peer-to-peer, encrypted
 
|}
 
|}
  
== Skype watch ==
+
''¹: Android has free third-party clients like [https://f-droid.org/repository/browse/?fdfilter=plumble&fdid=com.morlunk.mumbleclient Plumble].''
 
 
Community member Andrew Roffey maintains a [http://roffey.org/skype/latest.php page with articles about Skype's activities].
 
  
 
== Personal experiences ==
 
== Personal experiences ==
Line 78: Line 96:
 
* I have used Ekiga in the past and had good luck with it, but only with other Ekiga users on GNU/Linux -- [[User:Mattl|Mattl]] 15:47, 14 May 2012 (EDT)
 
* I have used Ekiga in the past and had good luck with it, but only with other Ekiga users on GNU/Linux -- [[User:Mattl|Mattl]] 15:47, 14 May 2012 (EDT)
 
* Ekiga used to work fine for me on the local network, but failed to connect to another user behind NAT firewall. It does not support UPnP mechanism provided by many modern routers and used by almost every torrent-client and by Skype as well. -- [[User:V2e|v_2e]] 05:49, 24 May 2012 (EDT)
 
* Ekiga used to work fine for me on the local network, but failed to connect to another user behind NAT firewall. It does not support UPnP mechanism provided by many modern routers and used by almost every torrent-client and by Skype as well. -- [[User:V2e|v_2e]] 05:49, 24 May 2012 (EDT)
 +
 +
=== Linphone ===
 +
 +
* Used Linphone for video telephony with my own Asterisk server and the linphone.org service. Lightweight application, audio and video quite good. [[User:beccon|Conrad]] 22:11
  
 
=== Jitsi ===
 
=== Jitsi ===
Line 83: Line 105:
 
* Successfully used to three-way audio-video chat with a pair of Mac users. H.264 only, but VP8 support soon! -- [[User:Mattl|Mattl]] 15:47, 14 May 2012 (EDT)
 
* Successfully used to three-way audio-video chat with a pair of Mac users. H.264 only, but VP8 support soon! -- [[User:Mattl|Mattl]] 15:47, 14 May 2012 (EDT)
 
* VP8 support has landed. --[[User:Johns|Johns]] 11:20, 30 May 2013 (EDT)
 
* VP8 support has landed. --[[User:Johns|Johns]] 11:20, 30 May 2013 (EDT)
 +
* Use Jitsi for personal and collaboration purposes.
 +
 +
'''The good:''' impressive feature set:
 +
* XMPP, IRC, ICQ, Yahoo, Facebook, SIP
 +
* encrypted audio, video and screen sharing (remote control)
 +
* OTR chat encryption
 +
* NAT traversal - ICE and Jingle Nodes
 +
 +
'''The bad:''' severe stability issues:
 +
* connect problems - sometimes no audio, sometimes no video
 +
* audio and video drop outs.
 +
 +
'''The ugly:''' user interface:
 +
* incoming text message catches focus
 +
* but doesn't stay on the screen
 +
 +
[[User:beccon|Conrad]] 22:11 15 Dec 2014 (CET)
  
 
=== Empathy ===
 
=== Empathy ===
  
* Empathy is further improved in Fedora 18/Gnome 3.6.  I am able to make voice calls on an XMPP network from Empathy to Empathy and from Empathy to the Google Talk desktop client.  -- agajan 23:34, 14 May 2013 (EDT)
+
* Empathy is further improved in Fedora 18/GNOME 3.6.  I am able to make voice calls on an XMPP network from Empathy to Empathy and from Empathy to the Google Talk desktop client.  -- agajan 23:34, 14 May 2013 (EDT)
 
* Google browser plugin interop requires a non-free codec (H.264).  Video quality is poor without this codec when calling from Empathy to Empathy.
 
* Google browser plugin interop requires a non-free codec (H.264).  Video quality is poor without this codec when calling from Empathy to Empathy.
 
*: Even with the new Xiph codec?
 
*: Even with the new Xiph codec?
 +
* Worked fine on the local network – failed when NAT involved [[User:beccon|Conrad]] 22:31 15 Dec 2014 (CET)
 +
  
 
[[Category:Priority Project]]
 
[[Category:Priority Project]]
I started to install Empathy on Debian Squeeze, using Synaptic. However, marking Empathy for installation resulted in Synaptic telling me that over 120 other packages were required, starting with brasero, brasero-common, cdrdao, cheese-common ... This is lunacy. Either there is a gross mistake in Empathy's packaging, or it really requires most of Gnome, which rules it out for me (I use xfce).
+
I started to install Empathy on Debian Squeeze, using Synaptic. However, marking Empathy for installation resulted in Synaptic telling me that over 120 other packages were required, starting with brasero, brasero-common, cdrdao, cheese-common ... This is lunacy. Either there is a gross mistake in Empathy's packaging, or it really requires most of Gnome, which rules it out for me (I use Xfce).
 +
 
 +
=== Tox ===
 +
 
 +
I've been using Tox for a while on GNU/Linux and moved a few people to it. I'm now using it as one of my only forms of instant messaging instead of XMPP. [[User:Jookia|Jookia]] 08:42, 23 November 2014 (EST)
 +
 
 +
'''The good:'''
 +
* Peer to peer with trustless relay servers if not possible.
 +
* Uses OTR-level encryption between peers.
 +
* Group chats and calls.
 +
* Supports group voice calls.
 +
 
 +
'''The bad (but planned):'''
 +
* Echo cancellation isn't implemented.
 +
* Multidevice support for one ID isn't possible yet.
 +
* Only an experimental Android client.
 +
* Core not audited. <!-- Is this really a problem? -->
 +
 
 +
'''The ugly:'''
 +
* iOS support might need reimplementation due to GPL not allowing restrictions. However, it should probably be possible through jailbreaking.
 +
* No discussion of telephone network usage.
 +
* No official clients yet. <!-- Just like IRC… is this really a problem? --> (CB: What do we need “official” things for?? What is that BTW - "government approved" =8-O)
 +
 
 +
 
 +
[[User: beccon:beccon]] 30 December 2014 (CET): I evaluated utox on different Linux machines:
 +
'''Good: '''
 +
* Works out of the box. It takes a while to get someone on the roster - but once confirmed then text, file transfer, video and audio work
 +
* Easy to handle interface
 +
 
 +
'''Not so good:'''
 +
* High bandwidth consumption when ideling. (some Megabyte per hour - making it not so suitable for mobile use) Obviously systemic - the client has to do the server's workload too.

Revision as of 05:55, 24 January 2015

Skype Replacement is an item on the FSF's High Priority Projects list.

Protocol, not client

We need to make the discussion about protocols, not clients, (think how people say “send me an email” rather than “send me a Hotmail”).

The primary functionality of Skype we aim to replace is real-time:

  • voice calls (to computers)
  • video calls
  • text chat
  • voice calls to plain old telephones (via a SIP gateway or similar)

Anywhere over the Internet (or beyond), with as many people per conversation, logging, etc. whatever other features (clarify this section as necessary).

The free protocols currently available to do this are.

Voice Video Text Notes
SIP Yes Yes? Yes Sessions?
XMPP/Jingle Yes Yes Yes Full presence, group chat, widely deployed.
Mumble Yes No Yes Intended for gaming, has positional audio support in some games as well as an overlay.
WebRTC Yes Yes No Not a protocol, just media JavaScript APIs.
Tox Yes Yes Yes In early development, not fully implemented, although it seems usable as of now (2015-01-24).

Central Registry?

Apart from technical problems with free Skype replacements, there is a “network effect” problem preventing free protocols (and clients) from becoming popular. This might be solved by explaining the problems of Skype to the people and providing the stories about injustice concerning this software.

Free clients

Lists exist already:

Do we need more information? If so it can go here.

SIP? XMPP/Jingle? Mumble? Tox Active development? Platforms License Notes
Linphone Yes No No No Yes GNU/Linux, Windows, OS X, iOS, Android, BlackBerry, WinRT GPLv2+ ZRTP Encryption
SFLphone  Yes No No No Yes GNU/Linux GPLv3 IAX2 Support
Jitsi Yes Yes No No Yes Java LGPL ZRTP Encrypted Media, OTR, Conference
Gajim No Yes No No Yes Python LGPL OTR
Ekiga Yes No No No Yes GNU/Linux, Windows XP, H323 GPLv2+
Empathy Yes Yes No No Yes GNU/Linux GPL GNOME default
Psi
Yate
Mumble No No Yes No Yes GNU/Linux, Windows, OS X, iOS, Android¹ BSD
QRadioLink No No Yes No Yes GNU/Linux (audio only, video planned) GPL
Pidgin No? Yes No? No Yes GNU/Linux, Windows (no calls) GPL
Twinkle Yes No? No No
Asterisk Yes Yes No No Yes GNU/Linux GPL Server software, VoIP PBX, connect SIP clients and hardware phones
sipX
Jitsi Meet No No No No Yes Chromium Browser, WebRTC GPL Server software
Talky No No No No Yes Browser, WebRTC Server software
Openmeetings No No No No Yes Browser based, Flash Apache Server software
Big Blue Button No No No No Yes Browser based, Flash, WebRTC GPL Server software
Tox No No No Yes Yes GNU/Linux, Windows, Mac GPLv3 Peer-to-peer, encrypted

¹: Android has free third-party clients like Plumble.

Personal experiences

Ekiga

  • I have used Ekiga in the past and had good luck with it, but only with other Ekiga users on GNU/Linux -- Mattl 15:47, 14 May 2012 (EDT)
  • Ekiga used to work fine for me on the local network, but failed to connect to another user behind NAT firewall. It does not support UPnP mechanism provided by many modern routers and used by almost every torrent-client and by Skype as well. -- v_2e 05:49, 24 May 2012 (EDT)

Linphone

  • Used Linphone for video telephony with my own Asterisk server and the linphone.org service. Lightweight application, audio and video quite good. Conrad 22:11

Jitsi

  • Successfully used to three-way audio-video chat with a pair of Mac users. H.264 only, but VP8 support soon! -- Mattl 15:47, 14 May 2012 (EDT)
  • VP8 support has landed. --Johns 11:20, 30 May 2013 (EDT)
  • Use Jitsi for personal and collaboration purposes.

The good: impressive feature set:

  • XMPP, IRC, ICQ, Yahoo, Facebook, SIP
  • encrypted audio, video and screen sharing (remote control)
  • OTR chat encryption
  • NAT traversal - ICE and Jingle Nodes

The bad: severe stability issues:

  • connect problems - sometimes no audio, sometimes no video
  • audio and video drop outs.

The ugly: user interface:

  • incoming text message catches focus
  • but doesn't stay on the screen

Conrad 22:11 15 Dec 2014 (CET)

Empathy

  • Empathy is further improved in Fedora 18/GNOME 3.6. I am able to make voice calls on an XMPP network from Empathy to Empathy and from Empathy to the Google Talk desktop client. -- agajan 23:34, 14 May 2013 (EDT)
  • Google browser plugin interop requires a non-free codec (H.264). Video quality is poor without this codec when calling from Empathy to Empathy.
    Even with the new Xiph codec?
  • Worked fine on the local network – failed when NAT involved Conrad 22:31 15 Dec 2014 (CET)

I started to install Empathy on Debian Squeeze, using Synaptic. However, marking Empathy for installation resulted in Synaptic telling me that over 120 other packages were required, starting with brasero, brasero-common, cdrdao, cheese-common ... This is lunacy. Either there is a gross mistake in Empathy's packaging, or it really requires most of Gnome, which rules it out for me (I use Xfce).

Tox

I've been using Tox for a while on GNU/Linux and moved a few people to it. I'm now using it as one of my only forms of instant messaging instead of XMPP. Jookia 08:42, 23 November 2014 (EST)

The good:

  • Peer to peer with trustless relay servers if not possible.
  • Uses OTR-level encryption between peers.
  • Group chats and calls.
  • Supports group voice calls.

The bad (but planned):

  • Echo cancellation isn't implemented.
  • Multidevice support for one ID isn't possible yet.
  • Only an experimental Android client.
  • Core not audited.

The ugly:

  • iOS support might need reimplementation due to GPL not allowing restrictions. However, it should probably be possible through jailbreaking.
  • No discussion of telephone network usage.
  • No official clients yet. (CB: What do we need “official” things for?? What is that BTW - "government approved" =8-O)


User: beccon:beccon 30 December 2014 (CET): I evaluated utox on different Linux machines: Good:

  • Works out of the box. It takes a while to get someone on the roster - but once confirmed then text, file transfer, video and audio work
  • Easy to handle interface

Not so good:

  • High bandwidth consumption when ideling. (some Megabyte per hour - making it not so suitable for mobile use) Obviously systemic - the client has to do the server's workload too.