traq 0.1.5

⚠️ Community Driven ⚠️ traQ v3 API
Documentation
/*
 * traQ v3
 *
 * traQ v3 API
 *
 * The version of the OpenAPI document: 3.0
 *
 * Generated by: https://openapi-generator.tech
 */

/// Message : メッセージ

#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct Message {
    /// メッセージUUID
    #[serde(rename = "id")]
    pub id: uuid::Uuid,
    /// 投稿者UUID
    #[serde(rename = "userId")]
    pub user_id: uuid::Uuid,
    /// チャンネルUUID
    #[serde(rename = "channelId")]
    pub channel_id: uuid::Uuid,
    /// メッセージ本文
    #[serde(rename = "content")]
    pub content: String,
    /// 投稿日時
    #[serde(rename = "createdAt")]
    pub created_at: String,
    /// 編集日時
    #[serde(rename = "updatedAt")]
    pub updated_at: String,
    /// ピン留めされているかどうか
    #[serde(rename = "pinned")]
    pub pinned: bool,
    /// 押されているスタンプの配列
    #[serde(rename = "stamps")]
    pub stamps: Vec<crate::models::MessageStamp>,
    /// スレッドUUID
    #[serde(rename = "threadId", deserialize_with = "Option::deserialize")]
    pub thread_id: Option<uuid::Uuid>,
}

impl Message {
    /// メッセージ
    pub fn new(
        id: uuid::Uuid,
        user_id: uuid::Uuid,
        channel_id: uuid::Uuid,
        content: String,
        created_at: String,
        updated_at: String,
        pinned: bool,
        stamps: Vec<crate::models::MessageStamp>,
        thread_id: Option<uuid::Uuid>,
    ) -> Message {
        Message {
            id,
            user_id,
            channel_id,
            content,
            created_at,
            updated_at,
            pinned,
            stamps,
            thread_id,
        }
    }
}