Started creating http api for netbrite
This commit is contained in:
parent
fd19c95479
commit
aca30088b0
5 changed files with 205 additions and 6 deletions
65
db.py
Normal file
65
db.py
Normal file
|
@ -0,0 +1,65 @@
|
|||
from sqlmodel import Field, Session, SQLModel, create_engine, select
|
||||
|
||||
from netbrite import Colors, Fonts, Message, Priorities, ScrollSpeeds
|
||||
|
||||
|
||||
class BaseZone(SQLModel, table=True, echo=True):
|
||||
id: int | None = Field(default=None, primary_key=True)
|
||||
|
||||
x: int
|
||||
y: int
|
||||
width: int
|
||||
height: int
|
||||
scroll_speed: ScrollSpeeds
|
||||
pause_duration: int
|
||||
volume: int
|
||||
default_font: Fonts
|
||||
default_color: Colors
|
||||
|
||||
default_message: int | None = Field(foreign_key="apimessages.id")
|
||||
netbrite_device_id: int = Field(foreign_key="apinetbritedevice.id")
|
||||
|
||||
|
||||
class APIGetZone(SQLModel, table=True, echo=True):
|
||||
id: int | None = Field(default=None, primary_key=True)
|
||||
|
||||
x: int
|
||||
y: int
|
||||
width: int
|
||||
height: int
|
||||
scroll_speed: ScrollSpeeds
|
||||
pause_duration: int
|
||||
volume: int
|
||||
default_font: Fonts
|
||||
default_color: Colors
|
||||
|
||||
default_message: Message | None
|
||||
|
||||
|
||||
class APIMessages(SQLModel, table=True, echo=True):
|
||||
id: int | None = Field(default=None, primary_key=True)
|
||||
|
||||
activation_delay: int
|
||||
display_delay: int
|
||||
display_repeat: int
|
||||
priority: Priorities
|
||||
text: str
|
||||
ttl: int
|
||||
|
||||
|
||||
class BaseNetBriteDevice(SQLModel, table=True, echo=True):
|
||||
id: int | None = Field(default=None, primary_key=True)
|
||||
address: str = Field(unique=True)
|
||||
port: int = 700
|
||||
|
||||
|
||||
class APIAddNetBriteDevice(SQLModel, table=False):
|
||||
address: str
|
||||
port: int = 700
|
||||
|
||||
|
||||
class APIGetNetBriteDevice(SQLModel, table=False):
|
||||
address: str
|
||||
port: int = 700
|
||||
connected: bool
|
||||
zones: dict[str, APIGetZone]
|
Loading…
Add table
Add a link
Reference in a new issue