slack_morphism_models/events/
command.rs

1use rsb_derive::Builder;
2use serde::{Deserialize, Serialize};
3use serde_with::skip_serializing_none;
4
5use crate::*;
6
7#[skip_serializing_none]
8#[derive(Debug, PartialEq, Clone, Serialize, Deserialize, Builder)]
9pub struct SlackCommandEvent {
10    pub team_id: SlackTeamId,
11    pub channel_id: SlackChannelId,
12    pub user_id: SlackUserId,
13    pub command: SlackCommandId,
14    pub text: Option<String>,
15    pub response_url: SlackResponseUrl,
16    pub trigger_id: SlackTriggerId,
17}
18
19#[skip_serializing_none]
20#[derive(Debug, PartialEq, Clone, Serialize, Deserialize, Builder)]
21pub struct SlackCommandEventResponse {
22    #[serde(flatten)]
23    pub content: SlackMessageContent,
24    pub response_type: Option<SlackMessageResponseType>,
25}