构建 基于openfire + jwchat 的 WEB IM

拿到这个任务之后,我便在WEB上寻找文档学习,前人栽树 ,后人乘凉;

 

经过半天的时间,初步了解到:

 

*********************************************************** ****************** 

Jabber 是著名的即时通讯服务服务器,它是一个自由开源软件,能让用户自己架即时通讯服务器,可以在Internet上应用,也可以在局域网中应用。
    XMPP(可扩展消息处理现场协议)是基于可扩展标记语言(XML)的协议,它用于即时消息IM)以及在线现场探测。它在促进服务器之间的准即时操作。 这个协议可能最终允许因特网用户向因特网上的其他任何人发送即时消息,即使其操作系统和浏览器不同。XMPP的技术来自于Jabber,其实它是 Jabber的核心协定,所以XMPP有时被误称为Jabber协议。Jabber是一个基于XMPP协议的IM应用,除Jabber之外,XMPP还支 持很多应用。

*********************************************************************************

1       而常用的jabber服务器软件就是 openfire。openfire是一款基于XMPP协议的一款即时通信         

 

开源的服务器端软件,正如它的开源精神一样,XMPP协议也是容纳各种协议的一种

 

通信协议,总之 ,XMPP协议可说是一种“开放式协议”,允许客户端使用各种通信

 

协议连接到 openfire  (服务器端),所以,使用基于XMPP协议的openfire允许客户

 

使用基于各种协议的客户端进行通信。

 

 

2    JWChat是一个功能强大,基于Web的Jabber™客户端。采用AJAX技术开发,

 

这个客户端只用到了JavaScript与HTML。它具备基本的jabber即时消息功能,用户管理,

 

基于MUC协议的群聊天功能

 

 arrow  下面就来搭建系统了,由于网上的资料大多对自己使用的软件版本说明不全, 我用Tomcat5.0导致我几天时间都在看Service  unavaliable  这个错误(郁闷),经过我的测试 这样的搭配是可以的 :

 

软件版本
openfire                                       3.4.3
jwchat 1.0beta3
tomcat6.0
jdk1.6

 

 

 

 

后来,据网友测试说 Tomcat5.5也可以,而最初我用的是Tomcat5.0,所以,初步推测  tomcat版本号要大于5.5

 

至于jdk为什么要用1.6?  那是因为jwchat里有一个叫JabberHTTPBind的插件是用jdk1.6环境下编译的,所以如

 

果用其他的jdk会提示class  版本不对,当然你也可以把 这些class在自己的jdk环境下重新编译一下 ,不过我没有

 

这么做  :)

 

 

1    架设 openfire  ,如果是安装文件,直接安装就可以了,如果是解压缩文件 ,解压缩之后 ,运行

 

openfire_3_4_3\openfire\bin     下的 openfire.exe     启动好后  ,点击  luanch  Admin  进入进行配置服

 

务器  ,其他的都可以默认值,但是数据库最好使用自己的,你要确认你已经安装好了数据库  ,推荐使用 mysql

 

创建一个数据库名字叫  openfire   。以后next就可以了    启动openfire  并把配置的本地数据库服务打开

 

2  部署jwchat  , 安装好jdk1.6    ,然后安装  tomcat6.0   指定其使用的jdk或jre 为 刚刚安装好的 jdk1.6版

 

本,  把 jwchat.war  放到webapps下热部署,  修改  config.js 

 

var SITENAME = "computer"; //  此处为openfire所设置的 域名

var BACKENDS =


[
  {
   name:"Open Relay",
   description:"HTTP Binding backend that allows connecting to any jabber server",
   httpbase:"/jwchat/JHB/",          //此处为修改后的值    原值为   /JHB/
   type:"binding",
   default_server: SITENAME
  }
];

 

3    打开IE   键入  http://computer:8080/jwchat   如果一切顺利,那么就能登陆到 openfire了

 

祝大家一切顺利 ,我写这篇文章的目的主要是提醒大家注意使用软件的版本,因为这类文章网上已经有很多

 

版本注意了 ,基本 就没什么问题了 。由于软件太大 ,所以这里只能提供  jwchat.war的下载,其他软件要

 

大家到网上去下了,由此带来的不方便,请原谅

 

 

 

 

 

 

 

//Linux

如果是linux系统  大家可以参考如下网址

http://www.cnblogs.com/bluespot/archive/2008/07/17/1243164.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、apache服务器配置。 我们下载安装的是httpd-2.2.17-win32-x86-no_ssl.msi,安装完成后,我们需要配置一下,由于jwchat是用javacript去和openfire进行通讯的,所以他们之间的通讯是基于http的,但是由于浏览器为了安全性是不允许javascript跨域访问的。我们必须通过别的技术来绕过这限制,所以我们采取apache服务器的重定向功能去突破这个限制。 安装完成后进入到apache的安装目找到conf文件夹下的httpd.conf文件,用记事本打开,把下列几个配置项放开(默认被注释掉了) 1、LoadModule rewrite_module modules/mod_rewrite.so 2、LoadModule proxy_module modules/mod_proxy.so 3、LoadModule proxy_http_module modules/mod_proxy_http.so 然后再在本配置文件的末尾加入如下几行配置 ServerName blzc.com <Directory /var/jwchat> Options +Indexes +MultiViews </Directory> AddDefaultCharset UTF-8 RewriteEngine on ProxyPass /jwchat/http-bind/ http://blzc.com:7070/http-bind/ 在此有必要对proxyPass的参数做些说明 “/jwchat/http-bind/”:jwchat就通过访问http://域名/jwchat/http-bind/地址去和openfire通讯,apache接到请求后就会重新定向到http://blzc.com:7070/http-bind/ “http://blzc.com:7070/http-bind/”:被重新定向的地址,也就是我们的openfire的http访问地址。7070端口是openfire的默认访问端口,当然我们也可以进入openfire进行配置。 二、openfire的配置 安装好openfire后进入web式的管理界面,选择服务器-》服务器管理器-》系统属性 在里边添加两个属性 xmpp.httpbind.client.requests.polling = 0 xmpp.httpbind.client.requests.wait = 10 三、部署jwchat jwchat解压后的文件内容放到apache访问目录/jwchat文件夹下, 然后打开config.js文件,把相应的内容修改为如下的形式 var SITENAME = "blzc.com";//你要访问openfir的域名 name:"Native Binding", description:"Ejabberd's native HTTP Binding backend", httpbase:"/jwchat/http-bind/",//访问openfire的地址 type:"binding", servers_allowed:[SITENAME] 最后再把jwchat文件夹考到apache的htdocs文件夹下,重新启动服务,然后访问http://localhost/jwchat即可。 若出现“authorization failed”,则可能是SSL不支持的原因,需要修改jsjac.js,在if(this.has_sasl) 前面加上this.has_sasl=false;

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值