WebQQ1.0协议

来自百合仙子's Wiki
跳转到导航 跳转到搜索
本页主题是WebQQ 1.0使用的协议,关于目前使用的协议,见 WebQQ协议

消息格式和处理在 main.js 中。

消息模式:

var j = [this.head.uin, this.head.cmd, this.head.seq, this.head.session, this.body];
\x1d 用来分隔多条消息。( sendMultiPackage 函数中)

版本信息:

  • 界面显示为 V1.70330
  • WEBQQ.version = 1.1

消息处理

发送消息

583567462;16;42;e65d20d1;1062346191;0b;132;%0A%E3%80%90%E6%8F%90%E7%A4%BA%EF%BC%9A%E7%BA%B7%E8%8B%B1(583567462)%E6%AD%A3%E5%9C%A8%E4%BD%BF%E7%94%A8WebQQ%EF%BC%9Ahttp%3A%2F%2Fweb.qq.com%2F%3Fw%E3%80%91;0a00000010Arial;
583567462;16;904;48c7bd9e;1356893228;0b;132;%E4%B8%8D%E7%94%A8%E8%B0%A2%E3%80%82;0a00000010Arial;

QQ号;16;msgID;sessionID;对方QQ;0b;132;内容(URIescape);字体;

发送成功

583567462;16;2729;0;

接收消息

583567462;17;26937;1062346191;592418;09;0b;沙发上短发;0c00000010微软雅黑;1268400511;3442574811; dir come
583567462;17;19027;809911901;872136;09;0b;谢谢啦;2f0080ff10楷体;1268405575;420363322;
583567462;17;262;1356893228;99354;09;0b;考试还好吧,老师有时会给重点,学起来进度跟不上老师,学了忘的快;0900000010宋体;1268406256;373261787;

QQ号;17;recvID;对方QQ;xxx;09;0b;内容;字体;时间戳;xxx;

接收成功

583567462;17;38721;4993c1ee;475477556;583567462;499253;1;839392172;

QQ号;17;recvID;sessionid;对方QQ;自己的QQ;xxx(与接收消息时一致);1;xxxxx;

最后一项对于同一好友(在同一会话)具有唯一性,无论发送还是接收消息。

含有图片的消息:

583567462;17;13375;251145278;674202;09;0b;�3999B5AB8CBADD80480E437830D66795D.jpg��40��40��302559EFDFD3D4B120D4E4AD1EBB8F1D5.jpg�我截了,不知怎么发给你;0a00000010Tahoma;1268482121;420363322;

含标准表情的消息:

583567462;17;13394;251145278;91852;09;0b;�12我很受伤%0A;0a00000010Tahoma;1268483942;420363322;

接收群消息

583567462;17;14493;2107512540;693278;2b;0b;司门口东站离户部巷远么,知道的麻烦说声,谢啦;0d8000ff10微软雅黑;1;27512540;929233025;9762;372;1282980493;1552357292;
583567462;17;13526;2107512540;381492;2b;0b;很近;0900000010宋体;1;27512540;472458179;9763;372;1282981216;775979018;
583567462;17;13528;2107512540;619773;2b;0b;那不晓得,在网上查吧;0900000010宋体;1;27512540;472458179;9765;372;1282981275;1552357292;

QQ号;17;recvID;2107512540;xxxxxx;2b;0b;内容;字体;1;群号;对方QQ号;seq?;372;时间戳;xxxx;

未知的部分和接收图片/文件有关?

接收成功

583567462;17;31416;e65d20d1;2013899695;583567462;239905;2;725517787;

QQ号;17;recvID;sessionID;群消息域3;QQ号;messageID;2;xxx;

状态

心跳消息

583567462;00;235;e65d20d1;

QQ号;00;msgID;sessionID;

心跳消息回应

583567462;02;235;0;1268401752; dir come

QQ号;02;msgID;0;时间戳;

好友状态

583567462;81;36073;1051299241;10;3;

QQ号;81;recvID;对方QQ号;状态;客户端;

自己的状态

状态更改成功

583567462;0d;1142;0;

更改状态

583567462;0d;1142;f97813e7;30;

QQ号;02;msgID;sessionID;状态;

签名

583567462;67;1041;03;0;731249381;573453328;有压力了;573737959;每一种信念.动机.欲望.厌恶都发自内心,没有任何东西能从外面进入我们的内心.;578542772;既不是木瓜也不是牛奶的木瓜牛奶。。。;594434491;付诸行动!!!;597442779;没好电影看了,晚上睡得真早;598354904;珍惜每一天,珍爱身边每一个人;605705109; 开学之后,新的开始......;609393190;新的开始……;623767739;心中无一物,何处惹尘埃?;624860748;好男人就是我,我就是好男人...朱熹!;626126219;until the sky falls down on me;627294010;感觉自己已经老了。。。;632986323;我们都要好好的;635976060;每个人心中都有一座伤城。。。;649300313;美丽的三月天里忽然我觉得冷...;731249380;孤独狼∮行天下??;
583567462;67;17;03;0;475477557;475477556; ;

QQ号;67;msgID;03;0;最后(最大)项加一;对方QQ号;签名;(重复最后两项)

查询备注

583567462;3e;22;4;1;605705109;0;王婷;609393190;0;邱飞;623767739;0;王若钊;624860748;0;朱熹;626126219;0;尹庆;627294010;0;韩丰田;632986323;0;苏希;635976060;0;杨艺;644560481;0;张珍;649300313;0;吴辉;664938941;0;代希标;709033938;0;赵洁;731249380;0;彭弟;763114441;0;张贺;775221926;0;常昊;809911901;0;徐倩;810967123;0;章晋成;836814094;0;张倩;837174850;0;祝沙沙;853260556;0;;864761395;0;陈子伦;879866723;0;白炳鹤;904365992;0;吴振;907475922;0;吴喜英;923485793;0;邹力;972561416;0;倪瑜泽;1002952670;0;梅峰;1014573039;0;乔丹;1027342766;0;万艳芬;1046074511;0;陈华强;
583567462;3e;26;4;0;1051035475;0;高伟;1051299241;0;刘开增;1062346191;0;李坤;1098890278;0;张贺;1269182103;0;刘玉佩;1356893228;0;梁晶;

QQ号;3e;msgID;4;0|1;对方QQ号;0;备注;(重复最后三项)

群状态查询

583567462;30;364;0f;0;2013899695;167;0;171370123;郦起扬;709033938;赵洁;157316228;王家骏;248439205;卞妍;179635162;王悦歌;775221926;常昊;594434491;副班主任;498028146;邱鑫;490971883;刘礼华;623767739;王若钊%2Fzt;228105983;蓝航;1051299241;刘开增;123791537;熊陈;371911079;黄金;240276593;李敏;583567462;李小龙;627294010;韩丰田;380659945;林世平;923485793;邹力;664938941;代希标;355481713;李颖;382825364;彭强;157220920;李艳鸽;1051035475;高维维;423010926;潘若寒;514852980;付一航;1062346191;李坤.pdf;597442779;刘小龙;381916729;肖俊柳;573737959;周武柏;879866723;白炳鹤;1040434521;杜锦;1098890278;张贺;

(SC)QQ号;30;msgID;0f;0;xxx;167;0;对方QQ号;群名片;(重复最后两项)

583567462;30;364;3c61aa2a;0f;2013899695;0;0;

(对上个信息的回应) (CS)QQ号;30;msgID;sessionID;0f;xxx;0;0;

查询个人资料

583567462;06;2545;4993c1ee;644560481;

(CS)QQ号;06;msgID;sessionID;QQ号;

583567462;06;2545;644560481^^紫晴^^中国^^湖北^^ ^^ ^^ ^^21^^女^^姓名^^644560481@qq.com^^ ^^ ^^ ^^ ^^ ^^学生^^http:%2F%2F644560481.qzone.qq.com^^1^^ ^^ ^^33^^-^^ ^^我会好好的度过每一天,不会让它虚度。提高自己帮助别人,明天一定会更好。^^武汉^^-^^-^^0^^0^^0^^ ^^9^^6^^1^^8913408^^-;10;

(对上个信息的回应,其中的空格是为便于阅读加的)

(SC)QQ号;06;(对应的)msgID;正文;10;

正文以 ^^ 分隔,分别为

 ['QQ号', '昵称', '国家', '省份', '邮编', '地址', '电话', '年龄', '性别', '姓名?', '邮箱', '-', '-', '-', '-', '-', '职业', '个人主页', '1', '', '', '头像', '手机', '', '个人说明', '城市', '-', '-', '0', '0', '资料状态', '毕业院校', '星座', '生肖', '血型', '512/8913408', '-']

头像为零表示是自定义的。

个人信息查询

583567462;0126;365;3c61aa2a;0;8;88000533;364997271;371911079;514852980;583567462;921956370;1040434521;1041968878;

(CS)QQ号;0126;msgID;sessionID;0;所查询QQ号数目;QQ号;(重复最后一项)

583567462;0126;365;0;88000533;48;88000533;0;364997271;576;风,继续吟怀.;0;371911079;339;  狂奔の蝸牛;0;514852980;480;Swing;0;583567462;132;纷英;0;921956370;447;�﹌霸↘男�﹏;0;1040434521;363;N代火影;0;1041968878;0;001;0;

(对上个信息的回应) (SC)QQ号;0126;msgID;0;QQ号;头像编号?;昵称;(重复最后三项)

授权

类型号为 22 的是授权信息,如:

583567462;22;0;f1630af5;@ExUHp5N2C;cbc0539d2bc6a45563d5917424a76180e703cd978fe9c90a45e78df9dee9d831;1; sent
583567462;22;0;00;f0870af5;0;1282755023;15;38299;39d6abbcc04e223dcbe0b296fa74c8f9ca17c229211c42e059752fd456ab0b55;c74230693a8f29fe0f474469585ef3fe1d91f22aab164622; recved

代码解释

消息命令

http://w.qq.com/js/const.js?89 (WebQQ Mini) 得到的信息

  • 22 登录
  • 3c 获取群信息
  • 58 获取好友/群列表
  • 06 获取个人资料
  • 67_01 设置签名
  • 67_02 清空签名
  • 67_03 获取签名
  • 5c_88 获取自己的等级
  • 5c_89 获取好友的等级
  • 3e_04 获取好友评价
  • 3e_00 获取好友评价
  • 3e_05 设置好友评价
  • 3e_69 设置好友评价
  • 26 获取好友个人资料
  • 30_72 获取群成员
  • 30_0f 获取群成员评价
  • 30_73 UNKNOWN
  • 30_0a UNKNOWN
  • 01 下线

字体

格式:

x x xxxxxx xx name
加粗等 字号(十六进制) RGB颜色 10 字体名

域1:

2 加粗,4 斜体,8 下划线。1 表示字号要加上 16。

ID

msgID
报文号
sessionID
每次会话相同的十六进制数字
messageID
发送/接收到的消息ID
recvID
服务端信息的ID

在线状态

  • 10 在线
  • 20 离线
  • 30 离开
  • 40 隐身
  • 50 忙碌
  • 1 手机QQ在线
  • 2 WebQQ在线
  • 3 无

性别

  • 0 -
  • 1 男
  • 2 女

生肖

  • 0 -
  • 1 鼠
  • 2 牛
  • 3 虎
  • 4 兔
  • 5 龙
  • 6 蛇
  • 7 马
  • 8 羊
  • 9 猴
  • 10 鸡
  • 11 狗
  • 12 猪

星座

  • 0 -
  • 1 水瓶座
  • 2 双鱼座
  • 3 白羊座
  • 4 金牛座
  • 5 双子座
  • 6 巨蟹座
  • 7 狮子座
  • 8 处女座
  • 9 天秤座
  • 10 天蝎座
  • 11 射手座
  • 12 摩羯座

血型

  • 0 -
  • 1 A型
  • 2 B型
  • 3 O型
  • 4 AB型
  • 5 其它

资料状态

  • 完全公开
  • 仅好友可见
  • 完全保密

图片和文件

头像

http://face10.qun.qq.com/cgi/svr/face/getface?type=1&me=583567462&uin=402315149
type 均为 1me 是自己的QQ, uin 是对方QQ。服务器名从1到10。

默认表情

^Tnum

其中 num 是两位十六进制的序号,从0到104共105个,显示的图片是按从左到右的顺序。整张图片的地址为 http://web.qq.com/images/dialog/face.gif ,每张图片有单独的动画图片,地址是 http://web.qq.com/images/Face2/n.gif ,其中 n 是十进制的序号,不要开头的零。

接收文件

消息

//之前的授权消息
583567462;22;0;00;4993c1ee;0;1282987447;12;41668;922550ec02b568b4e66912c13aa54ed2d774297b524f707753a5462ac4f3a2eb;db30133fb98713b9607ed6c5dd5f2f7c07df8cfffd52283f;
//接收文件
583567462;f1;26835;583567462;644560481;f;27652;02;1282988205;1;新建 文本文档.txt;147;0;3182;

文件路径

http://file1.web.qq.com/583567462/644560481/27652/12/41668/0/0/1/f/147/%E6%96%B0%E5%BB%BA%20%E6%96%87%E6%9C%AC%E6%96%87%E6%A1%A3.txt?t=1282988195
服务器/自己的QQ/对方QQ/msg[4]/授权[5]/授权[6]/0/0/1/f/msg[9]/msg[8]?t=时间戳

其中原文表示的地方是尚未弄清楚的。

另一个例子(授权信息同上)

583567462;f1;2420;583567462;402315149;f;16325;02;1283001802;1;DSCN7855.JPG;1700;0;1896411;
http://file1.web.qq.com/583567462/402315149/16325/12/41668/0/0/1/f/1700/DSCN7855.JPG?t=1283001668

服务器是 window.chat_pic_server_domain 定义的。

好友状态

http://sns.qq.com/buddy_state/feed/?webqq_t=1282974606686

其中 webqq_t 是以毫秒为单位的时间戳,亦可不要。

返回一个 buddyFeeds 变量的定义,中文以 \uhhhh 的形式转义(ascii2uni -a U),其中:

  • retcode :0
  • debug
    • elapsed :用时(字符串)
    • memory :内存(如 0.39MB
  • result :查询结果
    • nowtime :以秒计的时间戳
    • ul
      • QQ号
        • signature
          • sig :签名
          • time :签名最后更改的时间戳?
        • uinfo
          • nick
          • gender :0 - 男,1 - 女
          • face :头像号

好友印象

http://apps.qq.com/app/yx/cgi-bin/get_web_feeds?hc=6&lc=4&c=50&u1=9048865&time=1282971012415

其中只写了 u1=9048865 ,实际请求有多个(参数 c 指定,通常为20或者50)。其值为要查询的QQ号。

返回一个 data10 变量

  • err : 0
    • ul ,其值是一个数组
      • 数组内容
        • cf : 0 - 允许评价,1 - 不允许?
        • el , 数组或 0 (无评价)
          • 数组内容
            • c : 1
            • ew : 评价
            • t : 1, 次数?
        • u : QQ号

参见