持久化表情中文语义资产\n\n- 新增 t_emoji_assets 表及迁移脚本,持久化保存表情发送参数、中文语义与预览图路径\n- 在消息归档与媒体补偿流程中自动回填表情资产,实现收到表情即落语义、补图后回填预览\n- 后台表情库与自动回复优先读取持久化表情资产,仅在空表场景下小范围回补历史数据

This commit is contained in:
liuwei
2026-04-27 11:52:31 +08:00
parent 623ca505d4
commit 62e6f67836
7 changed files with 334 additions and 172 deletions

View File

@@ -61,6 +61,31 @@ create or replace index idx_message_type
create or replace index messages_message_id_index
on message_archive.messages (message_id);
create or replace table message_archive.t_emoji_assets
(
md5 varchar(64) not null comment '表情MD5'
primary key,
total_length int not null default 0 comment '表情总长度',
semantic_text varchar(255) null comment '主语义文本',
semantic_aliases longtext null comment '语义别名列表(JSON数组)',
semantic_source varchar(64) null comment '语义来源字段如desc/emojiattr',
preview_url varchar(255) null comment '本地预览图路径',
sample_message_id varchar(32) null comment '样例消息ID',
sample_group_id varchar(100) null comment '样例群ID',
sample_sender varchar(100) null comment '样例发送者',
first_seen_at datetime default current_timestamp() null comment '首次看到时间',
last_seen_at datetime default current_timestamp() null on update current_timestamp() comment '最近看到时间',
created_at datetime default current_timestamp() null comment '创建时间',
updated_at datetime default current_timestamp() null on update current_timestamp() comment '更新时间'
)
comment '表情语义资产表';
create or replace index idx_emoji_last_seen
on message_archive.t_emoji_assets (last_seen_at);
create or replace index idx_emoji_preview
on message_archive.t_emoji_assets (preview_url);
create or replace table message_archive.t_message_mentions
(
id bigint auto_increment

View File

@@ -0,0 +1,17 @@
CREATE TABLE IF NOT EXISTS message_archive.t_emoji_assets (
md5 VARCHAR(64) PRIMARY KEY COMMENT '表情MD5',
total_length INT NOT NULL DEFAULT 0 COMMENT '表情总长度',
semantic_text VARCHAR(255) DEFAULT '' COMMENT '主语义文本',
semantic_aliases LONGTEXT NULL COMMENT '语义别名列表(JSON数组)',
semantic_source VARCHAR(64) DEFAULT '' COMMENT '语义来源字段如desc/emojiattr',
preview_url VARCHAR(255) DEFAULT '' COMMENT '本地预览图路径',
sample_message_id VARCHAR(32) DEFAULT '' COMMENT '样例消息ID',
sample_group_id VARCHAR(100) DEFAULT '' COMMENT '样例群ID',
sample_sender VARCHAR(100) DEFAULT '' COMMENT '样例发送者',
first_seen_at DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '首次看到时间',
last_seen_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最近看到时间',
created_at DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
INDEX idx_emoji_last_seen (last_seen_at),
INDEX idx_emoji_preview (preview_url)
);