Skip to main content

Database Schema

Tablesโ€‹

Usersโ€‹

Id, FullName, Email, PasswordHash, Role (User|Admin), CreatedAt

UserPreferencesโ€‹

UserId, UserGroup, PreferredLocation,
NotifyEnabled, NotifyChannel (telegram|email|both),
TelegramChatId, NotifyEmail, NotifyThreshold (0-500),
LastAlertSentAt, UpdatedAt

UserActivitySchedulesโ€‹

UserId, Name, Icon, HourOfDay, Minute, DurationMinutes,
IsOutdoor, Intensity (low|moderate|high),
DaysOfWeek (comma-separated 1-7), IsActive, CreatedAt

ChatConversationsโ€‹

Id, UserId, Title, IsPinned, HasUnread,
MessageCount, LastMessageAt, CreatedAt

ChatMessagesโ€‹

Id, ConversationId, Role (user|assistant),
Content, UserGroup, CurrentAqi, CurrentPm25,
SourceUserMessageId, RegeneratedCount, CreatedAt

AlertLogsโ€‹

Id, UserId, Aqi, Pm25, Risk, Message,
Channel, SentToEmail, SentToTelegramChatId,
IsRead, Success, CreatedAt