123456789101112131415161718192021222324252627282930 |
- import os
- from dataclasses import dataclass
- from dotenv import load_dotenv
- # Load variables from .env file (looks in current dir by default)
- load_dotenv()
- @dataclass
- class BrokerCfg:
- HOST: str
- PORT: int
- @dataclass
- class AppConfig:
- MQTT_REAL: BrokerCfg
- MQTT_SIM: BrokerCfg
- LOGGING: bool = False
- def load_config() -> AppConfig:
- return AppConfig(
- MQTT_REAL=BrokerCfg(
- HOST=os.getenv("MQTT_REAL_HOST", "192.168.0.10"),
- PORT=int(os.getenv("MQTT_REAL_PORT", 1883))
- ),
- MQTT_SIM=BrokerCfg(
- HOST=os.getenv("MQTT_SIM_HOST", "127.0.0.1"),
- PORT=int(os.getenv("MQTT_SIM_PORT", 1883))
- ),
- LOGGING=os.getenv("LOGGING", "0") == "1"
- )
|