本文章提供了实现IM聊天程序最基础的配置和使用案例,可以实现点对点聊天。可做为入门阅读使用。文章转载请注明来源:http://blog.csdn.net/fengfeng91
一:搭建服务器:
官方网站下载openfire服务器安装。配置密码,权限,数据库(内置数据库或者添加外部数据库支持Mysql)
注意* 如果配置外部数据库,需先保证数据库服务已被开启,才能保证服务器开启。
Windows环境下开启抛出异常/乱码时,关闭服务器,以管理员身份运行,当出现以下提示时,表示服务器启动成功。
Openfire 3.9.1 [2014-5-27 16:00:15] XXXX: http://zhaofengpc:9090 https://zhaofengpc:9091
|
以下是openfire默认各个端口:
接口 | 端口 |
| 类型 | 描述 |
所有的地址 | 5222 | 客户端到服务器 | 客户端使用标准端口连接到服务器,连接可能没有加密,您可以更新安全设置 为这个端口 | |
所有的地址 | 5223 | 客户端到服务器 | 客户端使用旧的SSL方法连接到服务器的端口。旧的SSL方法不是一个XMPP标准方法,在不久将不被支持,您可以更新安全设置 为这个端口 | |
所有的地址 | 9090 | 管理控制台 | 端口使用不安全的管理控制台访问. | |
所有的地址 | 9091 | 管理控制台 | 端口使用安全的管理控制台访问. | |
所有的地址 | 7777 | 文件传送代理服务器 | 代理服务使用的端口允许在XMPP网络上的两个实体使用文件传送 | |
所有的地址 | 7070 | HTTP绑定 | 使用不安全的HTTP客户端连接端口 | |
所有的地址 | 7443 | HTTP绑定 | 使用安全的HTTP客户端连接端口 | |
所有的地址 | 5229 | Flash Cross Domain | Service that allows Flash clients connect to other hostnames and ports. |
通过Openfire管理控制台管理用户和服务器:http://127.0.0.1:9090/index.jsp
安装smark电脑客户端用于开发测试。
如何使用SDK?
二:客户端用户登陆、会话
与服务器建立连接 |
//连接配置 openfire服务器地址及端口号 XMPPConnection con = new XMPPConnection(); ConnectionConfiguration connConfig=new ConnectionConfiguration("192.168.191.1",5222); con = new XMPPConnection(connConfig); con.connect(); |
用户登陆 |
//登陆 con.login(“UserName”, “Psw”); Presence presence = new Presence(Presence.Type.available); con.sendPacket(presence); con.disconnect();//登陆成功后,关闭连接(登陆成功,失败的判断处理用异常抓取来实现) |
注*以上仅是最基础的配置,实际运用在需要运用单例模式,多线程,hanlder来处理逻辑 |
建立会话---接收消息 |
|
参考项目: |
注意*这里一个完整的用户名是由 用户名称+@+服务器名称(安装时默认取电脑名称) |