13.10. Real-Time Communications software

Debian provides a wide range of Real-Time Communications (RTC) client software. The setup of RTC servers is discussed in 第 11.8 节 “Real-Time Communication Services”. In SIP (Session Initiation Protocol) terminology, a client application or device is also referred to as a user agent.

Each client application varies in functionality. Some applications are more convenient for intensive chat users while other applications are more stable for webcam users. It may be necessary to test several applications to identify those which are most satisfactory. A user may finally decide that they need more than one application, for example, an XMPP application for messaging with customers and an IRC application for collaboration with some online communities.

To maximize the ability of users to communicate with the wider world, it is recommended to configure both SIP and XMPP clients or a single client that supports both protocols.

The default GNOME desktop suggests the Empathy communications client. Empathy can support both SIP and XMPP. It supports instant messaging (IM), voice and video. The KDE project provides KDE Telepathy, a communications client based on the same underlying Telepathy APIs used by the GNOME Empathy client.

Popular alternatives to Empathy/Telepathy include Ekiga, Linphone, Psi and Jami (formerly known as Ring).

Some of these applications can also interact with mobile users using apps such as Lumicall on Android.

https://lumicall.org

The Real-Time Communications Quick Start Guide has a chapter dedicated to client software.

http://rtcquickstart.org/guide/multi/useragents.html

TIP Look for clients supporting ICE and TURN

Some RTC clients have significant problems sending voice and video through firewalls and NAT networks. Users may receive ghost calls (their phone rings but they don’t hear the other person) or they may not be able to call at all.

The ICE and TURN protocols were developed to resolve these issues. Operating a TURN server with public IP addresses in each site and using client software that supports both ICE and TURN gives the best user experience.

If the client software is only intended for instant messaging, there is no requirement for ICE or TURN support.

Debian Developers operate a community SIP service at rtc.debian.org. The community maintains a wiki with documentation about setting up many of the client applications packaged in Debian. The wiki articles and screenshots are a useful resource for anybody setting up a similar service on their own domain.

https://wiki.debian.org/UnifiedCommunications/DebianDevelopers/UserGuide

选择 互联网聊天室(IRC)

除了 SIP 和 XMPP 之外,也可以考虑 IRC。这种系统以频道集中,频道名以井号 #开始。每个频道通常讨论一个特定的话题,任意数量的人都可以加入一个讨论频道(但是如果有需求,用户也可以进行一对一的私聊)。IRC 协议已经比较老了,并且不支持端到端的消息加密;仍然可以在用户和服务器之间通过 SSL 隧道内部加密 IRC 协议。

IRC 客户端稍微有点复杂,在公司环境中它们所能提供许多限制特性。例如,如果正常讨论被扰乱,频道“操作者”可以将用户踢出去,甚至永久封账户。

Since the IRC protocol is very old, many clients are available to cater for many user groups; examples include XChat, and Smuxi (graphical clients based on GTK+), Irssi (text mode), Circe (integrated to Emacs), and so on.