Struct Request
#[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,
}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: boolIf 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: VisibilityA 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§
§impl IncomingRequest for Request
impl IncomingRequest for Request
§type EndpointError = Error
type EndpointError = Error
§type OutgoingResponse = Response
type OutgoingResponse = Response
§fn try_from_http_request<B, S>(
request: Request<B>,
path_args: &[S],
) -> Result<Request, FromHttpRequestError>
fn try_from_http_request<B, S>( request: Request<B>, path_args: &[S], ) -> Result<Request, FromHttpRequestError>
http::Request into this request type,
together with the corresponding path arguments. Read more§fn check_request_method(method: &Method) -> Result<(), FromHttpRequestError>
fn check_request_method(method: &Method) -> Result<(), FromHttpRequestError>
METHOD of this endpoint.§impl Metadata for Request
impl Metadata for Request
§const METHOD: Method = ::ruma_common::exports::http::Method::POST
const METHOD: Method = ::ruma_common::exports::http::Method::POST
§const RATE_LIMITED: bool = false
const RATE_LIMITED: bool = false
§const PATH_BUILDER: VersionHistory
const PATH_BUILDER: VersionHistory
§type Authentication = AccessToken
type Authentication = AccessToken
§type PathBuilder = VersionHistory
type PathBuilder = VersionHistory
§fn empty_request_body<B>() -> B
fn empty_request_body<B>() -> B
§fn make_endpoint_url(
path_builder_input: <Self::PathBuilder as PathBuilder>::Input<'_>,
base_url: &str,
path_args: &[&dyn Display],
query_string: &str,
) -> Result<String, IntoHttpError>
fn make_endpoint_url( path_builder_input: <Self::PathBuilder as PathBuilder>::Input<'_>, base_url: &str, path_args: &[&dyn Display], query_string: &str, ) -> Result<String, IntoHttpError>
§impl OutgoingRequest for Request
impl OutgoingRequest for Request
§type EndpointError = Error
type EndpointError = Error
§type IncomingResponse = Response
type IncomingResponse = Response
§fn try_into_http_request<T>(
self,
base_url: &str,
authentication_input: <<Request as Metadata>::Authentication as AuthScheme>::Input<'_>,
path_builder_input: <<Request as Metadata>::PathBuilder as PathBuilder>::Input<'_>,
) -> Result<Request<T>, IntoHttpError>
fn try_into_http_request<T>( self, base_url: &str, authentication_input: <<Request as Metadata>::Authentication as AuthScheme>::Input<'_>, path_builder_input: <<Request as Metadata>::PathBuilder as PathBuilder>::Input<'_>, ) -> 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§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 more§impl<T> OutgoingRequestAppserviceExt for Twhere
T: OutgoingRequest,
<T as Metadata>::Authentication: for<'a> AuthScheme<Input<'a> = SendAccessToken<'a>>,
impl<T> OutgoingRequestAppserviceExt for Twhere
T: OutgoingRequest,
<T as Metadata>::Authentication: for<'a> AuthScheme<Input<'a> = SendAccessToken<'a>>,
§fn try_into_http_request_with_identity<T>(
self,
base_url: &str,
access_token: SendAccessToken<'_>,
identity: AppserviceUserIdentity<'_>,
path_builder_input: <Self::PathBuilder as PathBuilder>::Input<'_>,
) -> Result<Request<T>, IntoHttpError>
fn try_into_http_request_with_identity<T>( self, base_url: &str, access_token: SendAccessToken<'_>, identity: AppserviceUserIdentity<'_>, path_builder_input: <Self::PathBuilder as PathBuilder>::Input<'_>, ) -> Result<Request<T>, IntoHttpError>
http::Request and adds the given
AppserviceUserIdentity to it, if the identity is not empty.