pub struct PostMessageArgs {
pub channel: Option<String>,
pub announce: bool,
pub to: Option<String>,
pub body: String,
pub reply_to: Option<i64>,
pub metadata: Option<Value>,
pub attachments: Option<Vec<AttachmentInput>>,
}Fields§
§channel: Option<String>Channel to broadcast to. Mutually exclusive with to.
announce: boolInterrupt the whole team with this one. A channel message normally only wakes sessions focused on that channel; an announcement wakes every session, whatever they are working on. Reserve it for what genuinely blocks others — a deploy, a migration, a breaking change, “stop pushing to main”. Routine progress does not qualify, and a team that is interrupted for everything stops reading announcements. Channel messages only: a direct message already arrives unfiltered.
to: Option<String>Who to send a direct message to. Mutually exclusive with channel.
"dani" reaches every session that teammate has open; "dani/api"
reaches only their api working context. Addressing one of your own
sessions is allowed and is how a coordinating window hands work to the
one that has the repository open.
body: StringThe message text. Keep it short and factual; teammates’ agents read this. Hard limit 1 MiB — attach a file rather than pasting a huge log.
reply_to: Option<i64>Id of the message this replies to, to keep a thread together.
metadata: Option<Value>Optional structured payload attached to the message (any JSON object).
attachments: Option<Vec<AttachmentInput>>Small files to ship with the message (diffs, logs, configs). Max 8 files, 256 KiB each (decoded).
Trait Implementations§
Source§impl Debug for PostMessageArgs
impl Debug for PostMessageArgs
Source§impl<'de> Deserialize<'de> for PostMessageArgs
impl<'de> Deserialize<'de> for PostMessageArgs
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for PostMessageArgs
impl JsonSchema for PostMessageArgs
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreAuto Trait Implementations§
impl Freeze for PostMessageArgs
impl RefUnwindSafe for PostMessageArgs
impl Send for PostMessageArgs
impl Sync for PostMessageArgs
impl Unpin for PostMessageArgs
impl UnsafeUnpin for PostMessageArgs
impl UnwindSafe for PostMessageArgs
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<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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> ⓘ
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