Internal Chat 初体验

我们公司要开发一个CS结构的聊天软件,所以我想找一个开源的chat软件学习学习,不要太复杂的,于是就找到了Internal chat。网上除其主站外,没有任何资料。于是我把自己学习时翻译出的资料拿来共享一下(不一定翻译的完全准确) :) 。
现在这个软件在我电脑上已经可以使用了,功能比较少,但是适合学习。 :) :)
[size=small][align=center]Internal Chat 初体验[/align][/size]
Internal Chat是一个包括服务器端与客户端的即时消息聊天系统。Internal Chat完全采用Java开发,使用PostgreSQL作为DBMS,Jetty作为内嵌http服务器,支持SSL等。
官方网站:http://www.avoware.com/intchat/

一、描述
Internal Chat是一个包括服务器端与客户端的即时消息聊天系统。Internal Chat完全采用Java开发,因此它可以运行在任何支持java的平台上(MS Windows, Linux, xBSD, Solaris 等等)
Internal Chat 采用开放的工业协议,它通过HTTP/HTTPS协议,采用了AJAX请求的强大功能和开放的数据库管理系统(例如:PostgreSQL 和 MySQL.)。
二、历史
略.
三、特点
[list=1]
[*]即时消息。用户能够发送信息和传送文件。服务器可以设置内部网络,因此你不用担心公网的安全问题
[*]非常简单的用户和管理员角色
[*]HTTP被做为传输协议使用
[*]支持SSL
[*]任意选择消息的接收者
[*]你可以为每一个消息类型确定模板。例如,你可以确定工作或一些帮助面板(现在可以是一些计划,但是在将来计划把他制作成插件或服务器单元模块)。在系统中通过确定两种消息类型来确定:“文件传送”和普通消息
[*]添加和删除用户,使之变得可用或不可用,立即显示在所有用。不用用户的相互操作(像在ICQ中添加用户到联系列表中)
[*]支持用户分组
[*]用户状态标识(当用户不在他/她的电脑工作是变换用户状态)
[*]历史记录保存在服务器端,因此用户不会丢失他们的信息
[*]程序支持多中平台。可以在你喜欢操作系统下运行此程序
[*]程序将支持国际化。所有的国际化数据被存储在特殊的文件夹中,所以只需要把它翻译成需要的语言。我做了英语和俄语翻译。如果你可以帮我们翻译其它语言-随时通过email联系我们
[*]还有许多特点
[/list]
四、截图

[list]
[*]User's details

[img]http://sourceforge.net/dbimage.php?id=148439[/img]
[*]Entry point to administration
[img]http://sourceforge.net/dbimage.php?id=148437[/img]
[*]Files tab

[img]http://sourceforge.net/dbimage.php?id=148435[/img]
[*]Common messages tab

[img]http://sourceforge.net/dbimage.php?id=148433[/img]
[*]IntChatClient Connection Manager

[img]http://sourceforge.net/dbimage.php?id=148431[/img]
[/list]

五、系统需求
1、Servier
[list]
[*]安装java jdk 1.5+
[*]PostgreSQL (没有版本要求) ,或者 MySQL v.4.1+ (必须支持编码集UTF8)
[*]服务器端必须有足够的RAM(如果你(ˇˍˇ) 想~保持120-150的连接,硬件要求P4 3GHz, 2GB RAM.,4GB推荐)。

2、Client
[list]
[*]带有java和图型化桌面。
[*]对硬件没有特别要求,推荐内存512M+
[/list]

六、安装:
1、数据库:(以MySQL为例)
[list]
[*]支持PostgreSQL和MySQL,确保MySQL版本支持UTF8字符集。
[*]建立特定数据库
1、创建无权限数据库用户(比如ICUSER)
2、创建空数据库(比如IC), 字符集必须是UFT8.
3、把IC的读写权限付给ICUSER,或者配置ICUSER为IC的owner。
[*]下载Server包(IntChatServer-X.Y.Z.zip)
1、download:http://sourceforge.net/project/showfiles.php?group_id=209007
2、解压到任何位置,从子文件夹 init_sql中找到数据库初始化脚本 PostgreSQL:init_database_ic_postgresql.sql; MySQL:init_database_ic_mysql.sql
[*]初始化数据库IC。
[/list]

2、Server
[list]
[*]下载 server package (IntChatServer-X.Y.Z.zip)
download:http://sourceforge.net/project/showfiles.php?group_id=209007
[*]解压到任意路径
[*]运行 /IntChatServer-X.Y.Z/run.cmd纠正javaw.exe 路径。
[*]打开/IntChatServer-X.Y.Z/conf/Server.xml至少修改一下参数:
(1)FileSpool:internal chat 引入文件的保存路径,默认/IntChatServer-X.Y.Z/spool
(2)数据库访问参数:
例如:

<!-- MySQL -->
<JDBCDriver>com.mysql.jdbc.Driver</JDBCDriver>
<DBHost>localhost</DBHost>
<DBPort>3306</DBPort>
<DBUseSSL>false</DBUseSSL>
<DBName>ic</DBName>
<DBUser>ICUSER</DBUser>
<DBPassword>000000</DBPassword>

(3)运行IntChatServer-X.Y.Z/run.cmd启动server。通过log文件(/ IntChatServer-X.Y.Z/logs)检测server是否启动正常。
[*]应用SSL
(1)通过IBM's KeyMan tool 或者command line tool 生成Java Key Store (JKS),例如my.jks
(2)把JKS-file (my.jks)放入/IntChatServer-X.Y.Z/conf 中。
(3)配置server.xml (/IntChatServer-X.Y.Z/conf/Server.xml)

<UseSSL>true</UseSSL>
<!-- KeyStore 路径-->
<KeyStore>./conf/MY.jks</KeyStore>
<InputKeyStorePassword>******</InputKeyStorePassword>
<OutputKeyStorePassword>******</OutputKeyStorePassword>

[/list]

3、Client
Installation::Client
[list]
[*]下载client package(IntChatClient-X.Y.Z.zip)。
[*]解压到任意位置
[*]运行 / IntChatClient-X.Y.Z/run.cmd纠正javaw.exe 路径。
[*]运行 run.cmd 启动客户端。
[/list]
Installation::Client::Deployment using Java Web Start
[list]
[*]我们认为最好的最方便的部署Internal Chat 客户端的方式是使用Java Web Start.
[*]你只要搭建好JRE,其余的工作Java Web Start都会完成。
[*]从Internal Chat服务端5.6.0版本运行用来部署的JNLP-file
[*]安装并且运行Internal Chat服务端。默认设置监听主机intchat.mydomain,端口6556,SSL激活状态(也就是使用HTTPS,不是HTTP)
[*]确定JRE已经安装在客户端电脑上
[*]用浏览器访问这个URL地址:https://intchat.mydomain:6556/webstart/IntChatClient.jnlp
[*]也就是刚才请求访问的Internal Chat服务页面
[*]webstart/IntChatClient.jnlp
[*]由于JNLP是自主的文件类型,通常Java Web Start自动运行。如果没有,检查你系统中的数据库
[*]Java Web Start第一次从Internal Chat服务端下载客户端JAR,然后如果你确认有Andrew Orlov的认证,做请求操作。也就是(Java 安全请求的必要条件-为了运行所有通过Java Web Start从互联网上下载的JAR文件,必须标识可信的发行者)。点击YES,否则客户端不能被运行。
[*]下次,再客户端没有变化的前提下,Java Web Start将不会下载客户端包。
[*]像往常一样使用客户端
[/list]

背景
客户端包被存放在服务端的webstart子文件夹下。如果发布新版本的Internal Chat 客户端,只要更新新的客户端包,Java Web Start将自动更新到客户端电脑(当然如果你是通过上面的JNLP链接运行的客户端)。既然这样Internal Chat服务端作为普通的HTTP服务运行,提供一些静态内容
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值