This commit is contained in:
2026-08-29 18:58:13 +02:00
parent 9551e90678
commit f2197a6b28
7 changed files with 214 additions and 73 deletions
+18
View File
@@ -6,6 +6,7 @@ use crate::domain::events::message::{
MessageCreatedEvent, MessageDeletedEvent, MessageReactionAddedEvent,
MessageReactionRemovedEvent, MessageUpdatedEvent,
};
use crate::domain::events::server_tree::ServerTreeInvalidatedEvent;
use crate::models::{category, server, server_user, user};
use crate::repositories::Repositories;
use crate::routes::category::mapper::category_model_to_category_response;
@@ -369,6 +370,23 @@ impl RealtimeRouter {
},
);
let router = Arc::clone(self);
event_bus.on_async::<ServerTreeInvalidatedEvent, _, _>(
"server_tree_invalidated",
move |event| {
let router = Arc::clone(&router);
async move {
let users = match event.user_ids {
Some(users) => users,
None => router.server_users(event.server_id).await,
};
router
.gateway
.send_to_users(users, "ServerTree", "refresh", event.server_id);
}
},
);
let router = Arc::clone(self);
event_bus.on_async::<EmojiCreatedEvent, _, _>("emoji_created", move |event| {
let router = Arc::clone(&router);