Add communication guide and project improvements documentation; enhance main app with logging, CORS configuration, and health check endpoints; implement input validation and error handling in routers; improve services with rate limiting and snapshot persistence; update models for SQLAlchemy best practices; create index.html for frontend interaction.

This commit is contained in:
serversdwn
2025-12-23 19:24:14 +00:00
parent 5c4722267f
commit dac731f912
15 changed files with 886 additions and 53 deletions

View File

@@ -1,5 +1,4 @@
from sqlalchemy import Column, String, DateTime, Boolean, Integer, Text
from datetime import datetime
from sqlalchemy import Column, String, DateTime, Boolean, Integer, Text, func
from app.database import Base
@@ -11,6 +10,7 @@ class NL43Config(Base):
__tablename__ = "nl43_config"
unit_id = Column(String, primary_key=True, index=True)
host = Column(String, default="127.0.0.1")
tcp_port = Column(Integer, default=80) # NL43 TCP control port (via RX55)
tcp_enabled = Column(Boolean, default=True)
ftp_enabled = Column(Boolean, default=False)
@@ -25,7 +25,7 @@ class NL43Status(Base):
__tablename__ = "nl43_status"
unit_id = Column(String, primary_key=True, index=True)
last_seen = Column(DateTime, default=datetime.utcnow)
last_seen = Column(DateTime, default=func.now())
measurement_state = Column(String, default="unknown") # Measure/Stop
lp = Column(String, nullable=True)
leq = Column(String, nullable=True)