Files
board-mate/api-customer/app.py
2026-01-02 16:44:44 +01:00

52 lines
1.5 KiB
Python

import os
from dotenv import load_dotenv
from flask import Flask
from src.controllers.AuthController import AuthController
from src.controllers.ClientController import ClientController
from src.controllers.message_controller import MessageController
from src.controllers.mqtt_forwarder import MQTTForwarder
from src.models.AuthData import AuthData
from src.services.mqtt_service import MQTTService
client_id = "3b12678d-8d6f-444b-b1a7-671a2c92eabf"
load_dotenv()
app = Flask(__name__)
local_broker_address = os.environ.get("LOCAL_BROKER_ADDRESS", "127.0.0.1")
local_broker_port = int(os.environ.get("LOCAL_BROKER_PORT", 1883))
api_broker_address = os.environ.get("API_BROKER_ADDRESS", "127.0.0.1")
api_broker_port = int(os.environ.get("API_BROKER_PORT", 1883))
local_broker = MQTTService(
local_broker_address,
local_broker_port,
client_id="customer-api",
username="main",
password="hepl",
)
api_broker = MQTTService(
api_broker_address,
api_broker_port,
client_id="customer-api",
username="customer",
password="hepl",
)
auth_data = AuthData()
auth_controller = AuthController(app, auth_data, "https://192.168.15.120:8000")
client_controller = ClientController(app, auth_data, "https://192.168.15.120:8000")
message_controller = MessageController(app, auth_data, "https://192.168.15.120:8000")
if __name__ == '__main__':
forwarder = MQTTForwarder(client_id, local_broker, api_broker)
forwarder.start(f"/customer/telemetry/#", f"/board-mate/{client_id}/telemetry")
app.run(host="0.0.0.0", port=5000, debug=True)