解读AndroidPN的离线消息处理

本人在项目中用到AndroidPN,达到通过服务器给终端推送消息通知的功能。下面讲下个人对AndroidPN的离线消息处理的理解。 AndroidPN的离线消息需要处理以下几种情况: 1.客户端刚上线的时候,AndroidPN服务器需要在根据上线的用户去检索该用户是否在通知消息表中有未发送(s...

2013-08-16 10:21:26

阅读数:4143

评论数:5

即时通讯软件openfire+spark+smack

开发你自己的XMPP IM - [J2EE] 这几天查国内外的资料,发现国内关于这方面间的软件资料太少了,就想在这里写几篇关于此类IM 软件开发的文章。不过别看东西小,涉及的模块可不少。 所以我基本上分为三篇文章来介绍此类软件的开发: 第一篇是关于XMPP 协议是啥,IM 是啥以及一个...

2013-08-13 12:56:43

阅读数:2070

评论数:0

认识smack中的基本对象-Packet

一 对象介绍 Packet是XMPP中信息包的基类,所有存储信息的对象都要继承该类。每个Packet对象必须有一个唯一的ID号,该ID号有系统自动生成,不过也可以自己指定。其常见的字段有"to"、“from"等,Packet的每个属性都由一个键值对表示,键名为字符串...

2013-08-12 17:18:05

阅读数:1163

评论数:0

认识smack中的基本对象 - Registration

一 Registration类的介绍 Registration是信息查询包IQ的子类,所以它也包含表示操作类型的四个属性:GET/SET等,当其类型属性为GET时,表示从服务器获取注册对象的信息;而SET类型则表示创建用户,或者是更新已有用户的账户资料。当创建一个新账户时,XMPP服务器会需要一...

2013-08-12 17:17:17

阅读数:1820

评论数:0

认识smack中的基本对象 - 接口PacketFilter

一 接口PacketFilter的介绍 该接口定义了一种过滤packet对象的方法,对于一个packet结果集,只取具有指定属性的子集。该接口主要用于创建packet的监听器(listener)和收集器(collector),通过PacketFilter对监听器和收集器需要处理的packet进行...

2013-08-12 17:16:16

阅读数:1934

评论数:0

认识smack中的基本对象 - Roster对象

一 Roster对象介绍 将其翻译成中文为"花名册",用来表示一个用户的所有好友清单以及申请加好友的用户清单,为了便于管理,Roster中的用户分组进行管理。当其他用户想申请加好友时,需要向该用户发出一个subcription请求,处理请求的模式有三种: accept_al...

2013-08-12 17:14:36

阅读数:5093

评论数:0

认识smack中的基本对象 - Presence对象

一 Presence对象介绍 与IQ一样,Presence也是继承自XMPP的基类Packet信息包,Presence主要有两个用途:1)告诉服务器所有客户端当前所处的状态,2)发出添加/删除好友请求;每个Presence信息包都有一个类型属性Presence.Type,如下: avail...

2013-08-12 17:12:42

阅读数:5816

评论数:1

IM设计思考:XMPP资源绑定

XMPP协议设计中引入了一个抽象的资源绑定过程,何为资源,如何绑定? 首先这得从JID的格式设计说起,JID是XMPP前身Jabber协议ID的简写,用于唯一标识一个客户身份。一个合法的 JID 包括一组排列好的元素,包括域名(domain identifier),节点名(node iden...

2013-08-12 16:59:15

阅读数:1869

评论数:0

IM设计思考:XMPP安全机制

XMPP(Extensible Messaging and Presence Protocol)是一个应用于实时通信的开放协议,定义了有关即时消息通信的各方面内容,本文主要是关于XMPP安全机制的介绍以及设计实现思考。 XMPP包含一个保证流安全的方法来防止篡改和偷听,包括两个层次的安全机制...

2013-08-12 16:53:43

阅读数:1592

评论数:0

IM设计思考:点对点消息交换

IM最基本的功能就是即时消息交换,那么一个送出的消息将经历哪些过程才能最终送达目的地? 下面给出一个过程描述: 1. 消息从客户端发出经过网络由客户端所直接连接的服务器接收 2. 接入服务器接收到网络字节流后重组消息包(协议解包的过程) 3. 合法性判断 - - 只有已登陆的用户才能发送...

2013-08-12 16:48:22

阅读数:1183

评论数:0

openfire插件开发的几点说明

1.关于插件的目录结构 这个网上的资料很多,但是我觉得要看懂也不太容易,我这里上一个包括了jsp和servlet的图,希望大家能马上看懂: ME的Navigator视图下的截图: build path配置 这里要注意,如果你的plugin里边有自己的jsp文件,那最好把整个...

2013-08-12 15:53:32

阅读数:4359

评论数:1

openfire主要插件介绍

这次我们来介绍下openfire提供的可选插件,方便大家在开发中使用。 openfire插件下载地址: http://www.igniterealtime.org/projects/openfire/plugins.jsp 使用插件时大家请一定要注意插件支持的openfire版本,不要搞错了...

2013-08-12 12:50:04

阅读数:14880

评论数:3

androidpn-client重要BUG-锁屏掉线解决方法

在网上androidpn上的BUG基本都解决了,也多亏牛人们顶力相助,灰常感谢啊。在这里要说的问题是手机锁屏后,客户端心跳包不再发送了。由于android也接触不是很久,对一些系统的机制不太了解,经过多次测试与分析,才发现了是由于锁屏后CPU处于睡眠状态,线程都被挂起,所以在服务器端设定的闲置时间...

2013-08-09 15:20:54

阅读数:2571

评论数:2

【插件开发四】开发OpenFire插件实现Component方式

开发OpenFire插件实现Component方式时,Components可以接收一个特定子域(sub-domain)的所有包。比如test_componet.example.com。所以,一个发送给joe@test_componet.example.com的包将被转发给这个componet。 ...

2013-08-07 11:30:51

阅读数:2716

评论数:1

【插件开发二】开发OpenFire的消息拦截器

如何开发OpenFire插件,请参照 【插件开发一】开发简单OpenFire插件: http://blog.csdn.net/majian_1987/article/details/9813467; 开发消息拦截器的步骤跟开发简单插件步骤一样,直接上代码,要开发消息拦截器插件,就需要插件类实现Pl...

2013-08-07 11:04:57

阅读数:5311

评论数:1

【插件开发三】开发继承IQHandler的插件

OF的插件开发有四种方式,下面讲述如何Register a plugin as an IQHandler。IQ handlers相应包中特定的元素名或命名空间。继承IQHandler的插件,需要注册到IQRouter中去,以下是注册一个继承IQHandler的插件到IQRouter中的代码: IQ...

2013-08-07 10:09:37

阅读数:4327

评论数:2

OpenFire匿名登陆

客户端匿名登陆代码: package com.bis.smack.client; import org.jivesoftware.smack.Chat; import org.jivesoftware.smack.MessageListener; import org.jivesoftware....

2013-08-02 11:29:31

阅读数:5190

评论数:0

openfire插件编写进阶,拦截数据包与发送广播

openfrie官网插件开发人员指南,中文版:http://www.blogjava.net/jyleon/articles/254197.html 分析了openfire的官方插件,插件的import里大概有4中包中的东西, openfire包, dom4j包(这个是解析xml的), t...

2013-08-01 17:49:53

阅读数:2439

评论数:0

【openfire插件开发】packet分类路由(职责链模式yes or no)

最近看到Design Patterns的Chain of Responsibility(职责链模式),印象最深的一点是Client的请求会沿着一条链往后走。非常像Openfire里边处理客户端的packet的过程(也是有一条链存在的)。那么openfire到底有没有用到职责链模式呢? 我带着疑问...

2013-08-01 17:34:14

阅读数:1172

评论数:0

Openfire源码分析

源文地址:http://www.bitiliu.com/archives/tag/openfire   1. Openfire Openfire是开源的实时协作服务器(RTC),它是基于公开协议XMPP(也成为Jabber)消息的。Openfire的核心功能可以概括为:连接管理、消息解析、消...

2013-08-01 14:56:38

阅读数:1097

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭