#[non_exhaustive]pub struct Request {
pub txn_id: OwnedTransactionId,
pub events: Vec<Raw<AnyTimelineEvent>>,
pub device_lists: DeviceLists,
pub device_one_time_keys_count: BTreeMap<OwnedUserId, BTreeMap<OwnedDeviceId, BTreeMap<OneTimeKeyAlgorithm, UInt>>>,
pub device_unused_fallback_key_types: BTreeMap<OwnedUserId, BTreeMap<OwnedDeviceId, Vec<OneTimeKeyAlgorithm>>>,
pub ephemeral: Vec<Raw<EphemeralData>>,
pub to_device: Vec<Raw<AnyToDeviceEvent>>,
}
Available on crate feature
api
and (crate features appservice-api-c
or appservice-api-s
) only.Expand description
Request type for the push_events
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.txn_id: OwnedTransactionId
The transaction ID for this set of events.
Homeservers generate these IDs and they are used to ensure idempotency of results.
events: Vec<Raw<AnyTimelineEvent>>
A list of events.
device_lists: DeviceLists
Information on E2E device updates.
device_one_time_keys_count: BTreeMap<OwnedUserId, BTreeMap<OwnedDeviceId, BTreeMap<OneTimeKeyAlgorithm, UInt>>>
The number of unclaimed one-time keys currently held on the server for this device, for each algorithm.
device_unused_fallback_key_types: BTreeMap<OwnedUserId, BTreeMap<OwnedDeviceId, Vec<OneTimeKeyAlgorithm>>>
A list of key algorithms for which the server has an unused fallback key for the device.
ephemeral: Vec<Raw<EphemeralData>>
A list of ephemeral data.
to_device: Vec<Raw<AnyToDeviceEvent>>
A list of to-device messages.
Implementations§
Source§impl Request
impl Request
Sourcepub fn new(
txn_id: OwnedTransactionId,
events: Vec<Raw<AnyTimelineEvent>>,
) -> Request
pub fn new( txn_id: OwnedTransactionId, events: Vec<Raw<AnyTimelineEvent>>, ) -> Request
Creates an Request
with the given transaction ID and list of events.
Trait Implementations§
Source§impl IncomingRequest for Request
impl IncomingRequest for Request
Source§type EndpointError = MatrixError
type EndpointError = MatrixError
A type capturing the error conditions that can be returned in the response.
Source§type OutgoingResponse = Response
type OutgoingResponse = Response
Response type to return when the request is successful.
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
The HTTP method used by this endpoint.
Source§const RATE_LIMITED: bool = false
const RATE_LIMITED: bool = false
Whether or not this endpoint is rate limited by the server.
Source§const HISTORY: VersionHistory
const HISTORY: VersionHistory
All info pertaining to an endpoint’s (historic) paths, deprecation version, and removal.
Source§type Authentication = AccessToken
type Authentication = AccessToken
What authentication scheme the server uses for this endpoint.
Source§fn empty_request_body<B>() -> B
fn empty_request_body<B>() -> B
Returns an empty request body for this Matrix request. Read more
Source§fn make_endpoint_url(
considering: &SupportedVersions,
base_url: &str,
path_args: &[&dyn Display],
query_string: &str,
) -> Result<String, IntoHttpError>
fn make_endpoint_url( considering: &SupportedVersions, base_url: &str, path_args: &[&dyn Display], query_string: &str, ) -> Result<String, IntoHttpError>
Generate the endpoint URL for this endpoint.
Source§impl OutgoingRequest for Request
impl OutgoingRequest for Request
Source§type EndpointError = MatrixError
type EndpointError = MatrixError
A type capturing the expected error conditions the server can return.
Source§type IncomingResponse = Response
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: &SupportedVersions,
) -> Result<Request<T>, IntoHttpError>
fn try_into_http_request<T>( self, base_url: &str, access_token: SendAccessToken<'_>, considering: &SupportedVersions, ) -> Result<Request<T>, IntoHttpError>
Tries to convert this request into an
http::Request
. Read moreSource§fn is_supported(considering_versions: &SupportedVersions) -> bool
fn is_supported(considering_versions: &SupportedVersions) -> bool
Whether the homeserver advertises support for this endpoint. Read more
Auto 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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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,
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>
Source§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: &SupportedVersions,
) -> Result<Request<T>, IntoHttpError>
fn try_into_http_request_with_user_id<T>( self, base_url: &str, access_token: SendAccessToken<'_>, user_id: &UserId, considering: &SupportedVersions, ) -> Result<Request<T>, IntoHttpError>
Tries to convert this request into an
http::Request
and appends a virtual user_id
to
assert Appservice identity.