Struct ruma_client_api::r0::room::create_room::Request [−][src]
pub struct Request<'a> { pub creation_content: CreationContent, pub initial_state: &'a [Raw<AnyInitialStateEvent>], pub invite: &'a [UserId], pub invite_3pid: &'a [Invite3pid<'a>], pub is_direct: bool, pub name: Option<&'a str>, pub power_level_content_override: Option<Raw<PowerLevelsEventContent>>, pub preset: Option<RoomPreset>, pub room_alias_name: Option<&'a str>, pub room_version: Option<&'a RoomVersionId>, pub topic: Option<&'a str>, pub visibility: Visibility, }
Expand description
Data for a request to the create_room
API endpoint.
Create a new room.
Fields
creation_content: CreationContent
Extra keys to be added to the content of the m.room.create
.
initial_state: &'a [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: &'a [UserId]
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: &'a [Invite3pid<'a>]
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<&'a str>
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<PowerLevelsEventContent>>
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<&'a str>
The desired room alias local part.
room_version: Option<&'a RoomVersionId>
Room version to set for the room. Defaults to homeserver’s default if not specified.
topic: Option<&'a str>
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
type Incoming = IncomingRequest
type Incoming = IncomingRequest
The ‘Incoming’ variant of Self
.
type EndpointError = Error
type EndpointError = Error
A type capturing the expected error conditions the server can return.
type IncomingResponse = <Response as Outgoing>::Incoming
type IncomingResponse = <Response as Outgoing>::Incoming
Response type returned when the request is successful.
fn try_into_http_request<T: Default + BufMut>(
self,
base_url: &str,
access_token: SendAccessToken<'_>
) -> Result<Request<T>, IntoHttpError>
fn try_into_http_request<T: Default + BufMut>(
self,
base_url: &str,
access_token: SendAccessToken<'_>
) -> Result<Request<T>, IntoHttpError>
Tries to convert this request into an http::Request
. Read more
Auto Trait Implementations
impl<'a> RefUnwindSafe for Request<'a>
impl<'a> UnwindSafe for Request<'a>
Blanket Implementations
Mutably borrows from an owned value. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
fn try_into_http_request_with_user_id<T>(
self,
base_url: &str,
access_token: SendAccessToken<'_>,
user_id: UserId
) -> Result<Request<T>, IntoHttpError> where
T: Default + BufMut,
fn try_into_http_request_with_user_id<T>(
self,
base_url: &str,
access_token: SendAccessToken<'_>,
user_id: UserId
) -> Result<Request<T>, IntoHttpError> where
T: Default + BufMut,
Tries to convert this request into an http::Request
and appends a virtual user_id
to
assert Appservice identity. Read more