diff --git a/src/admin/query/room_alias.rs b/src/admin/query/room_alias.rs index 040d6ce8..a7a81362 100644 --- a/src/admin/query/room_alias.rs +++ b/src/admin/query/room_alias.rs @@ -8,6 +8,13 @@ use crate::Context; #[derive(Debug, Subcommand)] /// All the getters and iterators from src/database/key_value/rooms/alias.rs pub(crate) enum RoomAliasCommand { + /// - Resolve any local or remote alias. + ResolveAlias { + /// Full room alias + alias: OwnedRoomAliasId, + }, + + /// - Resolve an alias on this server. ResolveLocalAlias { /// Full room alias alias: OwnedRoomAliasId, @@ -28,6 +35,13 @@ pub(super) async fn process(subcommand: RoomAliasCommand, context: &Context<'_>) let services = context.services; match subcommand { + | RoomAliasCommand::ResolveAlias { alias } => { + let timer = tokio::time::Instant::now(); + let results = services.alias.resolve_alias(&alias).await; + let query_time = timer.elapsed(); + + write!(context, "Query completed in {query_time:?}:\n\n```rs\n{results:#?}\n```") + }, | RoomAliasCommand::ResolveLocalAlias { alias } => { let timer = tokio::time::Instant::now(); let results = services.alias.resolve_local_alias(&alias).await; diff --git a/src/core/matrix/state_res/event_auth/room_member.rs b/src/core/matrix/state_res/event_auth/room_member.rs index 920e4f08..477dd3be 100644 --- a/src/core/matrix/state_res/event_auth/room_member.rs +++ b/src/core/matrix/state_res/event_auth/room_member.rs @@ -10,7 +10,7 @@ use ruma::{ }; use crate::{ - Err, Result, debug, err, is_equal_to, + Err, Result, err, is_equal_to, matrix::{Event, StateKey}, };