24 lines
814 B
Rust
24 lines
814 B
Rust
use chrono::{DateTime, Utc};
|
|
use serde::{Deserialize, Serialize};
|
|
use uuid::Uuid;
|
|
|
|
/// Follow relationship on an announcement channel.
|
|
/// Allows another workspace or channel to receive cross-posts
|
|
/// when articles are published.
|
|
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, sqlx::FromRow)]
|
|
pub struct ChannelFollow {
|
|
pub id: Uuid,
|
|
pub source_channel_id: Uuid,
|
|
pub target_workspace_id: Uuid,
|
|
pub target_channel_id: Option<Uuid>,
|
|
pub webhook_url: Option<String>,
|
|
pub webhook_secret_ciphertext: Option<String>,
|
|
pub enabled: bool,
|
|
pub followed_by: Uuid,
|
|
pub unfollowed_at: Option<DateTime<Utc>>,
|
|
pub last_delivery_at: Option<DateTime<Utc>>,
|
|
pub last_delivery_status: Option<String>,
|
|
pub created_at: DateTime<Utc>,
|
|
pub updated_at: DateTime<Utc>,
|
|
}
|