openfire+spark+smack实现即时通讯】的更多相关文章

近公司项目需要用到即时通讯功能,经过调研发现openfire+spark+smack可以实现.在网上找了很久,资料都十分有限,即使有些朋友实现了也说的不清不楚.于是决定自己研究,耗时一周的时间实现了文字通讯和文件传输的功能.现发帖分享给有需要的朋友,也希望大家能够把自己的资料都分享出来,不要敝扫自珍. 废话说够了,现在开始上干货: 1.openfire是什么?openfire是一个即时通讯服务器,也称之为即时通讯平台.它是基于XMPP协议的,大家所熟悉的通讯软件QQ.MSN和Gtalk等等,其中…
所以我基本上分为三篇文章来介绍此类软件的开发: 第一篇是关于XMPP 协议是啥,IM 是啥以及一个比较有名的开源实现,该开源实现包括三个部分(Spark.Smack和Openfire): 第二篇讲如何开发基于Spark 的客户端IM 插件部分: 第三篇讲如何开发基于Openfire 服务器端的插件部分. 好了,进入正题吧. 什么是XMPP? Extensible Messaging and Presence Protocol,简单的来讲,它就是一个发送接收处理消息的协议,但是这个协议发送的消息,…
smack jar下载地址 http://www.igniterealtime.org/downloads/download-landing.jsp?file=smack/smack_3_2_2.zip 由于项目需要,开始搞即时通讯相关技术,最后敲定openfire+smack实现,保留部分测试代码,留作参考: import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import ja…
在即时通信这个领域目前只找到一个XMPP协议,在其协议基础上还是有许多成熟的产品,而且是开源的.所以还是想在这个领域多多了解一下. XMPP协议:具体的概念我就不写了,毕竟这东西网上到处是.简单的说就是基于XML的一种协议.其解决了什么问题呢?就是给即时通讯制定了标准,大家只要遵守标准就可以完成即时通信的功能.有了标准的好处就是可以有各种不同的实现,大家在这个标准上发展自己的特长.而且还给即时通信提供了互联互通的基础.XMPP协议据网上说还是比较优秀的,表现就是google等大公司都在自己的即时…
前言 Java领域的即时通信的解决方案可以考虑openfire+spark+smack.当然也有其他的选择. Openfire 是基于Jabber协议(XMPP)实现的即时通信服务器端版本,目前建议使用3.8.1版本,这个版本是当前最新的版本,而且网上可以找到下载的源代码. 即时通信客户端可使用spark2.6.3,这个版本是目前最新的release版本,经过测试发现上一版本在视频支持,msn网关支持上可能有问题,所以选择openfire3.8.1+spark2.6.3是最合适的选择. Smac…
之前学习了通过Openfire+spark+smack的模式来完成我们的即时通讯软件,上次我们已经完成了Openfire的安装和配置,这次我们继续完成我们的客户端部分. 1.首先我们通过百度smack来下载我们所需要的jar包,将下载好的jar包导入到我们的工程中,创建一个工具类XmppTool: package com.xmpp.client.util; import org.jivesoftware.smack.ConnectionConfiguration; import org.jive…
首发:个人博客 必须说明:smack最新的4.1.1,相对之前版本变化很大,而且资料缺乏,官方文档也不好,所以还是用老版本3.2.2吧.这篇博文中的代码是4.1.1版的,但不推荐用它.用openfire做服务器,用spark做帮助调试的客户端,用smack(官方文档在这里,感觉写得非常不好)做java的库,来完成即时通讯功能. 1.安装openfire在官网下载安装即可. 2.安装spark在官网下载安装即可. 3.maven引入smack <dependency>              …
重新整理下这篇文章. 这篇文章的主要任务是使用AndroidStudio,通过Openfire,利用XMPP协议完成一个可以即时通讯.拥有好友系统的聊天软件. 一.服务器配置与相关库 理论不多说,只谈怎么操作.下面先说三个工具. 1.mysql服务器(版本5.7.25) 首先电脑要安装好mysql,这里建议不要安装最新版,因为本人之前就是安装的8.0最新版,然后跟Openfire服务器进行对接的时候出现了非常多问题,解决后,用JDBC连接mysql时也出了许多问题,还是无法解决的.但是换成5.7…
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina.com Openfire XMPP Smack RTC IM 即时通讯 聊天 MD 目录 目录简介Openfire 简介相关的几个名词SmackSparkJIDXMPPOpenfire 安装配置Stanza 节共同属性Presence 在线状态Message 传递消息IQ 请求响应测试代码conn…
最进开始做一些android的项目,除了一个新闻客户端的搭建,还需要一个实现一个即时通讯的功能,参考了很多大神成型的实例,了解到operfire+asmack是搭建简易即时通讯比较方便,所以就写了这篇博客. 一.基础知识(这是复制别人的) XMPP协议简介 XMPP协议(Extensible Messaging and PresenceProtocol,可扩展消息处理现场协议)是一种基于XML的协议,目的是为了解决及时通信标准而提出来的,最早是在Jabber上实现的.它继承了在XML环境中灵活的…