pub enum CreateRoomKind {
Dm {
peer: UserId,
},
Group {
name: String,
invite: Vec<UserId>,
members_can_invite: bool,
},
Channel {
name: String,
topic: Option<String>,
},
}Expand description
Which shape MessengerCommand::CreateRoom builds, mapped onto the
server’s own POST /createRoom field set (visibility/is_direct/
invite/name/topic — the server derives kind itself from
visibility+is_direct, per the server plan’s §5; a client never
sends a preset/kind field directly).
Variants§
Dm
A 1:1 conversation: is_direct: true, exactly one invitee. Also
merges the new room into this account’s own m.direct account data
once the room is created (this module’s own doc).
Group
A private multi-person room.
Fields
Channel
A public, announcement-style room: join_rule public (anyone can
join) and plaintext (the server keeps channel posts unencrypted).
Only moderators write until events_default is lowered (an open room).
Trait Implementations§
Source§impl Clone for CreateRoomKind
impl Clone for CreateRoomKind
Source§impl Debug for CreateRoomKind
impl Debug for CreateRoomKind
impl Eq for CreateRoomKind
Source§impl PartialEq for CreateRoomKind
impl PartialEq for CreateRoomKind
impl StructuralPartialEq for CreateRoomKind
Auto Trait Implementations§
impl Freeze for CreateRoomKind
impl RefUnwindSafe for CreateRoomKind
impl Send for CreateRoomKind
impl Sync for CreateRoomKind
impl Unpin for CreateRoomKind
impl UnsafeUnpin for CreateRoomKind
impl UnwindSafe for CreateRoomKind
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
Mutably borrows from an owned value. Read more