`
kurting615
  • 浏览: 95042 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

spark二次开发之广播消息(针对群用户)的实现

    博客分类:
  • IM
 
阅读更多

代码如下

       try {
        	groupNode = new CheckNode("群");
        	groupNodes.add(groupNode);
        	rosterNode.add(groupNode);
			manager = BookmarkManager.getBookmarkManager(SparkManager.getConnection());
		      Collection<BookmarkedConference>    lists =  manager.getBookmarkedConferences();
		for(BookmarkedConference bookMark:lists){
//			if(bookMark.isAutoJoin()){//只能向自动登录的房间发送消息
			CheckNode itemNode = new CheckNode(bookMark.getName());//群名称节点
			groupNode.add(itemNode);
			for (int i = 0; i < 1; i++) {
				Map<String, Affiliate> mbs =ConferenceUtils.getAllMembersInRoom(bookMark.getJid());//得到群聊房间的所有用户
				Set<String> keys = mbs.keySet();
				Iterator<String> iter2 = keys.iterator();
				while (iter2.hasNext()) {
					String key = iter2.next();
					Affiliate affiliate = mbs.get(key);
					if (affiliate == null)
						return;
					String jid = affiliate.getJid();
					String nickName =getNickName(jid);
					CheckNode gNode = new CheckNode(nickName, false, null);//群成员节点
					gNode.setAssociatedObject(jid);//设置节点值
					itemNode.add(gNode);
					nodes.add(gNode);//加入到所有的checkbox选项中
				}
			}
			}
//		}
		} catch (XMPPException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
        

 获取用户昵称代码:

	private String getVcardName(String participantJID, String nickname,
			String hostName) {
		try {
			VCard v = new VCard();
			v.load(SparkManager.getConnection(), participantJID);
			nickname = v.getFirstName();
			if (nickname == null || nickname.equals("")) {
				nickname = participantJID.substring(0,
						participantJID.indexOf("@"));
			}
		} catch (XMPPException e) {
			e.printStackTrace();
		}
		return nickname;

	}

 效果图:



 注意:必须为登录后自动连接的群才可以获取所有用户

  • 大小: 57 KB
分享到:
评论

相关推荐

    大数据Spark二次开发.pdf

    大数据Spark二次开发 大数据Spark二次开发是指使用Apache Spark进行大数据处理和分析的过程。Spark是基于内存的计算引擎,可以快速处理大量数据。 Spark任务运行流程 Spark任务运行流程包括以下几个步骤: 1. ...

    spark最新源码以及二次开发教程

    《Spark最新源码与二次开发详解》 Spark作为一款开源的大数据处理框架,因其高效、易用和灵活性而备受开发者青睐。在Openfire环境中,Spark更扮演着关键的角色,为实时通讯提供支持。本教程旨在深入解析Spark的最新...

    大数据资料Spark\HBase\HDFS 二次开发 PPT

    这份压缩包文件包含了一系列关于大数据技术的PPT和PDF文档,主要聚焦于Spark、HBase、HDFS的二次开发以及相关的技术,如Hive、Kafka、Solr和MapReduce等。以下是这些资源中涉及的主要知识点: 1. **Spark二次开发**...

    spark+openfire二次开发(三)

    《Spark+Openfire二次开发(三):深入理解与实践》 在IT行业中,Spark和Openfire是两个非常重要的开源工具,它们分别在大数据处理和即时通讯领域有着广泛的应用。本篇文章将深入探讨如何对这两者进行二次开发,...

    spark-2聊天客户端,可二次开发

    解压后,开发者可以深入研究源代码,了解其架构和实现方式,以便进行二次开发或定制化改造。 "Readme-说明.htm"文件通常包含了项目的使用指南、安装步骤、系统需求以及可能遇到的问题和解决方案。对于Spark-2来说,...

    spark+openfire二次开发

    Spark+Openfire 二次开发详解 Spark 和 Openfire 是两个基于 Java 的即时通讯平台,分别由 Apache 和 Ignite Realtime 开发。Spark 是一个基于 XMPP 协议的即时通讯客户端,而 Openfire 是一个基于 XMPP 协议的...

    spark 二次开发所需缺失3jar包

    在Spark的二次开发过程中,经常会遇到需要对源码进行修改或扩展以满足特定需求的情况。在这样的场景下,正确配置和构建环境至关重要。标题提到的"spark 二次开发所需缺失3jar包"揭示了在搭建Spark源码工程时,有三个...

    openfire + spark 开发

    我们将从 XMPP 协议的介绍开始,接着讨论如何使用 Spark 和 Openfire 来实现一个完整的 IM 软件开发。 什么是 XMPP? XMPP(Extensible Messaging and Presence Protocol)是一种发送、接收和处理消息的协议。它...

    Spark开发指导文档

    《Spark开发指导文档》 Spark,作为大数据处理领域的重要框架,以其高效、灵活和易于使用的特性,深受开发者喜爱。尤其在结合Scala编程语言时,Spark能够展现出强大的计算能力,为大规模数据处理提供了一种高性能...

    spark+openfire二次开发含截图和详细说明

    ### Spark + Openfire 二次开发知识点详解 #### 一、准备工作 在进行Spark与Openfire的二次开发前,首先需要准备必要的软件包和资源。官方推荐的版本为Openfire 3.6.4以及Spark 2.5.8。需要注意的是,Spark 2.5.8...

    基于Java实现Spark2x新闻网大数据实时分析可视化系统项目【100012794】

    该项目名为“基于Java实现Spark2x新闻网大数据实时分析可视化系统”,是一个综合性的大数据处理与可视化解决方案,主要利用Java和Spark2x技术栈进行构建。在实际的企业环境中,此类项目对于实时处理海量新闻数据,...

    spark 累加器,广播变量.docx

    Spark 累加器和广播变量 Spark 是一个基于内存的分布式计算框架,具有高效、灵活、可扩展等特点。Spark 中的数据结构主要有三种:RDD、累加器和广播变量。本文将对这三种数据结构进行详细介绍。 一、RDD...

    使用kafka,spark,hbase开发日志分析系统

    本使用kafka,spark,hbase开发日志分析系统。 ![architecture](/docs/images/architecture.png "architecture") ### 软件模块 * Kafka:作为日志事件的消息系统,具有分布式,可分区,可冗余的消息服务功能。...

    Spark大型项目实战:电商用户行为分析大数据平台开发实战

    1、项目中全面覆盖了Spark Core、Spark SQL和Spark Streaming这三个技术框架几乎全部的初级和高级的技术点和知识点, 让学员学以致用,通过一套课程,即掌握如何将Spark所有的技术点和知识点应用在真实的项目中...

    Spark开发指南

    最后,Spark GraphX是专门针对图计算的模块,为图数据提供了RDD接口,便于实现复杂的图计算任务。通过GraphX,开发者可以对大规模图数据进行快速的计算和分析。 此外,本指南还涵盖了一些基础知识,如学习Bash脚本...

    java开发spark程序

    在大数据处理领域,Apache Spark因其高效、易用和可扩展性而...通过Java开发Spark程序,开发者可以充分利用已有的Java技能,实现高效的大数据处理。通过不断的实践和学习,你将在Java Spark编程方面取得更大的进步。

    spark插件开发

    本篇文章将详细探讨Spark插件开发的相关知识点,包括Spark架构、插件开发流程、常见工具以及源码解析。 首先,理解Spark的基础架构至关重要。Spark由Driver、Executor和Cluster Manager三部分组成。Driver负责任务...

    Spark大型项目实战-基于spark电商用户可视化行为分析大数据平台开发实战.zip

    Spark大型项目实战—基于spark电商用户可视化行为分析大数据平台开发实战.zip该平台以 Spark 框架为核心, 对电商网站的日志进行离线和实时分析。 该大数据分析平台对电商网站的各种用户行为( 访问行为、购物行为、...

    基于Spark和Elastic Search的电商营销系统用户标签子系统设计与实现.zip

    【资源说明】 1、该资源包括项目的全部源码,下载可以直接使用! 2、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和...基于Spark和Elastic Search的电商营销系统用户标签子系统设计与实现.zip

Global site tag (gtag.js) - Google Analytics