From 6f26cb4297ebaab4394e05e1a498e347ce290bb5 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期四, 22 八月 2024 19:36:28 +0800
Subject: [PATCH] 修复运行方向的bug
---
config/config.go | 76 +++++++++++++++++++++++++++++++++++--
1 files changed, 71 insertions(+), 5 deletions(-)
diff --git a/config/config.go b/config/config.go
index 87dbe60..95a0312 100644
--- a/config/config.go
+++ b/config/config.go
@@ -9,11 +9,31 @@
)
type serve struct {
- ID string `mapstructure:"id"`
- Mode string `mapstructure:"mode"`
- Host string `mapstructure:"host"`
- Port string `mapstructure:"port"`
- Password string `mapstructure:"password"`
+ ID string `mapstructure:"id"`
+ Mode string `mapstructure:"mode"`
+ Host string `mapstructure:"host"`
+ Port string `mapstructure:"port"`
+ Realm string `mapstructure:"realm"`
+ Username string `mapstructure:"username"`
+ Password string `mapstructure:"password"`
+ Role string `mapstructure:"role"` // agent 璁惧绔�, proxy 1400涓浆 涓嶅鐞哾eivce, server 鍏ㄥ姛鑳�
+ Keepalive bool `mapstructure:"keepalive"`
+}
+
+type client struct {
+ ServerId string `mapstructure:"server-id"`
+ DeviceID string `mapstructure:"device-id"`
+ Username string `mapstructure:"username"`
+ Password string `mapstructure:"password"`
+ ServerAddr string `mapstructure:"server-addr"`
+ ServerPort string `mapstructure:"server-port"`
+ Proto string `mapstructure:"proto" ` // http, https
+ UploadType string `mapstructure:"upload-type"` // binary, url
+ ChannelNo string `mapstructure:"channel-number"` // 閫氶亾鍙�, 鍚宨d
+ HeartbeatInterval int `mapstructure:"heartbeat-interval"` // 蹇冭烦鍛ㄦ湡
+ HeartbeatFailCount int `mapstructure:"heartbeat-count"` // 蹇冭烦瓒呮椂娆℃暟
+ AddFloorToFaceId bool `mapstructure:"add-floor-faceId"`
+ Enable bool `mapstructure:"enable"`
}
type logConfig struct {
@@ -27,6 +47,24 @@
SyncServer string `mapstructure:"sync-server"`
ReportServer string `mapstructure:"report-server"`
ReportInterval int `mapstructure:"report-interval"`
+ RetryInterval int `mapstructure:"retry-interval"`
+ FTPServer string `mapstructure:"ftp-server"`
+ RecordServer string `mapstructure:"record-server"`
+}
+
+type image struct {
+ CutFaceImage bool `mapstructure:"cut-face-image"`
+ Enlarge int `mapstructure:"enlarge"`
+ ImageUriPrefix string `mapstructure:"url-prefix"`
+}
+
+// 姊帶璁惧
+type nvcs struct {
+ Model string `mapstructure:"model"` // 鍨嬪彿
+ Port string `mapstructure:"port"` // 绔彛
+ OSD string `mapstructure:"osd"`
+ RunState bool `mapstructure:"run-state"`
+ WaitRunTime int `mapstructure:"wait-run-time"`
}
type rateLimitConfig struct {
@@ -38,6 +76,9 @@
var LogConf = &logConfig{}
var ForwardConf = &forward{}
var RateLimitConf = &rateLimitConfig{}
+var ClientConf = &client{}
+var NVCSConf = &nvcs{}
+var ImageConf = &image{}
// Init is an exported method that takes the environment starts the viper
// (external lib) and returns the configuration struct.
@@ -46,7 +87,9 @@
v := viper.New()
v.SetConfigType("yaml")
v.SetConfigName("gat1400")
+ v.AddConfigPath("./")
v.AddConfigPath("./config/")
+ v.AddConfigPath("../config/")
err = v.ReadInConfig()
if err != nil {
fmt.Println("error on parsing configuration file", err)
@@ -64,6 +107,9 @@
v.UnmarshalKey("log", LogConf)
v.UnmarshalKey("forward", ForwardConf)
v.UnmarshalKey("rate-limit", RateLimitConf)
+ v.UnmarshalKey("client", ClientConf)
+ v.UnmarshalKey("nvcs", NVCSConf)
+ v.UnmarshalKey("image", ImageConf)
if LogConf.Level == "" {
LogConf.Level = "info"
@@ -73,5 +119,25 @@
ForwardConf.ReportInterval = 10
}
+ if ForwardConf.RetryInterval == 0 {
+ ForwardConf.RetryInterval = 5
+ }
+
+ if ClientConf.HeartbeatInterval == 0 {
+ ClientConf.HeartbeatInterval = 30
+ }
+
+ if ClientConf.Proto == "" {
+ ClientConf.Proto = "http"
+ }
+
+ if ImageConf.Enlarge == 0 {
+ ImageConf.Enlarge = 100
+ }
+
+ if NVCSConf.WaitRunTime == 0 {
+ NVCSConf.WaitRunTime = 60
+ }
+
logger.SetLogLevel(LogConf.Level)
}
--
Gitblit v1.8.0