Struct ruma::api::push_gateway::send_event_notification::v1::Notification
source · pub struct Notification {
pub event_id: Option<OwnedEventId>,
pub room_id: Option<OwnedRoomId>,
pub event_type: Option<TimelineEventType>,
pub sender: Option<OwnedUserId>,
pub sender_display_name: Option<String>,
pub room_name: Option<String>,
pub room_alias: Option<OwnedRoomAliasId>,
pub user_is_target: bool,
pub prio: NotificationPriority,
pub content: Option<Box<RawValue>>,
pub counts: NotificationCounts,
pub devices: Vec<Device>,
}
api
and (crate features push-gateway-api-c
or push-gateway-api-s
) only.Expand description
Type for passing information about a push notification
Fields§
§event_id: Option<OwnedEventId>
The Matrix event ID of the event being notified about.
Required if the notification is about a particular Matrix event. May be omitted for notifications that only contain updated badge counts. This ID can and should be used to detect duplicate notification requests.
room_id: Option<OwnedRoomId>
The ID of the room in which this event occurred.
Required if the notification relates to a specific Matrix event.
event_type: Option<TimelineEventType>
The type of the event as in the event’s type
field.
sender: Option<OwnedUserId>
The sender of the event as in the corresponding event field.
sender_display_name: Option<String>
The current display name of the sender in the room in which the event occurred.
room_name: Option<String>
The name of the room in which the event occurred.
room_alias: Option<OwnedRoomAliasId>
An alias to display for the room in which the event occurred.
user_is_target: bool
Whether the user receiving the notification is the subject of a member event (i.e. the
state_key
of the member event is equal to the user’s Matrix ID).
prio: NotificationPriority
The priority of the notification.
If omitted, high
is assumed. This may be used by push gateways to deliver less
time-sensitive notifications in a way that will preserve battery power on mobile
devices.
content: Option<Box<RawValue>>
The content
field from the event, if present.
The pusher may omit this if the event had no content or for any other reason.
counts: NotificationCounts
Current number of unacknowledged communications for the recipient user.
Counts whose value is zero should be omitted.
devices: Vec<Device>
An array of devices that the notification should be sent to.
Implementations§
source§impl Notification
impl Notification
sourcepub fn new(devices: Vec<Device>) -> Notification
pub fn new(devices: Vec<Device>) -> Notification
Create a new notification for the given devices.
Trait Implementations§
source§impl Clone for Notification
impl Clone for Notification
source§fn clone(&self) -> Notification
fn clone(&self) -> Notification
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for Notification
impl Debug for Notification
source§impl Default for Notification
impl Default for Notification
source§fn default() -> Notification
fn default() -> Notification
source§impl<'de> Deserialize<'de> for Notification
impl<'de> Deserialize<'de> for Notification
source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<Notification, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<Notification, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
source§impl Serialize for Notification
impl Serialize for Notification
source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Auto Trait Implementations§
impl Freeze for Notification
impl RefUnwindSafe for Notification
impl Send for Notification
impl Sync for Notification
impl Unpin for Notification
impl UnwindSafe for Notification
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)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> 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