站内消息支持三种类型,admin发送,mobile订阅

This commit is contained in:
yourname
2025-05-15 12:06:17 +00:00
parent 2f171d4335
commit f3042583df
4 changed files with 143 additions and 11 deletions

View File

@@ -132,6 +132,27 @@ export function setupMessageEvents({ socket , apiClient }:Variables) {
await apiClient.database.table('user_messages').insert(userMessages);
// 根据消息类型推送到不同频道
const messageData = {
id: messageId,
title,
content,
type,
sender_id: user.id,
sender_name: user.username,
created_at: new Date().toISOString()
};
if (type === MessageType.SYSTEM) {
socket.to('system').emit('message:received', messageData);
} else if (type === MessageType.ANNOUNCE) {
socket.to('announce').emit('message:received', messageData);
} else if (type === MessageType.PRIVATE) {
receiver_ids.forEach(userId => {
socket.to(`user_${userId}`).emit('message:received', messageData);
});
}
socket.emit('message:sent', {
message: '消息发送成功',
data: { id: messageId }