#[non_exhaustive]pub struct Request {
pub room_id: OwnedRoomId,
pub event_type: TimelineEventType,
pub txn_id: OwnedTransactionId,
pub delay: Duration,
pub state_key: Option<String>,
pub content: Raw<AnyTimelineEventContent>,
}api and crate feature unstable-msc4140 and (crate features client-api-c or client-api-s) and (crate features client or server) only.Expand description
Request type for the send_delayed_event
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.room_id: OwnedRoomIdThe room to send the event to.
event_type: TimelineEventTypeThe type of event to send.
txn_id: OwnedTransactionIdThe transaction ID for this event.
Clients should generate a unique ID across requests within the same session. A session is identified by an access token, and persists when the access token is refreshed.
It will be used by the server to ensure idempotency of requests.
delay: DurationThe duration that the server should wait before sending this event
state_key: Option<String>The State Key if the event is a state event, nothing otherwise
content: Raw<AnyTimelineEventContent>The event content to send.
Implementations§
Source§impl Request
impl Request
Sourcepub fn new(
room_id: OwnedRoomId,
txn_id: OwnedTransactionId,
delay: Duration,
state_key: Option<String>,
content: &AnyTimelineEventContent,
) -> Result<Request, Error>
pub fn new( room_id: OwnedRoomId, txn_id: OwnedTransactionId, delay: Duration, state_key: Option<String>, content: &AnyTimelineEventContent, ) -> Result<Request, Error>
Creates a new Request with the given room id, transaction id, delay_parameters and
event content.
§Errors
Since Request stores the request body in serialized form, this function can fail if
Ts ::serde::Serialize implementation can fail.
Sourcepub fn new_raw(
event_type: TimelineEventType,
room_id: OwnedRoomId,
txn_id: OwnedTransactionId,
delay: Duration,
state_key: Option<String>,
content: Raw<AnyTimelineEventContent>,
) -> Result<Request, Error>
pub fn new_raw( event_type: TimelineEventType, room_id: OwnedRoomId, txn_id: OwnedTransactionId, delay: Duration, state_key: Option<String>, content: Raw<AnyTimelineEventContent>, ) -> Result<Request, Error>
Creates a new Request with the given room id, transaction id, event type,
delay_parameters and raw event content.
Trait Implementations§
Source§impl IncomingRequest for Request
Available on crate feature server only.
impl IncomingRequest for Request
server only.Source§type EndpointError = Error
type EndpointError = Error
Source§type OutgoingResponse = Response
type OutgoingResponse = Response
Source§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 moreSource§fn check_request_method(method: &Method) -> Result<(), FromHttpRequestError>
fn check_request_method(method: &Method) -> Result<(), FromHttpRequestError>
METHOD of this endpoint.Source§impl Metadata for Request
impl Metadata for Request
Source§const METHOD: Method = ::ruma_common::exports::http::Method::PUT
const METHOD: Method = ::ruma_common::exports::http::Method::PUT
Source§const RATE_LIMITED: bool = true
const RATE_LIMITED: bool = true
Source§const PATH_BUILDER: VersionHistory
const PATH_BUILDER: VersionHistory
Source§type Authentication = AccessToken
type Authentication = AccessToken
Source§type PathBuilder = VersionHistory
type PathBuilder = VersionHistory
Source§fn empty_request_body<B>() -> B
fn empty_request_body<B>() -> B
Source§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>
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,
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 UnsafeUnpin 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,
Source§impl<T> DropFlavorWrapper<T> for T
impl<T> DropFlavorWrapper<T> for T
impl<T> ErasedDestructor for Twhere
T: 'static,
§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
§fn new_handle(value: Arc<T>) -> Handle
fn new_handle(value: Arc<T>) -> Handle
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
§unsafe fn consume_handle(handle: Handle) -> Arc<T>
unsafe fn consume_handle(handle: Handle) -> Arc<T>
Arc<> Read moreSource§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,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<T> JsonCastable<CanonicalJsonValue> for T
impl<T> JsonCastable<Value> for T
Source§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>>,
Source§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.