Skip to main content

Database Schema

Core Tables

-- Users (authentication)
users (id, email, password_hash, full_name, is_active, ...)

-- Devices (IoT assets)
devices (
id, user_id, key, device_code, name, status,
temperature, humidity, latitude, longitude,
last_seen, is_active, created_at, updated_at
)

-- Device Groups (organization)
groups (id, user_id, key, name)
device_group_association (device_id, group_id) -- many-to-many

-- Data Streams (sensors)
feeds (
id, user_id, device_id, group_id, key, name,
unit_type, unit_symbol, last_value, status,
visibility, enabled, created_at
)

-- Time Series Data
feed_values (
id, feed_id, value, timestamp, metadata,
created_at
)

-- Automation
media_schedules (
id, user_id, device_id, title, trigger_time,
message, status, created_at
)

-- E-commerce
products, categories, orders, carts, wishlist, etc.

Data Models

User

User:
- id (UUID)
- email, full_name
- type_account (local|zalo|google)
- is_active, is_superuser
- relationships: Devices, Feeds, Groups, Orders