Enum ruma_common::push::PushCondition [−][src]
#[non_exhaustive]
pub enum PushCondition {
EventMatch {
key: String,
pattern: String,
},
ContainsDisplayName,
RoomMemberCount {
is: RoomMemberCountIs,
},
SenderNotificationPermission {
key: String,
},
}A condition that must apply for an associated push rule’s action to be taken.
Variants (Non-exhaustive)
This is a glob pattern match on a field of the event.
Fields of EventMatch
This matches unencrypted messages where content.body contains the owner’s display name in
that room.
This matches the current number of members in the room.
Fields of RoomMemberCount
is: RoomMemberCountIsThe condition on the current number of members in the room.
This takes into account the current power levels in the room, ensuring the sender of the event has high enough power to trigger the notification.
Fields of SenderNotificationPermission
key: StringThe field in the power level event the user needs a minimum power level for.
Fields must be specified under the notifications property in the power level event’s
content.
Implementations
impl PushCondition[src]
pub fn applies(
&self,
event: &FlattenedJson,
context: &PushConditionRoomCtx
) -> bool[src]
&self,
event: &FlattenedJson,
context: &PushConditionRoomCtx
) -> bool
Check if this condition applies to the event.
Arguments
event- The flattened JSON representation of a room message event.context- The context of the room at the time of the event.
Trait Implementations
impl Clone for PushCondition[src]
fn clone(&self) -> PushCondition[src]
pub fn clone_from(&mut self, source: &Self)1.0.0[src]
impl Debug for PushCondition[src]
impl<'de> Deserialize<'de> for PushCondition[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>, [src]
__D: Deserializer<'de>,
impl Serialize for PushCondition[src]
Auto Trait Implementations
impl RefUnwindSafe for PushCondition
impl Send for PushCondition
impl Sync for PushCondition
impl Unpin for PushCondition
impl UnwindSafe for PushCondition
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>, [src]
T: for<'de> Deserialize<'de>,
impl<T> From<T> for T[src]
impl<T> Instrument for T[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>[src]
pub fn in_current_span(self) -> Instrumented<Self>[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,