package reporter import ( "fmt" "path/filepath" "gopkg.in/ini.v1" "hnyfkj.com.cn/rtu/bxs-sy/baseapp" ) type MQTTBroker struct { Address string `ini:"BrokerAddress"` // 地址端口 Username string `ini:"Username"` // 用户名称 Password string `ini:"Password"` // 接入密码 } type Img2FtpSvr struct { Address string `ini:"ServerAddress"` // 地址端口 Username string `ini:"Username"` // 用户名称 Password string `ini:"Password"` // 接入密码 } type Config struct { MQTTSrv MQTTBroker `ini:"MQTTSrv"` Img2Ftp Img2FtpSvr `ini:"Img2Ftp"` } var ( CfgServers = &Config{} ) func loadCfgServers() error { cfgFile := filepath.Join(baseapp.CFG_DIR, "config.ini") cfgIni, err := ini.Load(cfgFile) if err != nil { return err } if cfgIni.HasSection("MQTTSrv") { if err := cfgIni.Section("MQTTSrv").MapTo(&CfgServers.MQTTSrv); err != nil { return err } } else { return fmt.Errorf("配置文件\"%s\"缺少\"[MQTTSrv]\"节", cfgFile) } if cfgIni.HasSection("Img2Ftp") { if err := cfgIni.Section("Img2Ftp").MapTo(&CfgServers.Img2Ftp); err != nil { return err } } else { return fmt.Errorf("配置文件\"%s\"缺少\"[Img2Ftp]\"节", cfgFile) } return nil }