pub enum SlackInboundEvent {
ButtonInteraction {
action_id: String,
value: String,
user: String,
},
PairingDm {
user: String,
text: String,
},
Ignore,
}Expand description
One inbound Slack event the adapter acts on. Closed set — the
transport yields exactly one of these (or Ignore), so there is NO
inbound→config-mutation edge by construction (MC-6). A config-mutation-
shaped Slack message has no variant here and falls through to Ignore.
Variants§
ButtonInteraction
An Approve/Deny button click. action_id is the verb, value carries
the approval_id directly (NO CodeMap). user is the clicker.
Fields
action_id: Stringpayload.actions[0].action_id — APPROVE_ACTION_ID /
DENY_ACTION_ID.
PairingDm
A DM to the bot (message.im). user is the member id, text is the
(possibly-pairing) code. The ONLY shape that can bind a handle — and
only via the constant-time pairing-code match.
Fields
Ignore
Anything else (the bot’s own echo, channel chatter, an unknown interaction). Ignored — never a config mutation.
Trait Implementations§
Source§impl Clone for SlackInboundEvent
impl Clone for SlackInboundEvent
Source§fn clone(&self) -> SlackInboundEvent
fn clone(&self) -> SlackInboundEvent
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SlackInboundEvent
impl Debug for SlackInboundEvent
impl Eq for SlackInboundEvent
Source§impl PartialEq for SlackInboundEvent
impl PartialEq for SlackInboundEvent
impl StructuralPartialEq for SlackInboundEvent
Auto Trait Implementations§
impl Freeze for SlackInboundEvent
impl RefUnwindSafe for SlackInboundEvent
impl Send for SlackInboundEvent
impl Sync for SlackInboundEvent
impl Unpin for SlackInboundEvent
impl UnsafeUnpin for SlackInboundEvent
impl UnwindSafe for SlackInboundEvent
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
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