zoukankan      html  css  js  c++  java
  • 开源一个Java Class实现Openfire登陆、推出、消息发送,方便其他系统集成IM功能了

    开源一个Java Class实现Openfire登陆、推出、消息发送

    N年前写的,希望对Openfire开发新手有帮助哦

    import java.util.*;
    import java.io.*;
     
    import org.jivesoftware.smack.Chat;
    import org.jivesoftware.smack.ConnectionConfiguration;
    import org.jivesoftware.smack.MessageListener;
    import org.jivesoftware.smack.Roster;
    import org.jivesoftware.smack.RosterEntry;
    import org.jivesoftware.smack.XMPPConnection;
    import org.jivesoftware.smack.XMPPException;
    import org.jivesoftware.smack.packet.Message;
     
    public class ImApi {//implements MessageListener{
     
        XMPPConnection connection;
     
        public void login(String userName, String password) throws XMPPException
        {
        ConnectionConfiguration config = new ConnectionConfiguration("222.186.191.86",5222, "Work");
        connection = new XMPPConnection(config);
     
        connection.connect();
        connection.login(userName, password);
        }
     
        public void sendMessage(String message, String to) throws XMPPException
        {
        Chat chat = connection.getChatManager().createChat(to, null); //this);
        chat.sendMessage(message);
        }
     
        public void displayBuddyList()
        {
        Roster roster = connection.getRoster();
        Collection<RosterEntry> entries = roster.getEntries();
     
        //System.out.println(" " + entries.size() + " buddy(ies):");
        for(RosterEntry r:entries)
        {
        System.out.println(r.getUser());
        }
        }
     
        public void disconnect()
        {
         connection.disconnect();
        }
     
        public void processMessage(Chat chat, Message message)
        {
        if(message.getType() == Message.Type.chat)
        System.out.println(chat.getParticipant() + " says: " + message.getBody());
        }
     
        public static void main(String args[]) throws XMPPException, IOException
        {
        // declare variables
        ImApi c = new ImApi();
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String msg;
     
     
        // turn on the enhanced debugger
        //XMPPConnection.DEBUG_ENABLED = true;
     
     
        // Enter your login information here
        c.login("a2@dev-pc", "1234");
     
        //c.displayBuddyList();
     
        System.out.println("-----");
     
        System.out.println("Who do you want to talk to? - Type contacts full email address:");
        String talkTo = "a4@dev-pc"; //br.readLine();
     
        System.out.println("-----");
        System.out.println("All messages will be sent to " + talkTo);
        System.out.println("Enter your message in the console:");
        System.out.println("----- ");
     
        while( !(msg=br.readLine()).equals("bye"))
        {
            c.sendMessage(msg, talkTo);
        }
     
        c.disconnect();
        System.exit(0);
        }
     
    }


    ==============================================================================

    编译脚本:

    java -cp smackx.jar;smack.jar;. ImApi


    打包命令:

    jar -cvfm IMA.jar MANIFEST.MF ImApi.class


    就这么简单,这么做之后其他系统也可以集成IM功能了,三年前写的希望没过时哦:)

  • 相关阅读:
    java学习day62-Spring boot整合Shiro配置
    java学习day62-springboot中的拦截
    java学习day62-DB项目-首页菜单动态显示
    疯狂学java的第26天
    疯狂学java的第25天
    疯狂学java的第24天
    疯狂学java的第23天
    疯狂学java的第22天
    疯狂学java的第21天
    疯狂学java的第20天
  • 原文地址:https://www.cnblogs.com/bdccloudy/p/7665249.html
Copyright © 2011-2022 走看看