Struct matrix_sdk::room_preview::RoomPreview
source · pub struct RoomPreview {
pub canonical_alias: Option<OwnedRoomAliasId>,
pub name: Option<String>,
pub topic: Option<String>,
pub avatar_url: Option<OwnedMxcUri>,
pub num_joined_members: u64,
pub room_type: Option<RoomType>,
pub join_rule: SpaceRoomJoinRule,
pub is_world_readable: bool,
pub state: Option<RoomState>,
}
Expand description
The preview of a room, be it invited/joined/left, or not.
Fields§
§canonical_alias: Option<OwnedRoomAliasId>
The canonical alias for the room.
name: Option<String>
The room’s name, if set.
topic: Option<String>
The room’s topic, if set.
avatar_url: Option<OwnedMxcUri>
The MXC URI to the room’s avatar, if set.
num_joined_members: u64
The number of joined members.
room_type: Option<RoomType>
The room type (space, custom) or nothing, if it’s a regular room.
join_rule: SpaceRoomJoinRule
What’s the join rule for this room?
is_world_readable: bool
Is the room world-readable (i.e. is its history_visibility set to world_readable)?
state: Option<RoomState>
Has the current user been invited/joined/left this room?
Set to None
if the room is unknown to the user.
Implementations§
source§impl RoomPreview
impl RoomPreview
sourcepub async fn from_room_summary(
client: &Client,
room_id: &RoomId
) -> Result<Self>
pub async fn from_room_summary( client: &Client, room_id: &RoomId ) -> Result<Self>
Get a RoomPreview
using MSC3266, if available on the remote server.
Will fail with a 404 if the API is not available.
This method is exposed for testing purposes; clients should prefer
Client::get_room_preview
in general over this.
sourcepub async fn from_state_events(
client: &Client,
room_id: &RoomId
) -> Result<Self>
pub async fn from_state_events( client: &Client, room_id: &RoomId ) -> Result<Self>
Get a RoomPreview
using the room state endpoint.
This is always available on a remote server, but will only work if one of these two conditions is true:
- the user has joined the room at some point (i.e. they’re still joined or they’ve joined it and left it later).
- the room has an history visibility set to world-readable.
This method is exposed for testing purposes; clients should prefer
Client::get_room_preview
in general over this.
Trait Implementations§
Auto Trait Implementations§
impl RefUnwindSafe for RoomPreview
impl Send for RoomPreview
impl Sync for RoomPreview
impl Unpin for RoomPreview
impl UnwindSafe for RoomPreview
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CompatExt for T
impl<T> CompatExt for T
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
§fn new_handle(value: Arc<T>) -> Handle
fn new_handle(value: Arc<T>) -> Handle
§fn clone_handle(handle: Handle) -> Handle
fn clone_handle(handle: Handle) -> Handle
§fn consume_handle(handle: Handle) -> Arc<T>
fn consume_handle(handle: Handle) -> Arc<T>
Arc<>