use crate::core::shared::schema::core::{organizations, bots}; diesel::table! { meeting_rooms (id) { id -> Uuid, org_id -> Uuid, bot_id -> Uuid, room_code -> Varchar, name -> Varchar, description -> Nullable, created_by -> Uuid, max_participants -> Int4, is_recording -> Bool, is_transcribing -> Bool, status -> Varchar, settings -> Jsonb, started_at -> Nullable, ended_at -> Nullable, created_at -> Timestamptz, updated_at -> Timestamptz, } } diesel::table! { meeting_participants (id) { id -> Uuid, room_id -> Uuid, user_id -> Nullable, participant_name -> Varchar, email -> Nullable, role -> Varchar, is_bot -> Bool, is_active -> Bool, has_video -> Bool, has_audio -> Bool, joined_at -> Timestamptz, left_at -> Nullable, created_at -> Timestamptz, } } diesel::table! { meeting_recordings (id) { id -> Uuid, room_id -> Uuid, org_id -> Uuid, bot_id -> Uuid, recording_type -> Varchar, file_url -> Nullable, file_size -> Nullable, duration_seconds -> Nullable, status -> Varchar, started_at -> Timestamptz, stopped_at -> Nullable, processed_at -> Nullable, metadata -> Jsonb, created_at -> Timestamptz, updated_at -> Timestamptz, } } diesel::table! { meeting_transcriptions (id) { id -> Uuid, room_id -> Uuid, recording_id -> Nullable, org_id -> Uuid, bot_id -> Uuid, participant_id -> Nullable, speaker_name -> Nullable, content -> Text, start_time -> Numeric, end_time -> Numeric, confidence -> Nullable, language -> Nullable, is_final -> Bool, metadata -> Jsonb, created_at -> Timestamptz, } } diesel::table! { meeting_whiteboards (id) { id -> Uuid, room_id -> Nullable, org_id -> Uuid, bot_id -> Uuid, name -> Varchar, background_color -> Nullable, grid_enabled -> Bool, grid_size -> Nullable, elements -> Jsonb, version -> Int4, created_by -> Uuid, last_modified_by -> Nullable, created_at -> Timestamptz, updated_at -> Timestamptz, } } diesel::table! { whiteboard_elements (id) { id -> Uuid, whiteboard_id -> Uuid, element_type -> Varchar, position_x -> Numeric, position_y -> Numeric, width -> Nullable, height -> Nullable, rotation -> Nullable, z_index -> Int4, properties -> Jsonb, created_by -> Uuid, created_at -> Timestamptz, updated_at -> Timestamptz, } } diesel::table! { whiteboard_exports (id) { id -> Uuid, whiteboard_id -> Uuid, org_id -> Uuid, export_format -> Varchar, file_url -> Nullable, file_size -> Nullable, status -> Varchar, error_message -> Nullable, requested_by -> Uuid, created_at -> Timestamptz, completed_at -> Nullable, } } diesel::table! { meeting_chat_messages (id) { id -> Uuid, room_id -> Uuid, participant_id -> Nullable, sender_name -> Varchar, message_type -> Varchar, content -> Text, reply_to_id -> Nullable, is_system_message -> Bool, metadata -> Jsonb, created_at -> Timestamptz, } } diesel::table! { scheduled_meetings (id) { id -> Uuid, org_id -> Uuid, bot_id -> Uuid, room_id -> Nullable, title -> Varchar, description -> Nullable, organizer_id -> Uuid, scheduled_start -> Timestamptz, scheduled_end -> Timestamptz, timezone -> Varchar, recurrence_rule -> Nullable, attendees -> Jsonb, settings -> Jsonb, status -> Varchar, reminder_sent -> Bool, calendar_event_id -> Nullable, created_at -> Timestamptz, updated_at -> Timestamptz, } } diesel::joinable!(meeting_rooms -> organizations (org_id)); diesel::joinable!(meeting_rooms -> bots (bot_id)); diesel::joinable!(meeting_participants -> meeting_rooms (room_id)); diesel::joinable!(meeting_recordings -> meeting_rooms (room_id)); diesel::joinable!(meeting_recordings -> organizations (org_id)); diesel::joinable!(meeting_recordings -> bots (bot_id)); diesel::joinable!(meeting_transcriptions -> meeting_rooms (room_id)); diesel::joinable!(meeting_transcriptions -> meeting_recordings (recording_id)); diesel::joinable!(meeting_transcriptions -> meeting_participants (participant_id)); diesel::joinable!(meeting_whiteboards -> meeting_rooms (room_id)); diesel::joinable!(meeting_whiteboards -> organizations (org_id)); diesel::joinable!(meeting_whiteboards -> bots (bot_id)); diesel::joinable!(whiteboard_elements -> meeting_whiteboards (whiteboard_id)); diesel::joinable!(whiteboard_exports -> meeting_whiteboards (whiteboard_id)); diesel::joinable!(whiteboard_exports -> organizations (org_id)); diesel::joinable!(meeting_chat_messages -> meeting_rooms (room_id)); diesel::joinable!(meeting_chat_messages -> meeting_participants (participant_id)); diesel::joinable!(scheduled_meetings -> organizations (org_id)); diesel::joinable!(scheduled_meetings -> bots (bot_id)); diesel::joinable!(scheduled_meetings -> meeting_rooms (room_id));