免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4761 | 回复: 3
打印 上一主题 下一主题

用PHP写的QQ Client,可以登陆、登出、收发消息、添加好友  关闭 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-08-20 17:08 |只看该作者 |倒序浏览
下载:http://blog.hackfan.net/up/QQClient.rar

/***************************************
QQ Client

作者:Hackfan
来源:http://blog.hackfan.net/
2005.8.18

QQ客户端,使用腾讯tqq.tencent.com:8000 HTTP接口

参考文章:http://spaces.msn.com/members/mprogramer

使用到的类:
Advanced HTTP Client
中文编码集合类库

类接口:

初始化类:
  $qq = new QQClient('106814','password');

登陆:
  $qq ->; login();
  参数:
   void
  返回:
   服务器返回成功:
    登陆成功:QQ_LOGIN_SUCCESS
    登陆失败:QQ_LOGIN_FAILED
     同时,全局变量$QQ_ERROR_MSG记录了服务器返回的错误说明
   服务器返回失败:QQ_RETURN_FAILED

获得好友列表:
  $qq ->; getFriendsList();
  参数:
   void
  返回:
   成功:
    array
    (
     QQ号码,
    )
   失败:QQ_RETURN_FAILED

获得在线列表:
  $qq ->; getOnlineList();
  参数:
   void
  返回:
   成功:
    好友数 >; 0
     array
     (
      array
      (
       "UN" =>; QQ号码,
       "NK" =>; QQ昵称,
       "ST" =>; QQ状态,
       "FC" =>; QQ头像
      ),
     )

     关于ST:
      10为上线QQ_STATUS_ONLINE,20为离线QQ_STATUS_OFFLINE,30为忙碌QQ_STATUS_BUSY
     关于FC:
      FC为QQ头像的的ID,如的头像ID为270,那么其头使用的图片为91.bmp,其算法为FC/3+1

    好友数 = 0
     QQ_LIST_NONE
   错误:
    !(在线好友数==在线好友昵称数==在线好友状态数==在线好友头像数):QQ_LIST_ERROR
   失败:QQ_RETURN_FAILED

获得号码信息:
  $qq ->; getInfo('106814');
  参数:
   string QQ号码
  返回:
   成功:
    array
    (
     'AD' =>; ,  //联系地址
     'AG' =>; ,  //年龄
     'BT' =>; ,  //血型
     'CO' =>; ,  //星座
     'CT' =>; ,  //城市
     'CY' =>; ,  //国家
     'EM' =>; ,  //Email
     'FC' =>; ,  //头像
     'HP' =>; ,  //网站
     'JB' =>; ,  //职业
     'MO' =>; ,  //移动电话
     'PC' =>; ,  //邮编
     'PH' =>; ,  //联系电话
     'PR' =>; ,  //简介
     'PV' =>; ,  //省
     'RN' =>; ,  //真实姓名
     'SC' =>; ,  //毕业院校
     'SX' =>; ,  //性别
     'UN' =>; ,  //QQ号
     'NK' =>;   //昵称
    )
   失败:QQ_RETURN_FAILED

添加好友:
  $qq ->; addFriend( '106814' );
  参数:
   string QQ号码
  返回:
   成功:
    对方允许任何人加为好友:QQ_ADDTOLIST_SUCCESS;
    需要验证:QQ_ADDTOLIST_NEEDAUTH;
    不允许任何人加为好友:QQ_ADDTOLIST_REFUSE;
    未知的代码:QQ_ADDTOLIST_UNKNOWN;
   失败:QQ_RETURN_FAILED

验证:
  $qq ->; replyAdd( '106814' , TYPE, MSG );
  参数:
   string QQ号码
   enum(0,1,2) 类型
    *0表示“通过验证”,1表示“拒决加为对方为好友”,2表示“为请求对方加为好友”
   string 理由
  返回:
   成功:QQ_RETURN_SUCCESS
   失败:QQ_RETURN_FAILED

删除好友:
  $qq ->; delFriend( '106814' );
  参数:
   string QQ号码
  返回:
   成功:QQ_RETURN_SUCCESS
   失败:QQ_RETURN_FAILED

改变状态:
  $qq ->; changeStatus( QQ_STATUS );
  参数:
   enum(QQ_STATUS_ONLINE,QQ_STATUS_OFFLINE,QQ_STATUS_BUSY) 类型
  返回:
   成功:QQ_RETURN_SUCCESS
   失败:QQ_RETURN_FAILED

登出:
  $qq ->; logout();
  参数:
   void
  返回:
   成功:QQ_RETURN_SUCCESS
   失败:QQ_RETURN_FAILED

接收信息:
  $qq ->; getMsg();
  参数:
   void
  返回:
    消息数 >; 0
     array
     (
      array
      (
       "MT" =>; 消息类型,
       "UN" =>; 发送者号码,
       "MG" =>; 消息内容
      ),
     )

     关于MT:
      9为用户消息,99为系统消息,2为请求信息,3为通过验证,4为拒绝被加好友
     关于MG:
      当MT=9时,MG为用户发送的消息内容
      当MT=99时,
       MG=10(QQ_STATUS_ONLINE)表示对方上线
       MG=20(QQ_STATUS_OFFLINE)表示对方下线
       MG=30(QQ_STATUS_BUSY)表示对方进入忙碌状态
      当MT=2时,MG为请求验证的信息
      当MT=3时,MG为?
      当MT=4时,MG为拒绝理由

    好友数 = 0
     QQ_LIST_NONE
   错误:
    !(在线好友数==在线好友昵称数==在线好友状态数==在线好友头像数):QQ_LIST_ERROR
   失败:QQ_RETURN_FAILED

发送信息:
  $qq ->; sendMsg($uin,$msg);
  参数:
  返回:
   成功:QQ_RETURN_SUCCESS
   失败:QQ_RETURN_FAILED

解释:
QQ_RETURN_SUCCESS表示服务器返回执行成功的信息
QQ_RETURN_FAILED表示服务器没有正确返回或者返回没有正确执行
  本代码处于调试状态,当服务器没有正确返回的时候,将会打印出详细的信息

运行:推荐在Console模式下运行本程序,不建议使用WebServer运行。

***************************************/

下载:http://blog.hackfan.net/up/QQClient.rar

论坛徽章:
0
2 [报告]
发表于 2005-08-20 17:15 |只看该作者

用PHP写的QQ Client,可以登陆、登出、收发消息、添加好友

很多特性还有待研究,希望感兴趣的朋友和我联系

大家也是抱着研究的态度使用这个类,因为还有很多地方可以做得更完美

群:3463211
QQ:106814

论坛徽章:
0
3 [报告]
发表于 2005-08-22 14:51 |只看该作者

用PHP写的QQ Client,可以登陆、登出、收发消息、添加好友

...怎么没有人顶的.....

顶啊....好东西.....对楼主表示万二分感谢......

论坛徽章:
0
4 [报告]
发表于 2005-08-22 15:03 |只看该作者

用PHP写的QQ Client,可以登陆、登出、收发消息、添加好友

非常感谢,也许它的价值还有待大家发掘!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP