现在的位置: 首页 > 综合 > 正文

基于JQL的挂QQ程序[00原创]

2013年08月21日 ⁄ 综合 ⁄ 共 2681字 ⁄ 字号 评论关闭
以前无聊的时候申请了一堆QQ,在Windows下一直是用TenyQQ挂着,20多个QQ基本都到太阳了:-)
不过现在转来Linux下了,而且TenyQQ也好久没更新了,登录不了:-(
还好,LumaQQ还可以用,而且开源了JQL (Java QQ Library),基于它就可以实现自己的QQ了!基于库里带的例子,自己些了个挂Q程序,:-)

package edu.tsinghua.lumaqq.demo;

import java.io.BufferedReader;

import java.io.FileReader;

import java.io.IOException;

import java.util.ArrayList;

import edu.tsinghua.lumaqq.qq.QQ;

import edu.tsinghua.lumaqq.qq.QQClient;

import edu.tsinghua.lumaqq.qq.Util;

import edu.tsinghua.lumaqq.qq.beans.QQUser;

import edu.tsinghua.lumaqq.qq.net.PortGateFactory;

public class Demo1

{

    private static ArrayList<String> textList = null;

    private static int[] userID = null;

    private static String[] userPwd = null;

    public static ArrayList getText()

    {

    textList = new ArrayList<String>();

    try

    {

        FileReader fr = new FileReader("/home/daniel/MyQQID");

        BufferedReader inFile = new BufferedReader(fr);

        String line;

        while ((line = inFile.readLine()) != null)

        {

        textList.add(line);

        }

    }

    catch (IOException ioe)

    {

        ioe.printStackTrace();

    }

    catch (Exception e)

    {

        e.printStackTrace();

    }

    return textList;

    }

    public static void main(String[] args)

    {

    String aLine = null;

    String[][] userAndPwd = new String[getText().size()][];

    for (int i = 0; i < getText().size(); i++)

    {

        aLine = (String) getText().get(i);

        userAndPwd[i] = aLine.split("/s");

    }

    userID = new int[userAndPwd.length];

    userPwd = new String[userAndPwd.length];

    for (int i = 0; i < userAndPwd.length; i++)

    {

        userID[i] = Integer.parseInt(userAndPwd[i][0]);

        userPwd[i] = userAndPwd[i][1];

        System.out.println(userID[i] + " " + userPwd[i]);

    }

    QQClient[] clients = new QQClient[textList.size()];

    QQUser[] users = new QQUser[textList.size()];

    for (int i = 0; i < clients.length; i++)

    {

        clients[i] = new QQClient();

        clients[i].setConnectionPoolFactory(new PortGateFactory());

        users[i] = new QQUser(userID[i], userPwd[i]);

        users[i].setUdp(false);

        clients[i].setUser(users[i]);

        clients[i].setLoginServer("tcpconn.tencent.com");

        clients[i].setTcpLoginPort(80);

        users[i].setLoginMode(QQ.QQ_LOGIN_MODE_HIDDEN);

        users[i].setStatus(QQ.QQ_STATUS_HIDDEN);

        

        try

        {

        clients[i].login();

        Thread.sleep(1000);

        clients[i].sendIM(845765, Util.getBytes(Integer.toString(users[i]

            .getQQ())));

        Thread.sleep(1000);

        }

        catch (Exception e)

        {

        e.printStackTrace();

        }

        

        //clients[i].logout();

        //clients[i].release();

        clients[i].keepAlive();

    }

    }

}

抱歉!评论已关闭.