构建 基于openfire + jwchat 的 WEB IM

关于Openfire 我想大多数人还不是很了解在这里先简单的介绍一下Openfire
Openfire 采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议。Openfire安装和使用都非常简单,并利用Web进行管理。单台服务器可支持上万并发用户。
那么XMPP是什么?大家可以去看我的上一篇文章,在这里就不多介绍了。
开始进入今天的主题
  首先是安装openfire:
  怎么安装Windows环境下的openfire,大家可以去看看这位大神写的文章,地址http://www.cnblogs.com/hoojo/archive/2012/05/17/2506769.html
  安装linux环境下的openfire:
  1、下载openfire安装包:openfire_3_5_1.tar.gz 拷贝到/opt目录,进入/opt运行以下命令进行安装。

    [root@localhost root]# cd /opt
    [root@localhost opt]# tar -xzvf openfire_3_5_1.tar.gz

2、在mysql中创建数据库

    [root@localhost root]# mysql
    mysql> create database openfire;

3、导入mysql数据录对应的sql,创建数据表

    mysql> use openfire
    mysql> source /opt/openfire/resources/database/openfire_mysql.sql;
   
4、启动openfire

    [root@localhost root]# /opt/openfire/bin/openfire start

5、打开浏览器开始设置openfire

    据有关人士提醒,linux的hostname必须设置和该主机IP对应域名一致。
    url:http://[server ip]:9090
    根据向导设置,其中数据库选择“外部数据库”
    DB SERVER url:http://[server ip]:3306/openfire?useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8

6、openfire安装完毕了,默认管理员用户名密码为 admin 123456
  今天主要是将如何去安装jwchat。
  1、下载jwchat.war,下载地址:http://www.iteye.com/topic/154697
2、将jwchat.war放置到webapps目录下;
3、在tomcat 的 conf/server.xml中 hostname下添加
        <Context path="/jwchat" docBase="jwchat.war" debug="0" privileged="true"></Context>
       启动tomcat失败。但是在webapps下产生了jwchat目录,于是把<Context/>改成
       <Context path="/jwchat" docBase="jwchat" debug="0" privileged="true"></Context>
       启动tomcat成功,可以访问 http://localhost:8080/jwchat 了,但是不能登录,报错:service unavailable
4、参照mircle的《构建 基于openfire + jwchat 的 WEB IM》一文,
        修改jwchat/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
              }
            ];

       再登录,还报错:service unavailable

       在jwchat/jsjac.js中找到
        if(this.has_sasl)行 (如果你的编辑器有行号 ,大概在302行)
        在它前面加上this.has_sasl = false;
  如果此时你进入之后还是显示service unavailable,我还有一个方法:你把地址改为http://127.0.0.1:8080/jwchat/ 就应该可以了
 
  如果大家还有什么问题,可以留言,或者要源码也可以留言

你可能感兴趣的:(openfire,XMPP,webIM,jwchat)