feat: Fall back to remote room summary if local fails

This commit is contained in:
timedout
2025-12-31 20:01:29 +00:00
committed by Jade Ellis
parent a7e6e6e83f
commit 44851ee6a2
+9 -3
View File
@@ -7,7 +7,7 @@ use conduwuit::{
}; };
use futures::{ use futures::{
FutureExt, StreamExt, TryFutureExt, FutureExt, StreamExt, TryFutureExt,
future::{OptionFuture, join, join3}, future::{OptionFuture, join, join3, ok},
stream::FuturesUnordered, stream::FuturesUnordered,
}; };
use ruma::{ use ruma::{
@@ -80,9 +80,15 @@ async fn room_summary_response(
.server_in_room(services.globals.server_name(), room_id) .server_in_room(services.globals.server_name(), room_id)
.await .await
{ {
return local_room_summary_response(services, room_id, sender_user) match local_room_summary_response(services, room_id, sender_user)
.boxed() .boxed()
.await; .await
{
| Ok(response) => return Ok(response),
| Err(e) => {
debug_warn!("Failed to get local room summary: {e:?}, falling back to remote");
},
}
} }
let room = let room =