#[non_exhaustive]pub struct Request {
pub creation_content: Option<Raw<CreationContent>>,
pub initial_state: Vec<Raw<AnyInitialStateEvent>>,
pub invite: Vec<OwnedUserId>,
pub invite_3pid: Vec<Invite3pid>,
pub is_direct: bool,
pub name: Option<String>,
pub power_level_content_override: Option<Raw<RoomPowerLevelsEventContent>>,
pub preset: Option<RoomPreset>,
pub room_alias_name: Option<String>,
pub room_version: Option<RoomVersionId>,
pub topic: Option<String>,
pub visibility: Visibility,
}
api
and (crate features client
or server
) only.Expand description
Request type for the create_room
endpoint.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.creation_content: Option<Raw<CreationContent>>
Extra keys to be added to the content of the m.room.create
.
initial_state: Vec<Raw<AnyInitialStateEvent>>
List of state events to send to the new room.
Takes precedence over events set by preset, but gets overridden by name and topic keys.
invite: Vec<OwnedUserId>
A list of user IDs to invite to the room.
This will tell the server to invite everyone in the list to the newly created room.
invite_3pid: Vec<Invite3pid>
List of third party IDs of users to invite.
is_direct: bool
If set, this sets the is_direct
flag on room invites.
name: Option<String>
If this is included, an m.room.name
event will be sent into the room to indicate the
name of the room.
power_level_content_override: Option<Raw<RoomPowerLevelsEventContent>>
Power level content to override in the default power level event.
preset: Option<RoomPreset>
Convenience parameter for setting various default state events based on a preset.
room_alias_name: Option<String>
The desired room alias local part.
room_version: Option<RoomVersionId>
Room version to set for the room.
Defaults to homeserver’s default if not specified.
topic: Option<String>
If this is included, an m.room.topic
event will be sent into the room to indicate
the topic for the room.
visibility: Visibility
A public visibility indicates that the room will be shown in the published room list.
A private visibility will hide the room from the published room list. Defaults to
Private
.
Implementations§
Trait Implementations§
Source§impl OutgoingRequest for Request
Available on crate feature client
only.
impl OutgoingRequest for Request
client
only.Source§type EndpointError = Error
type EndpointError = Error
Source§type IncomingResponse = Response
type IncomingResponse = Response
Source§fn try_into_http_request<T>(
self,
base_url: &str,
access_token: SendAccessToken<'_>,
considering_versions: &[MatrixVersion],
) -> Result<Request<T>, IntoHttpError>
fn try_into_http_request<T>( self, base_url: &str, access_token: SendAccessToken<'_>, considering_versions: &[MatrixVersion], ) -> Result<Request<T>, IntoHttpError>
http::Request
. Read moreAuto Trait Implementations§
impl Freeze for Request
impl RefUnwindSafe for Request
impl Send for Request
impl Sync for Request
impl Unpin for Request
impl UnwindSafe for Request
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> CompatExt for T
impl<T> CompatExt for T
Source§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
Source§fn consume_handle(handle: Handle) -> Arc<T>
fn consume_handle(handle: Handle) -> Arc<T>
Arc<>
Source§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> OutgoingRequestAppserviceExt for Twhere
T: OutgoingRequest,
impl<T> OutgoingRequestAppserviceExt for Twhere
T: OutgoingRequest,
Source§fn try_into_http_request_with_user_id<T>(
self,
base_url: &str,
access_token: SendAccessToken<'_>,
user_id: &UserId,
considering_versions: &[MatrixVersion],
) -> Result<Request<T>, IntoHttpError>
fn try_into_http_request_with_user_id<T>( self, base_url: &str, access_token: SendAccessToken<'_>, user_id: &UserId, considering_versions: &[MatrixVersion], ) -> Result<Request<T>, IntoHttpError>
http::Request
and appends a virtual user_id
to
assert Appservice identity.