ruma::api::client::room::create_room::v3

Struct Request

Source
#[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, }
Available on (crate features client-api-c or client-api-s) and (crate features client or server) and crate feature api only.
Expand description

Request type for the create_room endpoint.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional 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§

Source§

impl Request

Source

pub fn new() -> Request

Creates a new Request will all-default parameters.

Trait Implementations§

Source§

impl Clone for Request

Source§

fn clone(&self) -> Request

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Request

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl Default for Request

Source§

fn default() -> Request

Returns the “default value” for a type. Read more
Source§

impl IncomingRequest for Request

Available on crate feature server only.
Source§

const METADATA: Metadata = METADATA

Metadata about the endpoint.
Source§

type EndpointError = Error

A type capturing the error conditions that can be returned in the response.
Source§

type OutgoingResponse = Response

Response type to return when the request is successful.
Source§

fn try_from_http_request<B, S>( request: Request<B>, path_args: &[S], ) -> Result<Request, FromHttpRequestError>
where B: AsRef<[u8]>, S: AsRef<str>,

Tries to turn the given http::Request into this request type, together with the corresponding path arguments. Read more
Source§

impl OutgoingRequest for Request

Available on crate feature client only.
Source§

const METADATA: Metadata = METADATA

Metadata about the endpoint.
Source§

type EndpointError = Error

A type capturing the expected error conditions the server can return.
Source§

type IncomingResponse = Response

Response type returned when the request is successful.
Source§

fn try_into_http_request<T>( self, base_url: &str, access_token: SendAccessToken<'_>, considering_versions: &[MatrixVersion], ) -> Result<Request<T>, IntoHttpError>
where T: Default + BufMut,

Tries to convert this request into an http::Request. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, W> HasTypeWitness<W> for T
where W: MakeTypeWitness<Arg = T>, T: ?Sized,

Source§

const WITNESS: W = W::MAKE

A constant of the type witness
Source§

impl<T> Identity for T
where T: ?Sized,

Source§

const TYPE_EQ: TypeEq<T, <T as Identity>::Type> = TypeEq::NEW

Proof that Self is the same type as Self::Type, provides methods for casting between Self and Self::Type.
Source§

type Type = T

The same type as Self, used to emulate type equality bounds (T == U) with associated type equality constraints (T: Identity<Type = U>).
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> OutgoingRequestAppserviceExt for T
where 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>
where T: Default + BufMut,

Tries to convert this request into an http::Request and appends a virtual user_id to assert Appservice identity.
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T