feat: add message management and delivery states

This commit is contained in:
2026-07-16 17:23:24 +08:00
parent 07c7260a3c
commit 565d044f18
17 changed files with 881 additions and 97 deletions
+5
View File
@@ -10,6 +10,7 @@ export interface ChatServerEvents {
message: (from: DeviceInfo, msg: MessageEnvelope) => void
recall: (from: DeviceInfo, messageId: string) => void
typing: (from: DeviceInfo) => void
read: (from: DeviceInfo, upToMessageId: string) => void
}
export class ChatServer extends EventEmitter {
@@ -77,6 +78,10 @@ export class ChatServer extends EventEmitter {
case 'recall':
if (peer) this.emit('recall', peer, frame.messageId)
break
case 'read':
// 已读回执: 接收方已看到 upTo (含), 把 ≤ upTo 的发送方消息视为已读
if (peer) this.emit('read', peer, frame.upTo)
break
case 'typing':
if (peer) this.emit('typing', peer)
break