完善表情资产后台能力并补充群总结落库
- 新增表情资产表,支持表情文件落盘后的资产沉淀、查询与发送时间回写 - 将表情下载从消息主链路中移出,改为后台定时批处理,降低同步入库阻塞风险 - 抽取通用 CDN 下载与 base64 落盘能力,统一图片与表情文件处理方式 - 在后台通讯录聊天窗口增加表情资产面板,支持查看资产并直接选择发送表情 - 新增后台表情资产接口,支持按群过滤最近表情素材 - 优化消息列表中的表情消息展示,支持在后台直接预览表情图片 - 启动时不再同步补偿历史表情,统一交由定时任务处理,避免影响系统稳定性 - 新增群总结落库表,支持将每日总结写入数据库,便于后续知识库提取与复用 - 将定时总结结果写入数据库,保留总结文本、周期信息、消息数量和元数据
This commit is contained in:
@@ -338,6 +338,22 @@ class MessageStorageDB(BaseDBOperator):
|
||||
print(f"更新消息图片文件路径出错: {e}")
|
||||
return False
|
||||
|
||||
def get_pending_emoji_messages(self, minutes_ago: int = 1440, limit: int = 50) -> List[Dict]:
|
||||
"""获取最近N分钟内未处理表情的消息"""
|
||||
sql = """
|
||||
SELECT message_id, group_id, sender, message_xml, timestamp, attachment_url, message_type
|
||||
FROM messages
|
||||
WHERE message_type IN ('47', '1090519089')
|
||||
AND image_path IS NULL
|
||||
AND timestamp >= DATE_SUB(NOW(), INTERVAL %s MINUTE)
|
||||
AND attachment_url IS NOT NULL
|
||||
AND attachment_url != ''
|
||||
ORDER BY timestamp ASC
|
||||
LIMIT %s
|
||||
"""
|
||||
params = (minutes_ago, limit)
|
||||
return self.execute_query(sql, params) or []
|
||||
|
||||
|
||||
def get_hourly_message_trend(self, group_id: str = None, days: int = 1) -> List[Dict]:
|
||||
"""获取指定群组的按小时消息趋势数据
|
||||
|
||||
Reference in New Issue
Block a user