2026-07-27 14:28:07 +08:00
|
|
|
"""
|
|
|
|
|
AI Box Sophon Adapter — 全局变量
|
|
|
|
|
|
|
|
|
|
模块级共享资源管理。
|
|
|
|
|
"""
|
2026-08-03 15:06:29 +08:00
|
|
|
from typing import Any, TYPE_CHECKING
|
2026-07-27 14:28:07 +08:00
|
|
|
|
|
|
|
|
from chongming_database import Database
|
2026-07-28 14:16:00 +08:00
|
|
|
from .models.orm import *
|
2026-07-31 16:53:38 +08:00
|
|
|
from chongming_stream_manager import StreamManager
|
2026-07-27 14:28:07 +08:00
|
|
|
|
2026-08-03 15:06:29 +08:00
|
|
|
if TYPE_CHECKING:
|
|
|
|
|
from .mqtt_forward import MQTTForwardClient
|
|
|
|
|
|
2026-07-27 14:28:07 +08:00
|
|
|
# 数据库实例
|
|
|
|
|
db: Database | None = None
|
|
|
|
|
|
2026-07-31 16:53:38 +08:00
|
|
|
# 视频流管理器
|
|
|
|
|
stream_manager: StreamManager | None = None
|
|
|
|
|
link_path: str | None = None
|
|
|
|
|
|
2026-08-03 15:06:29 +08:00
|
|
|
# 外部 MQTT 转发客户端
|
|
|
|
|
mqtt_forward: "MQTTForwardClient | None" = None
|
|
|
|
|
|
|
|
|
|
# 上传文件根目录(用于清理告警关联视频)
|
|
|
|
|
upload_root: str = "./data/uploads"
|
|
|
|
|
|
|
|
|
|
# 告警保留配置
|
|
|
|
|
alarm_max_records: int = 0 # 0 表示不限制
|
|
|
|
|
|
2026-08-05 11:51:29 +08:00
|
|
|
# 豆包 AI 分析开关
|
|
|
|
|
doubao_analysis_enabled: bool = True
|
|
|
|
|
|
|
|
|
|
# 告警转发配置
|
|
|
|
|
alarm_forward_enabled: bool = False
|
|
|
|
|
alarm_forward_url: str = "http://dg.datagoo.cn:60014/open-api/event-alarm/receive"
|
|
|
|
|
alarm_forward_timeout: float = 10.0
|
|
|
|
|
|
2026-07-27 14:28:07 +08:00
|
|
|
# 心跳超时配置(秒)
|
|
|
|
|
heartbeat_timeout: float = 15.0
|
|
|
|
|
|
|
|
|
|
# 心跳上报间隔(秒)
|
|
|
|
|
heartbeat_interval: float = 5.0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def set_global_var(name: str, value: Any) -> None:
|
|
|
|
|
"""
|
|
|
|
|
设置当前模块的全局变量。
|
|
|
|
|
|
|
|
|
|
Args:
|
|
|
|
|
name: 变量名(字符串)
|
|
|
|
|
value: 任意值
|
|
|
|
|
"""
|
|
|
|
|
globals()[name] = value
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
__all__ = [
|
|
|
|
|
"db",
|
|
|
|
|
"heartbeat_timeout",
|
|
|
|
|
"heartbeat_interval",
|
2026-08-03 15:06:29 +08:00
|
|
|
"mqtt_forward",
|
|
|
|
|
"upload_root",
|
|
|
|
|
"alarm_max_records",
|
2026-08-05 11:51:29 +08:00
|
|
|
"doubao_analysis_enabled",
|
|
|
|
|
"alarm_forward_enabled",
|
|
|
|
|
"alarm_forward_url",
|
|
|
|
|
"alarm_forward_timeout",
|
2026-07-27 14:28:07 +08:00
|
|
|
"set_global_var",
|
|
|
|
|
]
|