用Jabber构建企业即时通讯平台
数字办公
基于Jabber的即时通讯系统就像QQ、MSN一样,是一个Internet上即时发送和接收讯息通讯系统,而且它是开放的。准确地说,Jabber是一个基于XML Stream的协议,用于在网络上的任何两个实体之间实时交换信息的系统。你可以架设自己的Jabber server,而使用不同的Jabber client软件进行通讯。
了解Jabber
Jabber可以实现不同IM软件之间互联互通。例如,通过一个Jabber client,你可以用MSN或ICQ账号,通过Jabber网关登录到MSN或ICQ服务器上,与MSN和ICQ好友进行通讯。在实时通讯的功能上,Jabber IM同其他IM软件基本相同:如群组聊天,好友列表的分类,上线提醒等。Jabber是一个典型的C/S架构,而不同于大多数使用P2P的架构IM软件,就是说在大多数情况下,Client间通讯时,消息都是通过Server传递的。
Jabber分为服务器端和客户端。任意的客户端都能与任意的服务端进行连接。Gtalk就是一个Jabber标准的服务。用任意的客户端都可以用gmail账户登录gtalk服务器。Jabber的常用服务器见表一,Jabber的常用客户端见表二。要了解更多相关的信息请访问Jabber官方网站http://www.jabber.org。

选择服务器端和客户端
我们可以根据自己的爱好选择服务器端和客户端。服务器端笔者推荐使用WildFire,是用Java写的,以前是商用的,后来改成开源了。它的管理控制台是基于WEB的,可以用自带数据库,亦可以使用JDBC连接其他各种类型数据库如Oracle等。可以在不同地方安装多个服务器进行互联互通。Java版本的好处就是Windows和Linux通用。客户端可以使用任何支持Jabber协议的软件,例如Miranda IM,Psi、jajc、Gaim等等。这些客户端有些可以支持Windows,有些是支持Linux,功能也各有特色,大部分都有多国语言包。Windows下对于初级用户推荐Pandion,比较接近MSN外观,容易上手。PSI的功能比较多,对于高级用户不错。
安装服务器端
WildFire现在的版本是3.0.1,安装界面是英文的,它的安装比较简单,运行wildfire_3_0_1.exe即可,单击“Next”按钮直到安装完成。运行界面如图1所示。

单击“Launch Admin”按钮会打开浏览器并显示配置向导。首先选择要采用的语言,选择“中文(简体)…”,单击“Continue”按钮继续,此后显示为中文界面,进入服务器设置页面,如图2所示。

默认的域名为主机名,默认的管理控制台和安全管理控制台的端口分别是9090和9091,你可以按需要修改,只要不冲突即可,单击“继续”按钮进入数据库设置页面。为简单起见,我选择“嵌入的数据库”,如果要使用MySql、ORACLE、DB2等数据库,先要安装好相应的JDBC驱动,常用的创建数据库的脚本在Wildfire安装目录下的resources\database文件夹内。
单击“继续”按钮进入管理员账户设置页面。输入管理员账户密码,单击“继续”按钮完成设置,可以登录到管理控制台了。登录到管理控制台后,显示页面如图3所示。

至此,Wildfire初步配置完毕,可以用Jabber客户端注册、连接了。为了提供更多的功能,你可以安装一些有用的插件,比如broadcast(广播)、contentFilter(内容过滤)等插件;可以为用户分组,还可以用安全设置来提高安全性,比如要求客户端安全联接、安装服务器证书等。
安装使用客户端
Jabber客户端Pandion、PSI的安装都很容易,都支持Windows系统。在简体中文Windows系统下,安装过程为中文界面,Pandion启动后的界面是中文的,而PSI必须手工安装中文语言包(psi_zh.qm)后,再次运行才变成中文界面,它的功能更多些,支持多账户同时登录。
Pandion第一次启动显示登录窗口,如果已经有账户,可以输入账户、密码后登录(图4)。如果没有,单击“注册”按钮启动注册向导。

PSI第一次启动显示添加账户向导,如果要注册新账户,要选中“注册新账户”,单击“添加”按钮启动注册向导,接下来的操作类似,聊天、传送文件界面如图5、图6所示。


Pandion要输入新账户名、密码和服务器的名称,PSI只要求输入Jabber ID、密码,Jabber ID输入格式为“新账户名@服务器的名称”。笔者在自己安装的服务器(mydomain)上注册了“我的工作账号”、“张三”、“甲”、“乙”、“丙”、“丁”等多个账户,并设置了人力资源部、财务部、经营部三个组。
经过测试,Pandion和PSI之间可以互通消息、聊天、开网络会议、群聊等,兼容性很好,但它们之间传输文件的协议不兼容,要传输文件就要用同种客户端软件。
总结
企业在建设即时通讯平台时,可以考虑采用开源的Jabber,大部分Jabber服务器和客户端是免费的,Wildfire是双授权的,它在大部分情况下是免费的,只有为数不多的企业插件是需要商业授权的。Wildfire能大大降低企业在即时通讯软件方面的投资,而它的安全性要高于P2P的即时通讯软件,能满足企业在安全性方面的要求。它支持服务器之间的连接,企业可以与合作伙伴、客户之间通过Jabber通信。就客户端而言,Pandion的人机界面更友好,上手容易,PSI的功能更丰富,适合高级用户。