- Agent: Updated config and main - Edge: Implemented adapter factory in main.py to switch between MQTT and HTTP. - Edge: Updated AgentData entity and processing logic to support user_id. - Infrastructure: Configured docker-compose for dynamic protocol switching and environment management.
27 lines
920 B
Python
27 lines
920 B
Python
import os
|
|
|
|
|
|
def try_parse_int(value: str):
|
|
try:
|
|
return int(value)
|
|
except Exception:
|
|
return None
|
|
|
|
|
|
# Configuration for agent MQTT
|
|
MQTT_BROKER_HOST = os.environ.get("MQTT_BROKER_HOST") or "localhost"
|
|
MQTT_BROKER_PORT = try_parse_int(os.environ.get("MQTT_BROKER_PORT")) or 1883
|
|
MQTT_TOPIC = os.environ.get("MQTT_TOPIC") or "agent_data_topic"
|
|
|
|
# Configuration for hub MQTT
|
|
HUB_MQTT_BROKER_HOST = os.environ.get("HUB_MQTT_BROKER_HOST") or "localhost"
|
|
HUB_MQTT_BROKER_PORT = try_parse_int(os.environ.get("HUB_MQTT_BROKER_PORT")) or 1883
|
|
HUB_MQTT_TOPIC = os.environ.get("HUB_MQTT_TOPIC") or "processed_data_topic"
|
|
|
|
# Configuration for the Hub
|
|
HUB_HOST = os.environ.get("HUB_HOST") or "localhost"
|
|
HUB_PORT = try_parse_int(os.environ.get("HUB_PORT")) or 8000
|
|
HUB_URL = f"http://{HUB_HOST}:{HUB_PORT}"
|
|
|
|
# For choosing type of connection
|
|
HUB_CONNECTION_TYPE = os.environ.get("HUB_CONNECTION_TYPE") or "mqtt" |