mirror of
https://wget.la/https://github.com/Wxw-Gu/WechatExplorer
synced 2026-08-17 11:37:06 +08:00
113 lines
2.2 KiB
TypeScript
113 lines
2.2 KiB
TypeScript
export type ReportHeat = '高' | '中' | '低'
|
|
|
|
export interface ReportTopic {
|
|
title: string
|
|
timeRange: string
|
|
heat: ReportHeat
|
|
participants: string[]
|
|
summary: string
|
|
conclusion?: string
|
|
keywords: string[]
|
|
}
|
|
|
|
export interface ReportResource {
|
|
title: string
|
|
description: string
|
|
sender?: string
|
|
}
|
|
|
|
export interface ReportImportantMessage {
|
|
sender: string
|
|
time: string
|
|
content: string
|
|
note: string
|
|
}
|
|
|
|
export interface ReportQuoteMessage {
|
|
sender: string
|
|
content: string
|
|
}
|
|
|
|
export interface ReportQuote {
|
|
messages: ReportQuoteMessage[]
|
|
note: string
|
|
}
|
|
|
|
export interface ReportQuestionAnswer {
|
|
question: string
|
|
answer: string
|
|
answerer?: string
|
|
}
|
|
|
|
export interface ReportTopicHeat {
|
|
topic: string
|
|
score: number
|
|
}
|
|
|
|
export interface ReportSpeakerRank {
|
|
name: string
|
|
count: number
|
|
}
|
|
|
|
export interface GroupDailyReport {
|
|
overview: string
|
|
topics: ReportTopic[]
|
|
resources: ReportResource[]
|
|
importantMessages: ReportImportantMessage[]
|
|
quotes: ReportQuote[]
|
|
qa: ReportQuestionAnswer[]
|
|
analytics: {
|
|
topicHeat: ReportTopicHeat[]
|
|
activeTimeline: string
|
|
topSpeakers: ReportSpeakerRank[]
|
|
}
|
|
keywords: string[]
|
|
}
|
|
|
|
export interface GroupReportMetadata {
|
|
groupName: string
|
|
reportDate: string
|
|
dateRange: string
|
|
messageCount: number
|
|
activeUsers: number
|
|
timeSpan: string
|
|
generatedAt: string
|
|
recordNote: string
|
|
footerNote: string
|
|
heroParticipants: string[]
|
|
avatars: Record<string, string | undefined>
|
|
// === 新增(可选,向后兼容) ===
|
|
/** 群昵称 / wxid / md5,服务端用来反推真头像(从 getGroupSnapshot) */
|
|
talker?: string
|
|
/** 预留,与 /api/v1/chatlog 的 time 参数同格式 */
|
|
timeRange?: string
|
|
/** 服务端写回,告知 client enrich 失败/部分缺失 */
|
|
warnings?: string[]
|
|
}
|
|
|
|
export interface GroupReportExportRequest {
|
|
report: GroupDailyReport
|
|
metadata: GroupReportMetadata
|
|
}
|
|
|
|
export interface GroupReportExportResult {
|
|
success: boolean
|
|
htmlPath?: string
|
|
pngPath?: string
|
|
imageDataUrl?: string
|
|
exportTimings?: {
|
|
html?: {
|
|
startedAt: string
|
|
endedAt: string
|
|
duration: number
|
|
}
|
|
png?: {
|
|
startedAt: string
|
|
endedAt: string
|
|
duration: number
|
|
}
|
|
}
|
|
warnings?: string[]
|
|
error?: string
|
|
}
|