fix: simplify emoji message display in dashboard

This commit is contained in:
liuwei
2026-04-07 13:29:35 +08:00
parent 389e4db37e
commit 61edbbe987
2 changed files with 12 additions and 0 deletions

View File

@@ -10,6 +10,13 @@ messages_bp = Blueprint('messages', __name__)
logger = logger
def _is_emoji_message(msg: dict) -> bool:
message_type = str(msg.get('message_type', ''))
content = msg.get('content') or ''
xml_markers = ('<emoji', '<emoticonmd5>', '<msg><emoji', '<gameext')
return message_type in {'47', '1048625', '1090519089'} or any(marker in content for marker in xml_markers)
# 消息列表页面
@messages_bp.route('/messages')
@login_required
@@ -51,6 +58,10 @@ def get_messages():
# 获取发送者昵称
msg['sender_name'] = server.contact_manager.get_group_name(msg['group_id'], msg['sender']) or msg['sender']
if _is_emoji_message(msg):
msg['content'] = '[表情]'
continue
# 处理消息内容,格式化引用消息
if msg['message_type'] == "49" and msg['content']: # 应用消息类型
try:

View File

@@ -317,6 +317,7 @@
const typeMap = {
1: '文本消息',
3: '图片消息',
47: '表情消息',
43: '视频消息',
49: '链接消息'
};