| | |
| | | package util |
| | | |
| | | import ( |
| | | "fmt" |
| | | |
| | | "basic.com/dbapi.git" |
| | | "basic.com/pubsub/protomsg.git" |
| | | "basic.com/r/dbapi.git" |
| | | "basic.com/valib/gopherdiscovery.git" |
| | | "flag" |
| | | "github.com/gogo/protobuf/proto" |
| | | "taskpubsub/logger" |
| | | ) |
| | | |
| | | /************************* |
| | |
| | | var CameraIds []protomsg.Camera |
| | | var CameraTasks []protomsg.CameraAndTaskInfo |
| | | |
| | | var TaskSdks []protomsg.TaskSdkInfo |
| | | var Sdklist []string |
| | | //var TaskSdks []protomsg.TaskSdkInfo |
| | | var TaskSdks []protomsg.TaskSdkRun |
| | | |
| | | var urlServer = "tcp://192.168.1.11:40007" |
| | | var urlPubSub = "tcp://192.168.1.11:50007" |
| | | var peers chan []string |
| | | var Sdklist []string |
| | | var Sdkinfos []protomsg.Sdk |
| | | |
| | | var urlServer = flag.String("urlServer", "tcp://127.0.0.1:40007", "heartbeat address of url server") |
| | | var urlPubSub = flag.String("urlPubsub", "tcp://127.0.0.1:50007", "heartbeat pubsub address of url server") |
| | | |
| | | var dbip = flag.String("dbip", "127.0.0.1", "address of database ip") |
| | | var dbport = flag.Int("dbport", 8001, "port of database port") |
| | | |
| | | var Sdkflag = make(chan bool) |
| | | var TaskSdkflag = make(chan bool) |
| | | var Cameraflag = make(chan bool) |
| | | |
| | | var newsdkmsg = &protomsg.DbChangeMessage{} |
| | | |
| | | func Getdata(opt []byte, initchan chan bool) { |
| | | func initDbData(initchan chan bool) { |
| | | CameraIds = camval.FindAll() |
| | | |
| | | logger.Info("==============camera camera with task ================") |
| | | CameraTasks = camval.FindAllCameraAndTask() |
| | | logger.Info(CameraTasks) |
| | | |
| | | TaskSdks = taskapi.FindAllTaskSdkRun() |
| | | |
| | | Sdklist = sdkapi.GetAllSdkIds() |
| | | Sdkinfos = sdkapi.FindAll("") |
| | | initchan <- true |
| | | } |
| | | |
| | | func updateDbData(opt []byte) { |
| | | if err := proto.Unmarshal(opt, newsdkmsg); err != nil { |
| | | fmt.Println("publichshMessage ", err) |
| | | return |
| | | } |
| | | |
| | | if !IsInit { |
| | | fmt.Println("enter init.") |
| | | CameraIds = camval.FindAll() |
| | | |
| | | fmt.Println("==============camera camera with task ================") |
| | | CameraTasks = camval.FindAllCameraAndTask() |
| | | fmt.Println(CameraTasks) |
| | | |
| | | TaskSdks = taskapi.FindAll() |
| | | |
| | | Sdklist = sdkapi.GetAllSdkIds() |
| | | fmt.Println(Sdklist) |
| | | IsInit = true |
| | | initchan <- true |
| | | logger.Error("publichshMessage ", err) |
| | | return |
| | | } |
| | | |
| | | switch newsdkmsg.Table { |
| | | case protomsg.TableChanged_T_Camera: |
| | | logger.Info("update camera") |
| | | CameraIds = camval.FindAll() |
| | | Cameraflag <- true |
| | | logger.Info("update camera finish.") |
| | | |
| | | case protomsg.TableChanged_T_CameraTask: |
| | | logger.Info("update cameratask") |
| | | CameraTasks = camval.FindAllCameraAndTask() |
| | | logger.Info("update cameratask finished!") |
| | | |
| | | case protomsg.TableChanged_T_TaskSdk: |
| | | TaskSdks = taskapi.FindAll() |
| | | logger.Info("update tasksdk") |
| | | TaskSdks = taskapi.FindAllTaskSdkRun() |
| | | TaskSdkflag <- true |
| | | |
| | | case protomsg.TableChanged_T_Sdk: |
| | | logger.Info("update sdk") |
| | | Sdklist = sdkapi.GetAllSdkIds() |
| | | Sdkinfos = sdkapi.FindAll("") |
| | | Sdkflag <- true |
| | | |
| | | default: |
| | | logger.Info("unknow type operation") |
| | | } |
| | | |
| | | fmt.Println(newsdkmsg) |
| | | logger.Info(newsdkmsg) |
| | | } |
| | | |
| | | func Init(initchan chan bool) { |
| | | clientOne, _ := gopherdiscovery.ClientWithSub(urlServer, urlPubSub, "ip:192.168.1.124") |
| | | peers, _ = clientOne.Peers() |
| | | dbapi.Init(*dbip, *dbport) |
| | | client, _ := gopherdiscovery.ClientWithSub(*urlServer, *urlPubSub, "ip:local") |
| | | recvinit := client.HeartBeatMsg() |
| | | _ = <-recvinit |
| | | |
| | | initDbData(initchan) |
| | | |
| | | peers, _ := client.Peers() |
| | | for x := range peers { |
| | | Getdata([]byte(x[0]), initchan) |
| | | updateDbData(x) |
| | | } |
| | | } |