net.sf.jqql.packets.in._03
Class GetCustomHeadDataReplyPacket
java.lang.Object
net.sf.jqql.packets.Packet
net.sf.jqql.packets.InPacket
net.sf.jqql.packets._03InPacket
net.sf.jqql.packets.in._03.GetCustomHeadDataReplyPacket
public class GetCustomHeadDataReplyPacket
- extends _03InPacket
apply custom head data reply packet
1. head
2. unknown 4 byte
3. unknown 4 byte
4. length of content behind, 2 byte, exclusive
5. unknown 1 byte, 0x00
6. friend's QQ number, 4 byte
7. custom head timestamp, 4 byte
8. custom head file size, 4 byte
9. data absolute offset, 4 byte
10. data length 4 byte
11. data
Note: General speaking, source field of packet is 0x0000. If it's client version, the packet has no body. This is a new packet
or it's a kind of error. It's hard to judge. At present, we treat it as an error. Soure is not parsed when it's client version.
请求自定义头像数据的回复包
1. 包头
2. 未知的4字节
3. 未知的4字节
4. 后面的内容长度,2字节,exclusive
5. 未知1字节,0x00
6. 好友QQ号,4字节
7. 自定义头像时间戳,4字节
8. 自定义头像文件大小,4字节
9. 数据的绝对偏移,4字节
10. 数据的长度,4字节
11. 数据
Note: 一般来说,包的source字段是0x0000,如果是客户端版本号,则其没有包体内容。这到底是应该
看成一种新的包还是看成一种错误情况,不好说。目前把它当作错误情况,source为客户端版本号时不解析
- Author:
- luma
Fields inherited from class net.sf.jqql.packets.Packet |
bodyBuf, bodyDecrypted, command, crypter, ds, duplicated, header, log, sequence, source, user |
Methods inherited from class net.sf.jqql.packets._03InPacket |
decryptBody, encryptBody, equals, getBodyBytes, getCryptographStart, getFamily, getHeadLength, getLength, getTailLength, parseHeader, parseTail, putBody, putHead, putTail, toString |
Methods inherited from class net.sf.jqql.packets.Packet |
dump, getCommand, getHeader, getSequence, getSource, hash, hashCode, isDuplicated, setDuplicated, setHeader, setSequence |
qq
public int qq
timestamp
public int timestamp
headLength
public int headLength
offset
public int offset
dataLength
public int dataLength
data
public byte[] data
GetCustomHeadDataReplyPacket
public GetCustomHeadDataReplyPacket(ByteBuffer buf,
int length,
QQUser user)
throws PacketParseException
- Throws:
PacketParseException
getPacketName
public String getPacketName()
- Overrides:
getPacketName
in class Packet
- Returns:
- descriptive name of packet
包的描述性名称
parseBody
protected void parseBody(ByteBuffer buf)
throws PacketParseException
- Description copied from class:
Packet
- parse packet body, from begin position of buf
解析包体,从buf的开头位置解析起
- Specified by:
parseBody
in class Packet
- Parameters:
buf
- ByteBuffer
- Throws:
PacketParseException
- if parse error
如果解析出错