字段含义
感谢项目学习笔记 | QQNT 聊天记录导出 与GroupChatAnnualReport
nt_msg.db
group_msg_table
群聊数据 group_msg_table
表中的部分列含义如下:
列名 | MsgRecord | 说明 |
---|---|---|
40001 | msgId | 消息ID,具有唯一性 |
40002 | msgRandom | 消息随机值,用于对消息去重 |
40003 | msgSeq | 群聊消息ID,在每个群聊中依次递增 |
40010 | chatType | 聊天类型,私聊为1,群聊为2,频道为4,公众号为103,企业客服为102,临时会话为100 |
40011 | msgType | 消息类型,详见下表 |
40012 | subMsgType | pb消息类型,详见下表 |
40013 | sendType | 发送标志,本机发送的消息为1,其他客户端发送的为2,别人发的消息为0 ,转发消息为5,在已退出或被封禁的消息中为当日整点时间戳 |
40020 | senderUid | nt_uid, 对应 nt_uid_mapping_table |
40021 | peerUid | QQ群号 |
40027 | peerUin | 群号 |
40041 | sendStatus | 发送状态,2为成功,0为发送被阻止(如不是对方好友),1为尚未发送成功(比如网络问题),3为消息被和谐 |
40050 | msgTime | 发送消息时的完整时间戳,UTC+8:00 |
40090 | sendMemberName | 发送者群名片,旧版 QQ 迁移数据中格式为 name(12345) 或 name<i@example.com> , QQNT 中为群名片 |
40093 | sendNickName | 发送者昵称,旧版 QQ 此字段为空,QQNT 中未设置群名片时才有此字段 |
40080 | 聊天消息,最为复杂 | 尚未解析完 |
40900 | 不同情况下存在不一样的数据(以列40011为区分) | 值为8时,列40900存贮转发聊天的缓存 值为9时,列40900存贮引用的消息 |
40005 | 只知道自己发的消息一定概率存在数值 | 正常情况为0 |
40058 | 当日 0 时整的时间戳格式 | 时区为 GMT+0800 |
40006 | elem id? | 不知道用处 |
40100 | @状态 | 详见下表 |
40600 | 状态标志? | protobuf 格式,详见说明 |
40060 | 已退出或已解散的群聊标志 | |
40850 | 回复消息序号 | 该消息所回复的消息的序号 |
40801 | 无法理解的protobuf | |
40030 | 群号 | QQNT 保存的群号 |
40033 | 发送者 QQ 号 | QQNT 保存的发送者 QQ 号 |
40062 | 存贮详细表态信息(包括表态表情和表态数量) | 其数字与QQBOT中表情编号对应(超级表情不在此列表中) |
40083 | 表态表情数量总和 | |
40084 | 表态表情数量总和 |
c2c_msg_table
私聊数据 c2c_msg_table
表中的部分列含义如下:
列名 | 类型 | 含义 | 说明 |
---|---|---|---|
40030 | int | 私聊对象 QQ 号 | 对方 QQ 号(无论是对方还是自己发送的消息) |
40033 | int | 发送者 QQ 号 | 发送者的 QQ 号 |
40050 | int | 时间 | 时间戳(单位为秒) |
40058 | int | 日期 | 当日 0 时整的时间戳格式 |
40093 | str | 消息发送者 | QQ 昵称或是备注名 |
40800 | bytes | 消息内容 | protobuf 格式 |
注意:以下信息可能存在不准确性:所有值均为本人通过自己的聊天信息推断而来,可能存在未发现或错误分析,欢迎大佬指正
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 | 类型 | 含义 | 说明 |
---|---|---|---|
48000 | protobuf 或 protobuf array | 消息段 | 一条消息中可以有多个消息段,按内容顺序,类似于富文本;部分类型中可嵌套 |
消息段(48000)的部分字段含义如下:
Field Number | 类型 | 含义 | 说明 |
---|---|---|---|
45001 | int | 消息段 ID | |
45002 | int | 消息类型 | 见下表 |
45101 | str | 消息文本 | 适用于文本消息 |
45102 | str | 图片文件名 | 适用于图片消息 |
45402 | str | 图片文件名 | 适用于图片消息 |
45411 | int | 图片宽度(压制后) | 适用于图片消息 |
45412 | int | 图片高度(压制后) | 适用于图片消息 |
45812 | str | 本地缓存目录 | 适用于图片消息 |
45815 | str | 替代文本,如 "[动画表情]" | 适用于图片消息 |
47402 | int | 原消息序号 | 适用于引用消息 |
47403 | int | 原消息发送者 | 适用于引用消息 |
47404 | int | 原消息时间 | 适用于引用消息 |
47410 | protobuf | 格式复杂,存储原消息文本,疑似原消息过期后用以替代 47423 | 适用于引用消息 |
47413 | str | 显示的引用文本 | 适用于引用消息 |
47423 | protobuf | 引用消息段(嵌套) | 适用于引用消息 |
47713 | str | 撤回消息后缀 | 适用于系统撤回消息 |
48602 | str | XML 消息内容 | 适用于 XML 消息 |
其中消息类型(45002)的已知消息类型与对应序号如下:
45002 | 含义 | 说明 |
---|---|---|
1 | 文本消息 | 普通纯文本消息,以及 at 消息本质上为独立成消息段且内容为 "@群昵称" 的消息,包含于此 |
2 | 图片消息 | |
3 | 文件消息 | |
4 | 语音消息 | |
6 | 表情 | https://bot.q.qq.com/wiki/develop/api/openapi/emoji/model.html |
7 | 引用 | 即常说的“回复”,位于消息段开头,其后为正式消息 |
8 | 系统消息 | 显示于屏幕中央的灰色小字提示,如撤回、接收文件 |
10 | 应用消息 | |
11 | 表情 | |
16 | XML 消息 | 转发聊天记录本质上也是 XML 消息,包含于此 |
21 | 通话消息 | |
26 | 动态消息 |