pub struct MessagingInbound {
pub platform: &'static str,
pub issuer: String,
pub org_id: String,
pub channel_id: String,
pub external_user_id: String,
pub text: String,
pub agent_name: AgentName,
pub entity: EntityRef,
pub reply: ReplyTarget,
}Expand description
A surface-agnostic inbound message ready for dispatch. Per-platform routes build this from their normalized payload; the dispatch core never sees a Slack- or Teams-specific type.
Fields§
§platform: &'static strStable platform tag ("slack" / "teams"), used in the derived
ContextId and the authz context kind.
issuer: StringThe federated issuer that namespaces external_user_id.
org_id: StringWorkspace/tenant id — the org the conversation belongs to.
channel_id: StringChannel/conversation id within the org.
external_user_id: StringThe platform’s user id (already verified by the route).
text: String§agent_name: AgentNameThe agent resolved from app config for this conversation.
entity: EntityRefThe authz target — the workspace/tenant entity, config-seedable from
allowed_roles.
reply: ReplyTargetWhere the rendered reply is posted (owned by the route).
Trait Implementations§
Source§impl Clone for MessagingInbound
impl Clone for MessagingInbound
Source§fn clone(&self) -> MessagingInbound
fn clone(&self) -> MessagingInbound
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for MessagingInbound
impl RefUnwindSafe for MessagingInbound
impl Send for MessagingInbound
impl Sync for MessagingInbound
impl Unpin for MessagingInbound
impl UnsafeUnpin for MessagingInbound
impl UnwindSafe for MessagingInbound
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
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,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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>
Converts
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>
Converts
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