Skip to content

字段含义

感谢项目学习笔记 | QQNT 聊天记录导出GroupChatAnnualReport

nt_msg.db

group_msg_table

群聊数据 group_msg_table 表中的部分列含义如下:

列名类型MsgRecord说明
40001intmsgId消息ID,具有唯一性
40002intmsgRandom消息随机值,用于对消息去重
40003intmsgSeq群聊消息ID,在每个聊天中依次递增
40010intchatType聊天类型,私聊为1,群聊为2,频道为4,公众号为103,企业客服为102,临时会话为100
40011intmsgType消息类型,详见下表
40012intsubMsgTypepb消息类型,详见下表
40013intsendType发送标志,本机发送的消息为1,其他客户端发送的为2,别人发的消息为0 ,转发消息为5,在已退出或被封禁的消息中为当日整点时间戳
40020strsenderuidnt_uid, 对应 nt_uid_mapping_table
40021strpeeruid会话ID
40027intpeeruin会话ID
40041intsendStatus发送状态,2为成功,0为发送被阻止(如不是对方好友),1为尚未发送成功(比如网络问题),3为消息被和谐
40050intmsgTime发送消息时的完整时间戳,UTC+8:00
40090strsendMemberName发送者群名片,旧版 QQ 迁移数据中格式为 name(12345)name<i@example.com>, QQNT 中为群名片
40093strsendNickName发送者昵称,旧版 QQ 此字段为空,QQNT 中未设置群名片时才有此字段
40080protobuf聊天消息,最为复杂尚未解析完
40900protobuf不同情况下存在不一样的数据(以列40011为区分)值为8时,列40900存贮转发聊天的缓存
值为9时,列40900存贮引用的消息
40005int只知道自己发的消息一定概率存在数值正常情况为0
40058int当日 0 时整的时间戳格式时区为 GMT+0800
40006intelem id?不知道用处
40100int@状态详见下表
40600protobuf状态标志?protobuf 格式,详见说明
40060int已退出或已解散的群聊标志
40850int回复消息序号该消息所回复的消息的序号
40801protobuf无法理解的protobuf
40030int群号QQNT 保存的群号
40033int发送者 QQ 号QQNT 保存的发送者 QQ 号
40062protobuf存贮详细表态信息(包括表态表情和表态数量)其数字与QQBOT中表情编号对应(超级表情不在此列表中)
40083int表态表情数量总和
40084int表态表情数量总和

c2c_msg_table

私聊数据 c2c_msg_table 表中的部分列含义如下:

列名类型含义说明
40030int私聊对象 QQ 号对方 QQ 号(无论是对方还是自己发送的消息)
40033int发送者 QQ 号发送者的 QQ 号
40050int时间时间戳(单位为秒)
40058int日期当日 0 时整的时间戳格式
40093str消息发送者QQ 昵称或是备注名
40800bytes消息内容protobuf 格式

group_at_me_msg

被@消息

列名类型MsgRecord含义
40001intMsgid消息ID
40027intpeeruin群号
40020strsenderUid@我的成员的nt_uid
40100intatTypeArray@类型数组
有人 @ 我:6;@ 群里所有人:1
40050inttimestamp消息时间戳
40003intmsgSeq群聊消息ID,在每个群聊中依次递增

recent_contact_top_table

置顶聊天信息

列名类型含义
40010int聊天类型
41103int置顶时间
1000str当置顶聊天为私聊时,此处显示uin
60001int当置顶聊天为群聊时,此处显示peeruin

recent_contact_v3_table

聊天对象资料信息

列名类型MsgRecord含义
40010intchatType见上表
40021strpeeruin / nt_uid
40030intuinc2c才有此值,group此值均为0
40051protobuflastMessageprotobuf,最后一条消息
40041intsendStatus见上表
40050intlastTime最后一条消息的时间戳,单位:秒
40003strmsgSeq
40094strsource来源
40093strsendNickName
40090strsendMemberName
40095strsendremarkName成员备注名称
40020strnt_uid
40033intuin
41110strgroupavatar群头像本地缓存路径
41135str当通过群聊发起聊天时,显示对应群昵称

注意:以下信息可能存在不准确性:所有值均为本人通过自己的聊天信息推断而来,可能存在未发现或错误分析,欢迎大佬指正

40011部分值信息解读

展开阅读

疑似用于区分消息类型

无消息(消息损坏?多见于已退出群聊且时间久远):0

消息空白(msgid存在,应该是没加载出来):1

text文本消息:2

群文件:3

我的聊天记录里没有4~大佬带带>︿<

系统(灰字)消息:5

语音消息:6

视频文件:7

合并转发消息:8

回复类型消息:9

红包:10

应用消息:11

40012部分值信息解读

展开阅读

疑似用于区分pb消息类型

非常规text消息:0

普通文本消息:1

群文件其他类型消息:1

图片消息:2

群文件图片消息:2

群公告:3

群文件视频消息:4

撤回消息提醒:4

群文件音频消息:8

原创表情包:8

射精消息:11

拍一拍消息:12

群文件docx消息:16

平台文本消息:32

群文件pptx消息:32

回复类型消息:33

群文件xlsx消息:64

存在链接:161

群文件zip消息:512

群文件exe消息:2048

表情消息:4096

40011与40012组合可判断消息类型

一些常见消息组合

由于优先级问题(特别是2类别的信息),部分消息不满足以下规则

空消息:0,0

已撤回消息:1,0

普通文本类消息:2,1

图片消息:2,2

只带图片的纯文本消息:2,3

纯表情消息:2,16

带表情的纯文本消息:2,17

带图片带表情的纯文本消息:2,19

纯链接消息:2,129

带表情链接消息:2,145

机器人消息:2,577

机器人Markdown消息:2,65

@消息:2,35

回复引用消息(不带表情):2,33

回复引用消息(带表情):2,49

收藏表情:2,2

收藏表情包:2,4096

群文件其他类型消息:3,1

群文件图片(png,jpg)消息:3,2

群文件视频消息:3,4

群文件音频(mp3,flac)消息:3,8

群文件docx消息:3,16

群文件pptx消息:3,32

群文件xlsx消息:3,64

群文件zip消息:3,512

群文件exe消息:3,2048

拍一拍消息:5,12

撤回消息提醒:5,4

amr语音文件消息:6,0

视频文件消息:7,0

合并转发消息:8,0

回复消息:9,33

回复带图片消息(无@):9,34

回复带图片消息(有@):9,35

回复带图片带@:9,35

回复卡片引用消息:9,49

带表情回复:9,49

带表情带图片带@:9,51

回复存在链接的消息:9,161

红包:10,0

应用消息(如小程序):11,0

群公告:11,3

表情包:17,8

原创表情:17,8

40100值解读

值为6:有人@我;为2,有人@他人;为0,此条消息不包含@

40600值解读

当40600(16进制)值为14 00时,为回复消息

此时:40100的值:

为6代表有人回复自己,为2代表他人回复他人

当40600(16进制)值为c2e91304a8d114****时(不唯一),为撤回消息

Protobuf 消息格式

消息内容 protobuf 的部分字段含义如下:

Field Number类型含义说明
48000protobuf 或 protobuf array消息段一条消息中可以有多个消息段,按内容顺序,类似于富文本;部分类型中可嵌套

消息段(48000)的部分字段含义如下:

Field Number类型MsgRecord说明所属Element
40010intchatType
45001intelementId元素id,与msgid一样,具有唯一性
45002intelementType详见下表
45003intsubElementType?未确定
45004strmsgid+faceType
45101strcontent文本消息text
45102strtext语音转文字pttElement
45402strfileName文件名file、ptt
45403strfilePath文件路径file 、ptt
45405intfileSize文件大小fileElement 、pttElement
45406intmd5HexStr视频消息中对应videoMD5fileElement
45407bytesfile10MMD5file、ptt 文件消息才存在
45408bytesfileShafile文件消息才存在
45409bytesfileSha3file 文件消息才存在
45410intvideotime视频时间videoElement、fileElement
45411intthumbWidth预览封面宽度videoElement
45412intthumbHeight预览封面高度videoElement
45413intthumbWidth预览封面宽度
45414intthumbHeight预览封面高度
45415intthumbSize预览封面大小videoElement
45416intpicType图片类型,1000为静态图片,2000为GIFpicElement
45418intoriginal
45422strthumbfilename(非官方)预览封面路径
位于半私有目录/Tencent/MobileQQ/shortvideo/thumbs/
videoElement
45424string|bytesoriginImageMd5
45503strfileUuid
45411intpicWidth原图宽度
45412intpicHeight原图宽度
45862bytesthumbMD5预览封面MD5(对于45422文件)videoElement
45906intduration语音持续时间pttElement
45923strtext语音转文字pttElement
45925byteswaveAmplitudes信号频率pttElement
45954strpicThumbPath预览封面路径fileElement
47401intreplaymsgid引用的消息msgidreplyElement
47402intreplayMsgSeq引用的消息seqreplyElement
47403intreplymsgTime引用的消息发送时间戳replyElement
47404intreplymsgTime引用的消息发送时间戳replyElement
47413str引用的消息仅文本replyElement
47421str引用方群昵称replyElement
47422intsourceMsgIdInRecordsreplyElement
47601intfaceindex表情IDfaceElement
47602strfacetext表情含义(外显文字)
47901strbytesData卡片详细信息
49155intmsgTime发送时间
95654intthumbSize预览封面大小fileElement
47713str撤回消息后缀适用于系统撤回消息系统撤回消息
48602strXML 消息内容适用于 XML 消息XML 消息

elementType说明

MsgRecord说明
1textElement文本段
2picElement图片段
3fileElement文件消息
4pttElement语音消息
5videoElement视频消息
6faceElementQQ系统表情
7replyElement引用
8grayTipElement系统消息(灰字提示)
9WalletElement红包消息
10arkElement卡片消息
11marketFaceElement商城表情
14markdownElementmarkdown消息
17inlineKeyboardElementmarkdown按钮消息
27faceBubbleElement弹射表情包
28shareLocationElement位置共享