#[non_exhaustive]pub enum AnyPushRule {
Override(ConditionalPushRule),
Content(PatternedPushRule),
PostContent(ConditionalPushRule),
Room(SimplePushRule<OwnedRoomId>),
Sender(SimplePushRule<OwnedUserId>),
Underride(ConditionalPushRule),
}Expand description
The kinds of push rules that are available.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Override(ConditionalPushRule)
Rules that override all other kinds.
Content(PatternedPushRule)
Content-specific rules.
PostContent(ConditionalPushRule)
Post-content specific rules.
Room(SimplePushRule<OwnedRoomId>)
Room-specific rules.
Sender(SimplePushRule<OwnedUserId>)
Sender-specific rules.
Underride(ConditionalPushRule)
Lowest priority rules.
Implementations§
Source§impl AnyPushRule
impl AnyPushRule
Sourcepub fn as_ref(&self) -> AnyPushRuleRef<'_>
Available on crate feature events only.
pub fn as_ref(&self) -> AnyPushRuleRef<'_>
events only.Convert AnyPushRule to AnyPushRuleRef.
Sourcepub fn enabled(&self) -> bool
Available on crate feature events only.
pub fn enabled(&self) -> bool
events only.Get the enabled flag of the push rule.
Sourcepub fn actions(&self) -> &[Action]
Available on crate feature events only.
pub fn actions(&self) -> &[Action]
events only.Get the actions of the push rule.
Sourcepub fn triggers_highlight(&self) -> bool
Available on crate feature events only.
pub fn triggers_highlight(&self) -> bool
events only.Whether an event that matches the push rule should be highlighted.
Sourcepub fn triggers_notification(&self) -> bool
Available on crate feature events only.
pub fn triggers_notification(&self) -> bool
events only.Whether an event that matches the push rule should trigger a notification (either in-app or remote / push).
Sourcepub fn triggers_sound(&self) -> Option<&str>
Available on crate feature events only.
pub fn triggers_sound(&self) -> Option<&str>
events only.The sound that should be played when an event matches the push rule, if any.
Sourcepub fn rule_id(&self) -> &str
Available on crate feature events only.
pub fn rule_id(&self) -> &str
events only.Get the rule_id of the push rule.
Sourcepub fn is_server_default(&self) -> bool
Available on crate feature events only.
pub fn is_server_default(&self) -> bool
events only.Whether the push rule is a server-default rule.
Sourcepub async fn applies(
&self,
event: &FlattenedJson,
context: &PushConditionRoomCtx,
) -> bool
Available on crate feature events only.
pub async fn applies( &self, event: &FlattenedJson, context: &PushConditionRoomCtx, ) -> bool
events only.Check if the push rule 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§
Source§impl Clone for AnyPushRule
impl Clone for AnyPushRule
Source§fn clone(&self) -> AnyPushRule
fn clone(&self) -> AnyPushRule
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AnyPushRule
impl Debug for AnyPushRule
Source§impl From<AnyPushRule> for PushRule
impl From<AnyPushRule> for PushRule
Source§fn from(push_rule: AnyPushRule) -> PushRule
fn from(push_rule: AnyPushRule) -> PushRule
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for AnyPushRule
impl RefUnwindSafe for AnyPushRule
impl Send for AnyPushRule
impl Sync for AnyPushRule
impl Unpin for AnyPushRule
impl UnwindSafe for AnyPushRule
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