# Conflicts:
#	ruoyi-admin/src/main/resources/application.yml
This commit is contained in:
cnc
2026-09-18 09:45:45 +08:00
155 changed files with 15897 additions and 7 deletions

View File

@@ -206,6 +206,38 @@ mail:
# Socket连接超时值,单位毫秒,缺省值不超时
connectionTimeout: 0
--- # 设备域 · APP 端配置(前缀 device.app,对应 org.dromara.device.config.AppProperties)
# 所有项在代码中均有默认值,此处显式列出仅为便于运维调参;整段删除不影响启动。
device:
app:
# ---------------- APP 邮箱验证码(邮箱注册 / 邮箱登录 / 邮箱找回密码) ----------------
email:
# 是否仅打印日志而不真实发信:开发环境默认 true,便于在无 SMTP 条件下联调。
# 【生产环境(prod)必须为 false】——否则应用拒绝启动,防止验证码明文写入日志。
mock: true
# 谷歌邮箱 Gmail SMTP
host: ${DEVICE_APP_EMAIL_HOST:smtp.gmail.com}
# 465 走 SSL;若改用 587 端口,请同时设 ssl-enable=false 且 starttls-enable=true
port: ${DEVICE_APP_EMAIL_PORT:465}
# 发信账号(Gmail 地址)。凭据一律由环境变量注入,禁止写入本文件
user: ${DEVICE_APP_EMAIL_USER:}
# 发信凭据:Gmail 的 16 位「应用专用密码」(非账号登录密码),由环境变量注入
pass: ${DEVICE_APP_EMAIL_PASS:}
# 发件人,留空则回落到 user。Gmail 要求发件人与认证账号一致,否则拒收
from: ${DEVICE_APP_EMAIL_FROM:}
ssl-enable: true
starttls-enable: false
# smtp.gmail.com 在国内机房通常不可达,必须快速失败,避免挂死 HTTP 请求线程
connection-timeout: 5000
timeout: 10000
# 验证码位数 / 有效期(分钟)/ 重发间隔(秒)
code-length: 6
expiry-minutes: 5
resend-seconds: 60
# 允许注册的邮箱域名白名单,留空(或不配)表示不限制域名。
# 若产品要求「只允许谷歌邮箱注册」,取消下行注释即可,无需改代码:
# allowed-domains: gmail.com,googlemail.com
--- # sms 短信 支持 阿里云 腾讯云 云片 等等各式各样的短信服务商
# https://sms4j.com/doc3/ 差异配置文档地址 支持单厂商多配置,可以配置多个同时使用
sms:

View File

@@ -209,6 +209,39 @@ mail:
# Socket连接超时值,单位毫秒,缺省值不超时
connectionTimeout: 0
--- # 设备域 · APP 端配置(前缀 device.app,对应 org.dromara.device.config.AppProperties)
# 所有项在代码中均有默认值,此处显式列出仅为便于运维调参;整段删除不影响启动。
device:
app:
# ---------------- APP 邮箱验证码(邮箱注册 / 邮箱登录 / 邮箱找回密码) ----------------
email:
# 【必须为 false】生产环境开启 mock 会把邮箱验证码明文写入日志,
# 此时 org.dromara.device.config.AppEmailProdGuard 将直接拒绝启动(属预期保护)。
mock: false
# 谷歌邮箱 Gmail SMTP
host: ${DEVICE_APP_EMAIL_HOST:smtp.gmail.com}
# 465 走 SSL;若改用 587 端口,请同时设 ssl-enable=false 且 starttls-enable=true
port: ${DEVICE_APP_EMAIL_PORT:465}
# 发信账号(Gmail 地址)。凭据一律由环境变量注入,禁止写入本文件
user: ${DEVICE_APP_EMAIL_USER:}
# 发信凭据:Gmail 的 16 位「应用专用密码」(非账号登录密码),由环境变量注入
pass: ${DEVICE_APP_EMAIL_PASS:}
# 发件人,留空则回落到 user。Gmail 要求发件人与认证账号一致,否则拒收
from: ${DEVICE_APP_EMAIL_FROM:}
ssl-enable: true
starttls-enable: false
# smtp.gmail.com 在国内机房通常不可达:若部署在国内,请评估改用国内 SMTP,
# 或确认服务器具备出海能力后再上线邮箱注册功能。
connection-timeout: 5000
timeout: 10000
# 验证码位数 / 有效期(分钟)/ 重发间隔(秒)
code-length: 6
expiry-minutes: 5
resend-seconds: 60
# 允许注册的邮箱域名白名单,留空(或不配)表示不限制域名。
# 若产品要求「只允许谷歌邮箱注册」,取消下行注释即可,无需改代码:
# allowed-domains: gmail.com,googlemail.com
--- # sms 短信 支持 阿里云 腾讯云 云片 等等各式各样的短信服务商
# https://sms4j.com/doc3/ 差异配置文档地址 支持单厂商多配置,可以配置多个同时使用
sms:

View File

@@ -14,7 +14,17 @@ server:
min: 8
# 最大线程数
max: 256
zlm:
host: ${ZLM_HOST:http://47.104.136.221:8090} # ZLMediaKit 地址
rtmp-host: ${ZLM_RTMP_HOST:rtmp://47.104.136.221:1935}
rtsp-host: ${ZLM_RTSP_HOST:rtsp://47.104.136.221:554}
webrtc-host: ${ZLM_WEBRTC_HOST:http://47.104.136.221:8090}
secret: ${ZLM_SECRET:D5QbzhEkO8X0cdxMnIwj5USsCIfSKcOq} # ZLM webhook 密钥:不落明文,必须通过环境变量 ZLM_SECRET 注入;未配置时 /zlm/hook/** 回调一律拒绝(失败关闭)
app: live
schema: rtmp
push-protocol: rtmp
play-expire-seconds: 120
stream-timeout: 30 # 流超时秒数
captcha:
# 是否启用验证码校验
enable: true
@@ -111,6 +121,7 @@ security:
- /warm-flow-ui/config
- /snail-chat/**
- /api/snail/chat/**
- /zlm/hook/**
# MyBatisPlus配置
# https://baomidou.com/config/
@@ -264,15 +275,17 @@ mqtt.client:
# 是否开启客户端,默认:true
enabled: true
# 连接的服务端 ip ,默认:127.0.0.1
ip: 192.168.1.249
ip: 47.97.217.123
# 端口:默认:1883
port: 1883
# 客户端名称
name: Mqtt_bird_monitoring
name: Mqtt-Client
# 客户端Id(非常重要,一般为设备 sn,不可重复)
client-id: Mqttbirdmonitoring001
# username: admin
# password: 61e6062129e9
client-id: bird_monitor
# MQTT broker 账号/密码:不落明文,通过环境变量注入(避免凭据进入 git 历史)。
# 联调前 export MQTT_USERNAME / MQTT_PASSWORD;未配置时取空值,broker 会拒绝认证。
username: ${MQTT_USERNAME:admin}
password: ${MQTT_PASSWORD:61e6062129e9}
# 超时时间,单位:秒,默认:5秒
timeout: 5
# 重连时间,默认 5000 毫秒
@@ -297,6 +310,29 @@ mqtt.client:
truststore-path:
truststore-pass:
--- # 设备域通信链路配置(《设备通信协议-一期.md》口径)
# 全部项均有代码默认值,此处显式列出仅为便于运维调参;不需要调时整段删除也不影响启动。
device.mqtt:
# 离线扫描总开关。关闭后设备不会再被自动置离线,仅用于联调排障,生产必须为 true
scan-enabled: true
# 离线扫描间隔(上一轮跑完再计时,不会因扫描耗时堆积)
offline-scan-interval: 30s
# 离线判定阈值:超过该时长无遥测即判离线(协议 Q2:上报周期 60s × 2 容错)
offline-threshold: 120s
# 单轮扫描的设备上限,防止异常时一次性拉爆内存
scan-batch-size: 500
# 低电告警触发阈值(≤ 该值触发)与恢复阈值(≥ 该值恢复),两者之间的区间为滞回防抖区
low-battery-threshold: 20
low-battery-recover-threshold: 25
# 低电滞回闩锁存活时长,仅作已注销设备的残留清理兜底
low-battery-latch-ttl: 30d
# 告警去重窗口:同一 设备+告警类型 在窗口内只落一条 bm_device_alert
alert-dedup-window: 30m
# 眼罩指令回执等待超时(协议 Q3 待硬件确认动作到位时长)
hood-timeout: 5s
# 待回执指令标记的 Redis TTL(仅用于事后定位「回执晚到」)
pending-ack-ttl: 10m
--- # elasticsearch 功能配置
# 文档地址: https://www.easy-es.cn/
# 更改包名需要去 EasyEsConfiguration 修改包扫描(后续版本支持配置文件读取)