feat: release contextual omnichannel customer platform

Add Telegram, WhatsApp and email account management, realtime messaging, contextual multilingual AI, customer intelligence, knowledge workflows, enterprise controls, a unified design system and complete repository documentation.
This commit is contained in:
wmq
2026-07-30 02:29:53 +08:00
parent 9804341463
commit af49d22ca7
66 changed files with 3181 additions and 554 deletions
+50
View File
@@ -32,7 +32,24 @@ export interface Message {
translationCn?: string
translationStatus?: 'pending' | 'completed' | 'failed'
translatedAt?: string
translationMethod?: 'ai-contextual' | 'ai-direct' | 'source'
translationContextMessages?: number
translationConversationSummaryApplied?: boolean
translationModel?: string
intentStatus?: 'pending' | 'completed' | 'failed'
intentAnalysis?: {
primary: string
label: string
confidence: number
urgency: 'low' | 'medium' | 'high' | 'urgent'
sentiment: 'positive' | 'neutral' | 'negative' | 'angry'
entities: string[]
rationale: string
analyzedAt: string
model: string
}
originalLang: string
targetLang?: string
status: MessageStatus
createdAt: string
isImportant?: boolean
@@ -96,6 +113,37 @@ export interface Conversation {
presence?: 'available' | 'unavailable' | 'composing' | 'recording' | 'paused'
presenceUpdatedAt?: string
lastSeenAt?: string
translationTargetLang?: string
messageIntentEnabled?: boolean
aiContextStatus?: 'waiting' | 'queued' | 'compressing' | 'ready' | 'failed'
aiContextSourceMessageCount?: number
aiContextPendingMessages?: number
aiContextCompressedAt?: string
aiContextCompactedMessageIds?: string[]
aiContextMemory?: {
summary: string
facts: string[]
commitments: string[]
products: string[]
unresolved: string[]
preferences: string[]
updatedThroughMessageId: string
sourceMessageCount: number
updatedAt: string
model: string
version: number
}
}
export interface AiBackfillStatus {
status: 'not-started' | 'queued' | 'running' | 'completed' | 'failed'
totalCount: number
completedCount: number
pendingCount: number
progress: number
startedAt?: string
completedAt?: string | null
lastError?: string
}
export type ChannelStatus = 'connected' | 'disconnected' | 'error' | 'paused' | 'unconnected'
@@ -142,6 +190,8 @@ export interface SendMessagePayload {
text: string
/** 已确认的中文参考译文,仅在内部消息记录中保存 */
translationCn?: string
/** auto 表示根据客户最近消息或客户画像自动选择目标语言 */
targetLang?: string
replyToId?: string
replyPreview?: string
type?: MessageType