Smack Extensions用户手册

XMPP协议包括基本协议和许多可选扩展,通常记录为“XEP”。Smack为核心XMPP协议提供了org.jivesoftware.smack包,为许多协议扩展提供了org.jivesoftware.smackx包。

本手册提供了有关每个“smackx”扩展的详细信息,包括它是什么,如何使用它,以及一些简单的示例代码。

目前支持Smack的XEP(所有子项目)

名称 XEP 描述
Nonzas XEP-0360 N / A 定义术语“Nonza”,描述不是Stanza的每个顶级流元素。

目前支持smack-tcp的XEP

名称 XEP 描述
流管理 XEP-0198 N / A 允许在两个XMPP实体之间主动管理XML流(节确认,流恢复)。

Smack Extensions和当前支持的smack扩展的XEP

名称 XEP 描述
数据表格 XEP-0004 N / A 允许使用表单收集数据。
上次活动 XEP-0012 N / A 传达有关与XMPP实体关联的上一个活动的信息。
灵活的离线消息检索 XEP-0013 N / A 扩展,用于灵活,类似POP3的离线消息处理。
隐私列表 XEP-0016 N / A 启用或禁用与其他实体的通信。
服务发现 XEP-0030 N / A 允许在XMPP实体中发现服务。
扩展的Stanza寻址 XEP-0033 N / A 允许在节中包含标题以指定多个收件人或子地址。
多用户聊天 XEP-0045 N / A 允许配置,参与和管理各个基于文本的会议室。
带内字节流 XEP-0047 N / A 允许任何两个实体使用普通XMPP在它们之间建立一对一的字节流。
书签 XEP-0048 N / A 书签,例如MUC和网页。
私人数据 XEP-0049 N / A 管理私人数据。
Ad-Hoc命令 XEP-0050 N / A 广告和执行特定于应用程序的命令。
电子名片-TEMP XEP-0054 N / A 目前正在使用的vCard-XML格式。
Jabber搜索 XEP-0055 N / A 在XMPP网络上搜索信息存储库。
结果集管理 XEP-0059 N / A 浏览并以其他方式管理大型结果集的接收
PubSub的 XEP-0060 N / A 通用发布和订阅功能。
SOCKS5 Bytestreams XEP-0065 N / A 任何两个XMPP实体之间的带外字节流。
XHTML-IM XEP-0071 N / A 允许使用XHTML发送和接收格式化的消息。
带内注册 XEP-0077 N / A 使用XMPP服务进行带内注册。
高级消息处理 XEP-0079 N / A 使实体能够请求和服务器执行XMPP消息节的高级处理。
用户位置 XEP-0080 N / A 启用了有关实体当前地理或物理位置的信息。
XMPP日期时间配置文件 XEP-0082 N / A XMPP中日期和时间表示的标准化。
聊天状态通知 XEP-0085 N / A 在聊天会话中传达用户的状态。
时间交流 XEP-0090 N / A 允许在用户之间共享本地时间信息。
软件版本 XEP-0092 N / A 检索并公布XMPP实体的软件应用程序。
流入 XEP-0095 N / A 在任意两个XMPP实体之间启动数据流。
SI文件传输 XEP-0096 N / A 通过XMPP在两个用户之间传输文件。
实体能力 XEP-0115 N / A 实体功能的广播和动态发现。
叮铃 XEP-0116 N / A 启动和管理两个XMPP实体之间的会话。
数据表单验证 XEP-0122 N / A 使应用程序能够指定其他验证指南。
服务管理 XEP-0133 N / A 使用Ad-Hoc命令对服务器和组件进行服务级别管理的建议最佳实践。
流压缩 XEP-0138 N / A 支持XMPP流的可选压缩。
数据表单布局 XEP-0141 N / A 使应用程序能够指定表单布局。
个人赛事协议 XEP-0163 N / A 使用XMPP发布 - 订阅协议来广播与XMPP帐户关联的状态更改事件。
邮件传递收据 XEP-0184 N / A 邮件传递收据的扩展名。发件人可以请求通知邮件已发送。
阻止命令 XEP-0191 N / A 通信阻止旨在比隐私列表(XEP-0016)更简单。
XMPP Ping XEP-0199 N / A 通过XML流发送应用程序级ping。
实体时间 XEP-0202 N / A 允许实体传达当地时间
延迟交货 XEP-0203 N / A 用于传达XML节已经延迟传递的事实的扩展。
XMPP超过BOSH XEP-0206 N / A 使用双向流超过同步HTTP(BOSH)来传输XMPP节。
注意 XEP-0224 N / A 引起其他用户的注意。
二进制比特 XEP-0231 N / A 在XML节中包含或引用一小部分二进制数据。
资源锁定的最佳实践 XEP-0296 N / A 指定Jabber / XMPP客户端关于何时锁定和解锁资源的最佳实践。
最后的消息更正 XEP-0308 N / A 提供一种指示消息是对最后发送的消息的更正的方法。
在线状态下的最后用户交互 XEP-0319 N / A 通过XMPP在线通知传达上次用户交互的时间。
群聊邀请 N / A N / A 向其他用户发送邀请以加入群聊室。
Jive Properties N / A N / A 去做

实验Smack Extensions和目前支持的smack实验的XEP

名称 XEP 描述
消息碳 XEP-0280 N / A 通过将出站消息复制到所有感兴趣的资源,为参与对话的用户保留所有IM客户端。
消息归档管理 XEP-0313 N / A 查询和控制存储在服务器上的消息存档。
物联网 - 传感器数据 XEP-0323 N / A 通过XMPP进行传感器数据交换。
物联网 - 供应 XEP-0324 N / A 物联网的供应,访问权限和用户权限。
物联网 - 控制 XEP-0325 N / A 描述如何控制基于XMPP的传感器网络中的设备或执行器。
HTTP over XMPP传输 XEP-0332 N / A 允许通过XMPP对等网络传输HTTP通信。
聊天标记 XEP-0333 N / A 在聊天中标记最后收到,显示和确认的消息的解决方案。
消息处理提示 XEP-0334 N / A 提示实体路由或接收消息。
JSON容器 XEP-0335 N / A 在XMPP Stanzas中封装JSON数据。
物联网 - 发现 XEP-0347 N / A 描述如何由其所有者安装和发现事物。
客户国家指示 XEP-0352 N / A 客户端指示其活动/非活动状态的方法。
推送通知 XEP-0357 N / A 定义了一种管理来自XMPP服务器的推送通知的方法。
稳定和独特的Stanza ID XEP-0359 0.5.0 该规范描述了消息的唯一且稳定的ID。
HTTP文件上传 XEP-0363 0.3.1 请求将文件上载到HTTP服务器并获取可共享URL的权限的协议。
参考 XEP-0372 0.2.0 将提及或外部数据等引用添加到节。
扰流板消息 XEP-0382 0.2.0 指出应将消息正文视为扰流板。
OMEMO多端消息和对象加密 XEP-0384 N / A 使用OMEMO加密加密消息(目前仅使用smack-omemo-signal - > GPLv3)。
一致的颜色生成 XEP-0392 0.4.0 为用户名等标识符生成一致的颜色,以提供一致的用户体验。
消息标记 XEP-0394 0.1.0 在保持正文和标记信息分离的同时设置消息体。

非官方的XMPP扩展

名称 XEP 描述
多用户聊天灯 XEP-XXXX N / A 针对移动XMPP应用程序和特定环境的多用户聊天。
Google GCM JSON有效负载 N / A N / A 语义上与XEP-0335:JSON容器相同。

Legacy Smack Extensions和目前支持的smack-legacy的XEP

如果XEP变为“已弃用”或“已过时”,则代码将移至smack-legacy子项目。

名称 XEP 描述
消息事件 XEP-0022 N / A 请求并响应消息事件。
名册项目交换 XEP-0093 N / A 允许在用户之间共享名册数据。

Smack Extensions用户手册的更多相关文章

  1. Smack类库详细介绍

    原文地址:http://blog.csdn.net/xunshu/archive/2008/03/27/2223817.aspx Smack是一个为使用XMPP服务器聊天和发送即时消息交流而提供的库. ...

  2. Smack 4.3.4 API

      Smack 4.3.4 API 包 包 描述 org.igniterealtime.smack.smackrepl Smack的REPL(读取评估打印循环). org.jivesoftware.s ...

  3. scrapy反反爬虫

    反反爬虫相关机制 Some websites implement certain measures to prevent bots from crawling them, with varying d ...

  4. scrapy反反爬虫策略和settings配置解析

    反反爬虫相关机制 Some websites implement certain measures to prevent bots from crawling them, with varying d ...

  5. W5300E01-ARM 交叉编译器(Cross Compiler)用户手册

    W5300E01-ARM是基于W5300的ARM功能测试评估板: 1      简介 当用户的开发环境与目标系统不同时就会用到交叉编译器. 例如,当开发基于ARM的嵌入式系统时,用户就需要在电脑上写出 ...

  6. 技术笔记:XMPP之openfire+spark+smack

    在即时通信这个领域目前只找到一个XMPP协议,在其协议基础上还是有许多成熟的产品,而且是开源的.所以还是想在这个领域多多了解一下. XMPP协议:具体的概念我就不写了,毕竟这东西网上到处是.简单的说就 ...

  7. Chrome插件(Extensions)开发攻略

    本文将从个人经验出发,讲述为什么需要Chrome插件,如何开发,如何调试,到哪里找资料,会遇到怎样的问题以及如何解决等,同时给出一个个人认为的比较典型的例子——获取网页内容,和服务器交互,再把信息反馈 ...

  8. Rafy 框架-发布网页版用户手册

    前段时间把 Rafy 的用户手册由 CHM 格式转换为了网页格式,而且发布到了 github.io 上,即方便文档的实时更新,也方便大家查看. Rafy 用户手册网页版地址: http://zgynh ...

  9. 测试EntityFramework,Z.EntityFramework.Extensions,原生语句在不同的查询中的表现。原来池化与非池化设定是有巨大的影响的。

    Insert测试,只测试1000条的情况,多了在实际的项目中应该就要另行处理了. using System; using System.Collections.Generic; using Syste ...

随机推荐

  1. construct2 入门

    construct2特点 construct2是一款跨平台二维游戏开发引擎,不需要编码,通过定义各个部件和事件完成html5的游戏开发.该引擎可以将开发的封装成多种形式,如phonegap.cocoo ...

  2. 团队第六次作业:Beta版本冲刺成绩汇总

    一.作业题目 团队第六次作业:Beta版本冲刺 二.作业评分标准 博客评分规则(总分100)博客要求 1.冲刺博客每篇占20分.(3次) - (1) 各成员该天完成的工作,以及明天的任务安排(表格的形 ...

  3. 团队第五次——Alpha2的发布

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/xnsy/2019autumnsystemanalysisanddesign/ 这个作业要求在哪里 https:// ...

  4. Spring中@Autowired、@Resource和@Inject注解的使用和区别

    在使用Spring进行项目开发的时候,会大量使用到自动装配,那自动装配是什么呢?简单来说:Spring 利用依赖注入(DI)功能,完成SpringIOC容器中各个组件之间的依赖关系赋值管理. 下面介绍 ...

  5. vue使用swiper模块滑动时报错:[Intervention] Ignored attempt to cancel a touchmove event with cancelable=false, for example becaus

    报错: vue报这个错 [Intervention] Ignored attempt to cancel a touchmove event with cancelable=false, for ex ...

  6. fiddler深入学习

    参考:https://www.cnblogs.com/zhizhiyin/p/6807649.html http://blog.chinaunix.net/uid-27105712-id-373882 ...

  7. JMeter【第四篇】参数化

    概念 参数化的原因,并不是网上说的真实模拟不同用户,真实反应服务器性能,而是: 数据唯一性(比如注册名不能一样) 避免数据库查询缓存 如何避免参数化: 去掉唯一性校验的约束 关闭数据库的查询缓存,my ...

  8. JMeter5.1开发http协议接口之form表单脚本

    get请求--jmeter:form表单 下载文件 响应结果 post请求--jmeter:form表单 登录请求 响应结果 post请求--jmeter:form表单中传token 请求(token ...

  9. Python基础之函数定义及文件修改

    函数 函数的定义 #登录函数和注册函数 def register(): """注册函数""" username = input('请输入你的 ...

  10. docker删除镜像Error response from daemon: conflict: unable to remove repository reference

    Docker无法删除images,由于是依赖container. 1.进入root权限   sudo su 2. 列出所有运行或没有运行的镜像  docker  ps  -a 3.停止containe ...