NetBeans Collaboration更有趣的应用是可以用它把自己所有的IM帐号都集中在一起, 作成一个All in One的客户端. 这篇介绍里只实验了MSN, Gtalk 和Yahoo的帐号.
用NetBeans Collaboration建立All in One的IM客户端步骤如下:
在Collaboration Server 上配置Gateway.
针对OpenFire, 需要从http://www.igniterealtime.org/projects/openfire/plugins.jsp上下载gateway.jar文件
在OpenFire中, 选择”插件”Tab, 在”Upload Plugin”中, 点击”Browse”按钮, 选择下载的gateway.jar. 再 点击 “Upload Plugin”按钮.
4. OpenFire成功安装上Gateway Plugin之后, 选择"服务器"Tab, 可以在左侧拦最下方看到新增加的”Gateway”. 点击Gateway下的setting, 出现如下界面.选择”MSN Messenger”, “Yahoo Messenger”和"Google Talk". 通过"Test Connection"按钮来测试服务器是否能够连通.
5.在Gateway中注册 IM 帐号, 选择Gateways -> Registrations 点击” Add a new registration”. 以MSN为例,选择Gateway 是"MSN”, username输入MSN的帐号, password中输入对应MSN帐号的密码.而User(JID)和nickname可以任意,比如ada_msn, 对应的是OpenFire Server上的用户.
输入完成后, 点击"Add"和"Update”按钮.
6.接下来为IM建立对应的OpenFire帐号,选择"用户/组"Tab, 点击”新建用户”. 在”用户名”中输入前一步设置的对应IM帐号的User(JID), 例如ada_msn. 这里的密码可以自由设定.
7.创建完新用户, 查看ada_msn"用户属性"下的"Roaster”, 可以看到这个用户名已经自动和Gateway 中的MSN Transport关联起来.
8.回到NetBeans Collaboration界面, 添加一个ada_msn帐号. 添加帐号的第一步选择”I hava a existing account on a collaboration server and just need to configure this computer to access it”.
9. 重复5, 6, 7,8 步骤, 可以添加多个IM帐号, 然后就可以在NetBeans Collaboration中同时登录多个IM帐号, 下图界面显示了同时登陆Gtalk,MSN和Yahoo, 并且和Yahoo Messenger 互聊的界面.
提醒:
OpenFire Gateway 目前不支持代理服务器.
NetBeans 6.0, 对应的是Developer Collaboration 1.2, 有时候会出现”Error: object doesn not represent a valid JID” 的错误. NetBean 6.1 会解决这一问题(Developer Collaboration 1.3)
IM登录不上的原因可能是配置的问题,例如Gtalk 的缺省端口是5222, 如果连不上,尝试端口5223,另外尽量采用在中国境内的服务器地址,比如Yahoo Messenger 缺省地址是scs.msg.yahoo.com, 国内应该是cn.scs.msg.yahoo.com
NetBeans Collab 中IM的Contact List初次导入,需要Spark(http://www.igniterealtime.org/downloads/index.jsp)的协助, 就是先用Spark成功登陆OpenFire一次后,再使用 NetBeans Collab.
参考: