`
baobeituping
  • 浏览: 1065148 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

smack操作openfire的API介绍(1)

 
阅读更多

1.连接openfire服务器

  /**
     * 建立即时通讯连接
     * @return
     */
   
  
    public boolean xMPPConnect() {
        boolean result = false;
        ConnectionConfiguration config = new ConnectionConfiguration(serverIp);

        //serverIp表示的是你openfire服务器地址
        config.setReconnectionAllowed(false);

        con = new XMPPConnection(config);

        try {
         //通过xmpp的链接跟OPENFIRE服务器链接,并且通过login的方法,将用户名和密码传递到服务器中,前提是服务器中必须先有关该登陆人员的ID和密码

            con.connect();
           
            con.login(“xxxx”, "xxxxx", "cti", true);
            logger.info(con.getUser() + " 登录即时通讯服务器成功!");
            //系统登陆了以后,XMPPConnection将用户的ID以"ID@jobcn-da5f2ccee/cti"这种方式保存,所有在取得当前用户的时候,要拆分字符串,ID表示的是你登录的账号,@后面的字符串表示的是你在openfire所这是的域名
            result = true;
        } catch (XMPPException ex) {
            logger.warning(person.getId() + " 登录即时通讯服务器失败!");
            result = false;
        }
        return result;
    }

2.初始化客户端信息

   /**
     * 初始化即时通讯
     */
    public void initXMPP() {
        roster = con.getRoster();
        roster.addRosterListener(this);
        PacketFilter filter = new PacketTypeFilter(Message.class);
        con.addPacketListener(this, filter);
        con.addConnectionListener(this);
        //默认开放的两个组"我的好友","最近联系人",这是openfire指定的,名字固定的就是"我的好友","最近联系人"
        RosterGroup rosterGroup_friends = roster.getGroup("我的好友");
        if (rosterGroup_friends == null) {
            rosterGroup_friends = roster.createGroup("我的好友");
        }
        RosterGroup rosterGroup_currentContract = roster.getGroup("最近联系人");
        if (rosterGroup_currentContract == null) {
            rosterGroup_currentContract = roster.createGroup("最近联系人");
        }
      
       
       
        FileTransferManager fileTransferManager = new FileTransferManager(con);
        fileTransferManager.addFileTransferListener(this);
    }

  

分享到:
评论

相关推荐

    基于smack连接openfire服务器的例子-JAVA

    Smack简化了与XMPP服务器的通信,提供了丰富的API来处理用户认证、会话管理、消息发送和接收、以及用户状态等。 首先,确保已经正确地安装了Smack库。通常,这可以通过在项目的构建路径中添加Smack的JAR文件或者...

    基于smack4.1.4 openfire的即时通讯(IM)

    搭建openfire后,用 smack api 连接服务的测试demo。运行官网范例,发现其实不易,smack4.1.4中缺少很多依赖于第3方的jar包。不断debug甚是痛苦,终于跑起来了。分享出来给只是想要个初体验的同学。

    IM(Spark+Smack+Openfire)开发资料详细说明文档

    本文档详细介绍了基于Spark、Smack和Openfire构建IM系统的开发过程和关键知识点,旨在帮助开发者更好地理解和实践。 1. **Spark**: Spark是一款开源的Web即时通讯客户端,支持多种平台,包括Windows、Linux和Mac ...

    android使用smack,openfire通信

    Asmack是smack的android版,是对xmpp协议进行了封装,并提供了丰富的api,简化了操作。Openfire是一个开源的IM服务器,基于Xmpp实现。换句话说使用xmpp开发即时通讯应用的话,服务器端已经开发好了,就是openfire。

    websocket+smack+openfire的所有lib库

    WebSocket、Smack 和 OpenFire 是三个在IT领域中与实时通信相关的关键技术,它们共同构建了高效、实时的网络通信解决方案。 WebSocket 是一种在 Web 应用程序中实现双向通信的协议,它允许客户端和服务器之间建立...

    websocket+smack+openfire的的源代码

    开发者可以通过这个源代码学习如何配置 Openfire 服务器,设置 WebSocket 连接,以及如何在客户端应用中使用 Smack API 进行即时通讯功能的开发。此外,源代码还可能包含了错误处理、安全配置、性能优化等方面的实践...

    Smack访问Openfire服务器的调用

    8. **群聊功能**:Openfire支持多用户聊天(MUC),Smack通过`MultiUserChat`类提供了相关的操作,如创建、加入群聊,发送群聊消息,管理群聊成员等。 9. **扩展功能**:Openfire和Smack都支持自定义XML扩展,这...

    smack连接openfire用到的jar包

    Openfire支持多种操作系统,并且具备强大的管理功能,如用户管理、群组管理、安全性设置等。通过Openfire,开发者可以搭建自己的即时通讯服务器,满足企业级或个人的需求。 要使用Smack连接Openfire,首先需要确保...

    openfire+spark+smack

    Openfire、Spark和Smack是三个与XMPP(Extensible Messaging and Presence Protocol)相关的开源项目,它们在构建即时通讯(IM)系统中扮演着重要角色。XMPP是一种基于XML的网络协议,主要用于实时通讯,包括消息...

    Openfire 4.2.3+Smack 4.3.0最新安装包

    解压smack_4_3_0.zip后,开发者可以使用其中的API来构建与Openfire或其他XMPP服务器交互的客户端应用。Smack提供了连接管理、会话建立、消息发送与接收、用户状态管理、多用户聊天室等功能。它的API设计直观,使得...

    spark_smack_openfire.zip_openfire spark_spark xmpp_xmpp _xmpp op

    1. 学习Smack的基本API,包括连接服务器、创建实体、发送和接收消息等。 2. 实现Smack的高级功能,如多用户聊天室、离线消息处理、推送通知等。 **四、Spark与Openfire的集成** 1. 配置Spark连接Openfire服务器,...

    spark_smack_openfire_讲解

    Smack是一个为使用XMPP服务器聊天和发送即时消息交流而提供的库。 Smack的主要优势: 使用简单且拥有强大的API。向用户发送一条文本消息只需用一下三行...本文档将向你介绍Smack API,并大概介绍几个重要的类和概念。

    openfire+asmack中文api+androidDemo

    【标题】"openfire+asmack中文api+androidDemo"涉及的是即时通讯(Instant Messaging, IM)技术在Android平台上的实现。Openfire是一款开源的XMPP服务器,而ASMACK是针对Android平台的XMPP库,它允许开发者在Android...

    Android端Smack对Openfire的访问

    5. **其他功能**:除了基本的消息收发,Smack还支持群聊、用户状态管理、Roster(联系人列表)操作等。例如,可以使用`Roster`类来获取、添加、删除联系人,或者使用`MUC`(Multi-User Chat)API来创建和参与群聊。 ...

    Android 基于xmpp协议,smack包,openfire服务端的高仿QQ的即时通讯实现.zip

    这个项目就是基于XMPP(Extensible Messaging and Presence Protocol)协议,使用Smack库,并结合Openfire服务器实现的。现在,我们将深入探讨这些关键组件以及如何将它们整合到Android应用中。 1. **XMPP协议**:...

    Smack API中文版

    Smack API与Openfire服务器配合使用,可以实现高效的、安全的P2P或者服务器中继的聊天功能。本文将深入探讨Smack API的基本概念、原理及其在实际应用中的使用方法。 ### 1. Smack API基本概念 Smack API是用Java...

    Android+smack4.1.4+openfire demo

    Smack 4.1.4是该库的一个版本,它提供了API,使得开发者可以方便地实现XMPP功能,如创建连接、登录、发送和接收消息、管理联系人等。 在Android应用中集成Smack 4.1.4,你需要: 1. 添加Smack库的依赖到项目构建...

    openfire+smack开发webim笔记

    Openfire提供了丰富的API和管理界面,使得开发者可以方便地集成即时通讯功能到自己的应用中。 【三】WebIM与JWChat WebIM是嵌入到网页中的即时通讯客户端,无需安装额外软件即可使用。JWChat是一个基于AJAX技术的...

Global site tag (gtag.js) - Google Analytics