webQQ协议分析2018.11.9

  1. 3天结束,webQQ客户端开发包,python2编写,封装了webQQ的几乎完整的功能,你可以用来开发聊天机器人,甚至更多创造性的功能。项目代码托管在Github,github.com/HotIce0/webqq-client-sdk
    webQQ协议分析2018.11.9
    webQQ协议分析2018.11.9

  2. 下面是没有整理的webQQ协议分析

  3. 关键:获取webqq的数据处理协议(js代码,从其中可以找到数据的含义,以及数据请求,数据处理)
    直接访问:https://web2.qq.com/js/mq.js?t=20161220

获取数据的CGI
var GET_USER_FRIENDS_CGI = mq.STATIC_CGI_URL + “api/get_user_friends2”,
GET_GROUP_CGI = mq.STATIC_CGI_URL + “api/get_group_name_list_mask2”,
GET_DISCUSS_CGI = mq.STATIC_CGI_URL + “api/get_discus_list”,
GET_RECENT_LIST_CGI = mq.DYNAMIC_CGI_URL + “channel/get_recent_list2”,
GET_SIGNATURE = mq.STATIC_CGI_URL + “api/get_single_long_nick2”,
GET_SELF_INFO = mq.STATIC_CGI_URL + “api/get_self_info2”,
GET_GROUP_INFO_CGI_LIST = mq.STATIC_CGI_URL + “api/get_group_info_ext2”,
GET_DISCUSS_INFO_CGI_LIST = mq.DYNAMIC_CGI_URL + “channel/get_discu_info”,
GET_FRIEND_INFO_CGI = mq.STATIC_CGI_URL + “api/get_friend_info2”,
// GET_FRIEND_UIN = mq.STATIC_CGI_URL + “api/get_friend_uin2”, 这个有安全风险,已停止,20170414vorshen
GET_ONLINE_BUDDIES = mq.DYNAMIC_CGI_URL + “channel/get_online_buddies2”,
SEND_CHANGE_ONLINE_STATE = mq.DYNAMIC_CGI_URL + “channel/change_status2”
发送消息的CGI
var SEND_MSG_CGI = mq.DYNAMIC_CGI_URL + “channel/send_buddy_msg2”;
//发送群友CGI
// var SEND_SESS_CGI = mq.DYNAMIC_CGI_URL + “channel/send_sess_msg2”;这个也被停止使用了,测试无效
var SEND_GROUP_MSG_CGI = mq.DYNAMIC_CGI_URL + “channel/send_qun_msg2”;
var SEND_DISCUSS_MSG_CGI = mq.DYNAMIC_CGI_URL + “channel/send_discu_msg2”;
#陌生人的聊天
var SEND_GET_SESS_SIGN_CGI = mq.DYNAMIC_CGI_URL + “channel/get_c2cmsg_sig2”;

聊天记录的CGI
var GET_RECORD_CGI = “https://web2.qq.com/cgi-bin/webqq_chat/”;

// 根据uin获取头像
this.getAvatar = function(uin, type){
type = type || 1; // 群图标为 4
var t = mq.vfwebqq;
return ‘https://face’+(uin%10)+’.web.qq.com/cgi/svr/face/getface?cache=1&type=’+type+’&f=40&uin=’+uin+’&t=’+Math.floor(new Date()/1000)+’&vfwebqq=’+t;
};

    this.getSelfAvatar = function(uin) {
        return 'https://q.qlogo.cn/g?b=qq&nk=' + uin + '&s=100&t=' + Date.now();

    };

var messageList = {
‘con_friends’: [‘好友’, ‘Friends’],
‘con_groups’: [‘群’, ‘Groups’],
‘con_discus’: [‘讨论组’, ‘Discussion’],
‘return’: [‘返回’, ‘Back’],
‘close’: [‘关闭’, ‘Close’],
‘unname’: [‘未命名’, ‘Unnamed’],
‘session’: [‘会话’, ‘Chats’],
‘contact’: [‘联系人’, ‘Contacts’],
‘setting’: [‘设置’, ‘Settings’],
‘plugin’: [‘发现’, ‘Discover’],
‘send’: [‘发送’, ‘Send’],
‘cancel’: [‘取消’, ‘Cancel’],
‘search’: [‘搜索’, ‘Search’],
‘members’:[‘成员’, ‘Members’],
‘record’: [‘聊天记录’, ‘Chat History’],
‘noRecord’: [‘暂无聊天记录’, ‘No Chat Records’],
‘sendMsg’: [‘发消息’, ‘Send Message’],
‘beforeclose’:[‘您确定要离开吗?’, 'Are you sure you want to leave this page? '],
//详细资料
‘profile’: [‘详细资料’, ‘Profile’],
‘signature’: ['个性签名: ', "What’s Up: "],
‘publish’: [‘公告’, ‘Notice’],
‘gender’: [‘性别’, ‘Gender’],
‘male’: [‘男’, ‘Male’],
‘female’: [‘女’, ‘Female’],
‘unknown’: [‘未知’, ‘Unknown’],
‘birthday’: [‘生日’,‘Birthday’],
‘country’: [‘国家’,‘Country’],
‘province’: [‘省份’,‘Province’],
‘city’: [‘城市’,‘City’],
‘phone’: [‘电话’,‘Phone’],
‘mobile’: [‘手机’, ‘Mobile’],
‘email’: [‘电子邮箱’, ‘Email’],
‘group_member’: [‘群成员’, ‘Group Members’],
‘group_profile’: [‘群资料’, ‘Group Profile’],
‘group_profile’: [‘群资料’, ‘Group Profile’],
‘discuss_member’:[‘讨论组成员’, ‘Discussion Members’],
‘discuss_profile’: [‘讨论组资料’, ‘Discussion Profile’],
‘buddy_unit’: [‘人’, ‘people’],
//设置 setting
‘account’: [‘帐号’, ‘Account’],
‘about_qq’: [‘关于QQ’, ‘About’],
‘loginout’: [‘退出当前帐号’, ‘Log Out’],
‘place’: [‘所在地’,‘Location’],
‘version’: [‘当前版本’, ‘Version’],
‘current_version’: ‘V1.0’,
‘service’: [‘服务条款’, ‘Terms’],
‘help’: [‘帮助与反馈’, ‘Feedback’],
‘notify_setting’: [‘消息相关设置’, ‘Notify Setting’],
‘voice’: [‘声音’, ‘Voice’],
‘notification’: [‘消息浮窗’, ‘Notifications’],
‘https_setting’: [‘HTTPS’, ‘HTTPS’],
‘https_msg’: [‘使用 HTTPS 加密聊天内容’, ‘Encrypt records via HTTPS’],
‘send_msg_way’: [‘按Ctrl+Enter键发送消息’, ‘Send Message by pressing “Ctrl” + “Enter”’],
//plugin
‘qzone’: [‘QQ空间’,‘Qzone’],
‘qmail’: [‘QQ邮箱’, ‘QQ Mail’],
‘qq_portal’: [‘腾讯网’, ‘QQ.com’],
‘soso_map’: [‘soso地图’,‘soso Maps’],
//在线状态
‘online’: [‘在线’, ‘Online’],
‘offline’: [‘离线’, ‘Offline’],
‘away’: [‘离开’, ‘Away’],
‘hidden’: [‘隐身’,‘Invisible’],
‘busy’: [‘忙碌’, ‘Busy’],
‘callme’: [‘Q我’, ‘Q Me’],
‘silent’: [‘静音’,‘Silence’],
// 表情
‘cface’: [‘自定义表情’, ‘Custom Avatars’]
};

    var code2stateMap = {10:'online',20:'offline',30:'away',40:'hidden',50:'busy',60:'callme',70:'silent'};
    this.code2state = function(code) {
        
        return code2stateMap[code] || 'online';
    };
    
    var state2codeMap = {'online':10,'offline':20,'away':30,'hidden':40,'busy':50,'callme':60,'silent':70};
    this.state2code = function(code) {

        return state2codeMap[code] || 0;
    };

1.获取快捷登陆二维码
GET https://ssl.ptlogin2.qq.com/ptqrshow?appid=501004106&e=2&l=M&s=3&d=72&v=4&t=0.2904360772892842&daid=164&pt_3rd_aid=0
这个请求,会返回,二维码登录图片,并且返回,用于二维码登录认证的cookie
set-cookie: qrsig=GIG-9bCyRVcPgHVZxjLsadvkIt4MGUwSzMKV8hehPIX6X4iu1MUAWxztUpJPxhy*;Path=/;Domain=ptlogin2.qq.com;

2.轮训,二维码是否失效,二维码认证中,成功登录
携带:pgv_pvi pgv_si qrsig
https://ssl.ptlogin2.qq.com/ptqrlogin?u1=https%3A%2F%2Fweb2.qq.com%2Fproxy.html&ptqrtoken=1548413760&ptredirect=0&h=1&t=1&g=1&from_ui=1&ptlang=2052&action=1-0-1541464409616&js_ver=10284&js_type=1&login_sig=&pt_uistyle=40&aid=501004106&daid=164&mibao_css=m_webqq&
(1)ptuiCB(‘66’,‘0’,’’,‘0’,‘二维码未失效。(2524983020)’, ‘’)
(2)ptuiCB(‘67’,‘0’,’’,‘0’,‘二维码认证中。(3031461335)’, ‘’)
(3)ptuiCB(‘0’,‘0’,‘https://ptlogin2.web2.qq.com/check_sig?pttype=1&uin=51747708&service=ptqrlogin&nodirect=0&ptsigx=53184b3f874d21437542b7ba1083c43683179eee4c791dc26bbe449a12965b4ad8f759758858f12ec1d3f41fe696c181cc7cbc49ddec491228ec4953235cbe46&s_url=https%3A%2F%2Fweb2.qq.com%2Fproxy.html&f_url=&ptlang=2052&ptredirect=100&aid=501004106&daid=164&j_later=0&low_login_hour=0&regmaster=0&pt_login_type=3&pt_aid=0&pt_aaid=16&pt_light=0&pt_3rd_aid=0’,‘0’,'登录成功!’, ‘2020’)

set-cookie: pt2gguin=o0051747708;Expires=Tue, 19 Jan 2038 03:14:07 GMT;Path=/;Domain=qq.com;
set-cookie: ETK=;Path=/;Domain=ptlogin2.qq.com;
set-cookie: uin=o0051747708;Path=/;Domain=qq.com;
set-cookie: [email protected];Path=/;Domain=qq.com;
set-cookie: superuin=o0051747708;Path=/;Domain=ptlogin2.qq.com;
set-cookie: supertoken=2851698714;Path=/;Domain=ptlogin2.qq.com;
set-cookie: superkey=46YaZ28MuO4K1omr10windC5xbIJVt6jgrxdMaw_;Path=/;Domain=ptlogin2.qq.com;HttpOnly;
set-cookie: pt_recent_uins=7de72ba072e2c23d8158bbaf03d58d2472c0681e6da20202811cb7742ab1563a1494e614f995ec9a8c127222afe8bc5d8aae6875f59900ef;Expires=Thu, 06 Dec 2018 00:33:59 GMT;Path=/;Domain=ptlogin2.qq.com;HttpOnly;
set-cookie: ptisp=cnc;Path=/;Domain=qq.com;
set-cookie: RK=jXAkBOSkP7;Expires=Tue, 19 Jan 2038 03:14:07 GMT;Path=/;Domain=qq.com;
set-cookie: ptnick_51747708=32303230;Path=/;Domain=ptlogin2.qq.com;
set-cookie: ptcz=11179dc6effc69953f141829fe3b019a8b1f70b332a1c995b021ff6b6ceceff0;Expires=Tue, 19 Jan 2038 03:14:07 GMT;Path=/;Domain=qq.com;
set-cookie: ptcz=;Expires=Thu, 01 Jan 1970 00:00:00 GMT;Path=/;Domain=ptlogin2.qq.com;
set-cookie: airkey=;Expires=Thu, 01 Jan 1970 00:00:00 GMT;Path=/;Domain=qq.com;

  1. check sig
    https://ptlogin2.web2.qq.com/check_sig?pttype=1&uin=51747708&service=ptqrlogin&nodirect=0&ptsigx=53184b3f874d21437542b7ba1083c43683179eee4c791dc26bbe449a12965b4ad8f759758858f12ec1d3f41fe696c181cc7cbc49ddec491228ec4953235cbe46&s_url=https%3A%2F%2Fweb2.qq.com%2Fproxy.html&f_url=&ptlang=2052&ptredirect=100&aid=501004106&daid=164&j_later=0&low_login_hour=0&regmaster=0&pt_login_type=3&pt_aid=0&pt_aaid=16&pt_light=0&pt_3rd_aid=0

set-cookie: uin=o0051747708;Path=/;Domain=qq.com;
set-cookie: [email protected];Path=/;Domain=qq.com;
set-cookie: pt2gguin=o0051747708;Expires=Tue, 19 Jan 2038 03:14:07 GMT;Path=/;Domain=qq.com;
set-cookie: p_uin=o0051747708;Path=/;Domain=web2.qq.com;
set-cookie: pt4_token=*deZSAoLwL0ZS-jdar12o0qCXzlJ4LYhLsMlWdYHQNw_;Path=/;Domain=web2.qq.com;
set-cookie: p_skey=350sB2zLtQiNBQ4jJTOyPrA0RR-*hj0k-mXzTguM6ao_;Path=/;Domain=web2.qq.com;
set-cookie: p_uin=;Expires=Thu, 01 Jan 1970 00:00:00 GMT;Path=/;Domain=qq.com;
set-cookie: p_skey=;Expires=Thu, 01 Jan 1970 00:00:00 GMT;Path=/;Domain=qq.com;
set-cookie: pt4_token=;Expires=Thu, 01 Jan 1970 00:00:00 GMT;Path=/;Domain=qq.com;

https://report.url.cn/report/report?strValue=0&nValue=11202&tag=0&qver=0.0.1&t=1541664973606
//没有获取到任何有用数据,可能是被弃用

获取vfwebqq(important)
8.GET https://s.web2.qq.com/api/getvfwebqq?ptwebqq=&clientid=53999199&psessionid=&t=1541464440413
clientid: 53999199,固定值,代表是的webQQ客户端
t: 精确到毫秒级的时间戳
{“retcode”:0,“result”:{“vfwebqq”:“3dd8214b9ae8767a806d82e206aa1d15f40b1ebfcbf15177dc55d18a73a60904331e0693b813b7db”}}
拿到这个之后,进行了下面的请求
mq.rpcService.login();

获取的应该是channel的信息,下面的端口,应该是用于保持登录状态。可以获取到psessionid
9.POST https://d1.web2.qq.com/channel/login2
参数:
{
“ptwebqq”:"",
“clientid”:53999199,
“psessionid”:"",
“status”:“online”
}
返回:
{
“result”:{
“cip”:23600812,
“f”:0,
“index”:1075,
“port”:47450,
“psessionid”:“8368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857”,
“status”:“online”,
“uin”:51747708,
“user_state”:0,
“vfwebqq”:“59185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857”
},
“retcode”:0
}
cip:可能是channel服务器的数字ip
port: 服务器的端口

10.获取好友数据
POST https://s.web2.qq.com/api/get_user_friends2
parse :
r: {
“vfwebqq”:“800343d3158eabc3fce5c020fe2b561975fe58da460d889e5fe35e85292934d51e254d0444dfb44b”,
“hash”:“0046005600D40037”
}
origin : r=%7B%22vfwebqq%22%3A%22800343d3158eabc3fce5c020fe2b561975fe58da460d889e5fe35e85292934d51e254d0444dfb44b%22%2C%22hash%22%3A%220046005600D40037%22%7D

返回数据协议格式:
{
result:{
categories:[
{
index: , //categories的数组的下标
sort: , //用于排序
name: //好友分组的名称
},

]
friends:[
{
flag: , uin: ,
categories: //此处的categories就是上面categories的index值的引用, flag值与categories唯一对应
},

]
info:[
{
face: , //不知道意思
flag: , //类似info表的id
nick: , //qq昵称
uin:
},

]
marknames:[
{
uin: ,
markname: ,//备注名
type:
},

]
vipinfo:[
{
vip_level: ,//vip等级的取值:0,1,2,3
u: , //u即为uin
is_vip: //is_vip的取值为0或者1,0代表否
},

]
},
retcode:0
}
11.获取qq群数据
https://s.web2.qq.com/api/get_group_name_list_mask2
parse : r: {“vfwebqq”:“800343d3158eabc3fce5c020fe2b561975fe58da460d889e5fe35e85292934d51e254d0444dfb44b”,“hash”:“0046005600D40037”}
origin : r=%7B%22vfwebqq%22%3A%22800343d3158eabc3fce5c020fe2b561975fe58da460d889e5fe35e85292934d51e254d0444dfb44b%22%2C%22hash%22%3A%220046005600D40037%22%7D
{
result: {
gmarklist:[ //暂时不知道有什么用
{
markname: ,
uin: //1801425586这个为我测试的时候的uin的值
},

]
gmasklist:[]//此数组为空
gnamelist:[
{
flag: ,
name: ,//qq群的名称
gid: ,//即group id与qq群唯一对应
code: //可能是QQ群号,待验证********
},

]
},
retcode: //0为成功
}

12.获取多人聊天列表
https://s.web2.qq.com/api/get_discus_list?clientid=53999199&psessionid=8368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857&vfwebqq=3dd8214b9ae8767a806d82e206aa1d15f40b1ebfcbf15177dc55d18a73a60904331e0693b813b7db&t=1541464440928
{
result: {
dnamelist: [//似乎数据并不是很准确,有部分多人聊天群无法获取到
{
did: ,//disscution id 多人聊天群ID
name: , //多人聊天群名称
},

]
},
retcode: 0
}
13.获取自己的信息
https://s.web2.qq.com/api/get_self_info2?t=1541464440931
{
result:{
account: (int),//自己的QQ号
allow: 1,//被添加好友的验证方式
birthday: {
day: (int),
month: (int),
year: (int)
},
blood: (int),//血型
city: “”,
college: “”,
constel: (int),//星座
country: “”,
email: “”,
face: (int),//603 猜测,可能是原始的QQ2008里面的QQ自带QQ头像的编号
gender: “male”,
homepage: “”,//主页
lnick: “”,//个性签名
mobile: “”,//手机号码(此字段只会显示部分手机号码) “182********”
nick: “”,//qq昵称
occupation: “自由职业者”,//职业,直接存储的字符
personal: “”,//个人说明
phone: “”,//电话号码
province: “”,//市区
shengxiao: (int),//生肖
uin: (int),//uinon id但是,自己的uin值和uid相同都是QQ号
vfwebqq: “”,//用来限制只能一个地方登陆,记录的是cookie里面的某个字段,此字段,会被用于获取好友的数据,作为验证字段
vip_info: (int)//可能是vip等级,我的是0.。。没vip
},
retcode:0
}

(OK)14.获取qq头像 (s图片的大小参数,取值可以为[1,5],100)
https://q.qlogo.cn/g?b=qq&nk=51747708&s=100&t=1541464441132
直接返回JPEG的头像数据

15.获取在线好友
https://d1.web2.qq.com/channel/get_online_buddies2?vfwebqq=3dd8214b9ae8767a806d82e206aa1d15f40b1ebfcbf15177dc55d18a73a60904331e0693b813b7db&clientid=53999199&psessionid=8368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857&t=1541464444429
{
result: [
{
client_type: (int),//客户端类型编号
status: “”,//用户的登陆状态,取值 “online” | “busy” | “away” |
uin: (int)
},

],
retcode: 0
}
16.获取最近联系人列表
https://d1.web2.qq.com/channel/get_recent_list2
parse : r: {“vfwebqq”:“800343d3158eabc3fce5c020fe2b561975fe58da460d889e5fe35e85292934d51e254d0444dfb44b”,“clientid”:53999199,“psessionid”:“8368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857”}
origin : r=%7B%22vfwebqq%22%3A%22800343d3158eabc3fce5c020fe2b561975fe58da460d889e5fe35e85292934d51e254d0444dfb44b%22%2C%22clientid%22%3A53999199%2C%22psessionid%22%3A%228368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857%22%7D
{
result: [
{
type: ,//取值0,1,2
uin: //uinion id
},

]
retcode: 0
}
17.获取好友的头像(通过uin),会返回重定向,定向至获取qq头像的url
https://face5.web.qq.com/cgi/svr/face/getface?cache=1&type=1&f=40&uin=3105507355&t=1541464441&vfwebqq=3dd8214b9ae8767a806d82e206aa1d15f40b1ebfcbf15177dc55d18a73a60904331e0693b813b7db
真正的获取头像的url是直接返回图片数据

18.获取好友,个性签名
https://s.web2.qq.com/api/get_single_long_nick2?tuin=3105507355&vfwebqq=3dd8214b9ae8767a806d82e206aa1d15f40b1ebfcbf15177dc55d18a73a60904331e0693b813b7db&t=1541467050898

19.获取好友信息
https://s.web2.qq.com/api/get_friend_info2?tuin=3105507355&vfwebqq=3dd8214b9ae8767a806d82e206aa1d15f40b1ebfcbf15177dc55d18a73a60904331e0693b813b7db&clientid=53999199&psessionid=8368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857&t=1541467050899
{
result: {

},
retcode: 0

}
20.获取QQ群的所有信息
GET https://s.web2.qq.com/api/get_group_info_ext2?gcode=3657975264&vfwebqq=3dd8214b9ae8767a806d82e206aa1d15f40b1ebfcbf15177dc55d18a73a60904331e0693b813b7db&t=1541468011625

18.POST在线状态保持,查询接收到的消息
POST https://d1.web2.qq.com/channel/poll2
origin : r=%7B%22ptwebqq%22%3A%22%22%2C%22clientid%22%3A53999199%2C%22psessionid%22%3A%228368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857%22%2C%22key%22%3A%22%22%7D
parse : r: {“ptwebqq”:"",“clientid”:53999199,“psessionid”:“8368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857”,“key”:""}
polltype : “message” | “group_message”
当没有消息时返回:{
“errmsg”:“error”,
“retcode”:0,
“retmsg”:“ok”
}

21.给好友发消息
POST https://d1.web2.qq.com/channel/send_buddy_msg2
origin : r=%7B%22to%22%3A3105507355%2C%22content%22%3A%22%5B%5C%22%E6%B5%8B%E8%AF%95%E6%B6%88%E6%81%AF%5C%22%2C%5B%5C%22font%5C%22%2C%7B%5C%22name%5C%22%3A%5C%22%E5%AE%8B%E4%BD%93%5C%22%2C%5C%22size%5C%22%3A10%2C%5C%22style%5C%22%3A%5B0%2C0%2C0%5D%2C%5C%22color%5C%22%3A%5C%22000000%5C%22%7D%5D%5D%22%2C%22face%22%3A603%2C%22clientid%22%3A53999199%2C%22msg_id%22%3A41450001%2C%22psessionid%22%3A%228368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857%22%7D
parse : r: {
“to”:3105507355,
“content”:"[
“测试消息”,
[“font”,
{“name”:“宋体”,“size”:10,“style”:[0,0,0],“color”:“000000”}
]
]",
“face”:603,
“clientid”:53999199,
“msg_id”:41450001,
“psessionid”:“8368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857”
}

22.给qq群发消息
https://d1.web2.qq.com/channel/send_qun_msg2
origin : r=%7B%22group_uin%22%3A3657975264%2C%22content%22%3A%22%5B%5C%22.%5C%22%2C%5B%5C%22font%5C%22%2C%7B%5C%22name%5C%22%3A%5C%22%E5%AE%8B%E4%BD%93%5C%22%2C%5C%22size%5C%22%3A10%2C%5C%22style%5C%22%3A%5B0%2C0%2C0%5D%2C%5C%22color%5C%22%3A%5C%22000000%5C%22%7D%5D%5D%22%2C%22face%22%3A603%2C%22clientid%22%3A53999199%2C%22msg_id%22%3A41450002%2C%22psessionid%22%3A%228368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857%22%7D
parse : r: {“group_uin”:3657975264,“content”:"[".",[“font”,{“name”:“宋体”,“size”:10,“style”:[0,0,0],“color”:“000000”}]]",“face”:603,“clientid”:53999199,“msg_id”:41450002,“psessionid”:“8368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857”}

24.获取多人聊天群的信息
GET https://d1.web2.qq.com/channel/get_discu_info?did=2844223358&vfwebqq=3dd8214b9ae8767a806d82e206aa1d15f40b1ebfcbf15177dc55d18a73a60904331e0693b813b7db&clientid=53999199&psessionid=8368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857&t=1541468263086

23.给多人聊天群发消息
POST https://d1.web2.qq.com/channel/send_discu_msg2
origin : r=%7B%22did%22%3A1872970563%2C%22content%22%3A%22%5B%5C%221%5C%22%2C%5B%5C%22font%5C%22%2C%7B%5C%22name%5C%22%3A%5C%22%E5%AE%8B%E4%BD%93%5C%22%2C%5C%22size%5C%22%3A10%2C%5C%22style%5C%22%3A%5B0%2C0%2C0%5D%2C%5C%22color%5C%22%3A%5C%22000000%5C%22%7D%5D%5D%22%2C%22face%22%3A603%2C%22clientid%22%3A53999199%2C%22msg_id%22%3A41450003%2C%22psessionid%22%3A%228368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857%22%7D
parse : r: {“did”:1872970563,“content”:"[“1”,[“font”,{“name”:“宋体”,“size”:10,“style”:[0,0,0],“color”:“000000”}]]",“face”:603,“clientid”:53999199,“msg_id”:41450003,“psessionid”:“8368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857”}

获取个人的个性签名

https://s.web2.qq.com/api/get_single_long_nick2?tuin=4136756683&vfwebqq=5e4767d75abee0a53f544585a55d1e8121caed90137568ded283dbf079297d3d170a1a3892af97d2&t=1541665002663
{
“retcode”:0,
“result”:[
{“uin”:4136756683,“lnick”:“人生如逆旅 我亦是行人”}
]
}

改变登录状态

https://d1.web2.qq.com/channel/change_status2?newstatus=away&clientid=53999199&psessionid=8368046764001d636f6e6e7365727665725f77656271714031302e3133332e34312e383400001ad00000066b026e040015808a206d0000000a406172314338344a69526d0000002859185d94e66218548d1ecb1a12513c86126b3afb97a3c2955b1070324790733ddb059ab166de6857&t=1541683287380
{“retcode”:0}