qixiaoning
2025-08-26 7799d5acb4a25526625b3e99c2f7fd71d1be39ff
push-service/main.go
@@ -1,10 +1,6 @@
package main
import (
   "basic.com/valib/bhomeclient.git"
   "basic.com/valib/bhomedbapi.git"
   "basic.com/valib/logger.git"
   "basic.com/valib/version.git"
   "context"
   "flag"
   "os"
@@ -13,15 +9,22 @@
   "vamicro/config"
   "vamicro/push-service/controllers"
   "vamicro/push-service/models"
   "vamicro/push-service/mqtt"
   "vamicro/push-service/service"
   "basic.com/valib/bhomeclient.git"
   "basic.com/valib/bhomedbapi.git"
   "basic.com/valib/logger.git"
   vaversion "basic.com/valib/version.git"
   "github.com/go-basic/uuid"
)
var (
   procName = service.ProcName
   proc = &bhomeclient.ProcInfo{
   proc     = &bhomeclient.ProcInfo{
      Name: procName, //进程名称
      ID: procName, //进程id
      Info: "", //进程的描述信息,用于区分同一进程名称下多个进程
      ID:   procName, //进程id
      Info: "",       //进程的描述信息,用于区分同一进程名称下多个进程
   }
   env = flag.String("e", "pro", "")
)
@@ -32,20 +35,24 @@
   config.Init(*env)
   // 日志初始化
   var logFile = config.LogConf.Path + "vamicro-"+procName+".log"
   var logFile = config.LogConf.Path + "vamicro-" + procName + ".log"
   logger.InitLogger(logFile, config.LogConf.Level, config.LogConf.MaxSize, config.LogConf.MaxBackups, config.LogConf.MaxAge)
   logger.Info("log init success !")
}
func main(){
func main() {
   models.Init()
   defer models.CloseDB()
   //初始化mqtt
   mqtt.LoadConfig()
   mqtt.Client.Init(mqtt.Options.Broker, "smart-ai-helmet-manager"+uuid.New(), mqtt.Options.Username, mqtt.Options.Password)
   ctx, cancel := context.WithCancel(context.Background())
   fm, pubTopics := initFuncMap()
   var reg = &bhomeclient.RegisterInfo {
      Proc: *proc,
      Channel: nil,
   var reg = &bhomeclient.RegisterInfo{
      Proc:     *proc,
      Channel:  nil,
      PubTopic: pubTopics,
      SubTopic: []string{},
   }
@@ -54,7 +61,7 @@
   signal.Notify(q, os.Interrupt, os.Kill, syscall.SIGTERM)
   ms, err := bhomeclient.NewMicroNode(ctx, q, config.Server.AnalyServerId, reg, logger.Debug)
   if err !=nil {
   if err != nil {
      return
   }
@@ -68,10 +75,12 @@
   ms.DeRegister()
   cancel()
   ms.Free()
}
const urlPrefix = "/data/api-v"
func initFuncMap() (map[string]bhomeclient.MicroFunc,[]string) {
func initFuncMap() (map[string]bhomeclient.MicroFunc, []string) {
   funcMap := make(map[string]bhomeclient.MicroFunc)
   ec := new(controllers.EventPushController)
   psc := new(controllers.PushSetController)
@@ -85,8 +94,8 @@
   funcMap[urlPrefix+"/eventPush/getPushSet"] = psc.GetPushSet
   var pubTopics []string
   for key,_ := range funcMap {
   for key, _ := range funcMap {
      pubTopics = append(pubTopics, key)
   }
   return funcMap, pubTopics
}
}