slack_web_api/blocks/metadata.rs
1use serde::{Deserialize, Serialize};
2
3/// Metadata attached to a message. <https://docs.slack.dev/messaging/message-metadata>
4#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
5pub struct MessageMetadata {
6 pub event_type: String,
7 // conversations.history などは include_all_metadata を付けないと event_payload を返さない
8 #[serde(default)]
9 pub event_payload: serde_json::Value,
10}
11
12impl MessageMetadata {
13 pub fn new(event_type: impl Into<String>, event_payload: serde_json::Value) -> Self {
14 Self {
15 event_type: event_type.into(),
16 event_payload,
17 }
18 }
19}