get ip,port config from db,update realtime
New file |
| | |
| | | package cache |
| | | |
| | | import ( |
| | | "basic.com/dbapi.git" |
| | | "basic.com/pubsub/protomsg.git" |
| | | "basic.com/valib/gopherdiscovery.git" |
| | | "basic.com/pubsub/cache.git/shardmap" |
| | | "basic.com/valib/logger.git" |
| | | "errors" |
| | | "github.com/gogo/protobuf/proto" |
| | | "fmt" |
| | | "github.com/satori/go.uuid" |
| | | "strconv" |
| | | ) |
| | | |
| | | const ( |
| | | SERVER_KEY = "SERVERINFO" |
| | | ) |
| | | |
| | | var cMap *shardmap.ShardMap |
| | | |
| | | |
| | | func Init(initChan chan bool,dbIp string,surveyPort int,pubSubPort int){ |
| | | cMap = shardmap.New(uint8(32)) |
| | | urlSurvey := "tcp://" + dbIp + ":" + strconv.Itoa(surveyPort) |
| | | urlPubSub := "tcp://" + dbIp + ":" + strconv.Itoa(pubSubPort) |
| | | client, _ := gopherdiscovery.ClientWithSub(urlSurvey, urlPubSub, "webServerProc_"+uuid.NewV4().String()) |
| | | recvMsg := client.HeartBeatMsg() |
| | | fmt.Println(<-recvMsg) |
| | | |
| | | initCacheData(initChan) |
| | | |
| | | peers, _ := client.Peers() |
| | | for b := range peers{ |
| | | logger.Debug("peerMsg:",b) |
| | | updateData(b) |
| | | } |
| | | } |
| | | |
| | | func initCacheData(initChan chan bool) { |
| | | initServerInfo()//初始化服务器配置信息 |
| | | |
| | | initChan <- true |
| | | } |
| | | |
| | | var newUpdateMsg = &protomsg.DbChangeMessage{} |
| | | |
| | | func updateData(b []byte){ |
| | | if err :=proto.Unmarshal(b,newUpdateMsg);err !=nil{ |
| | | logger.Debug("dbChangeMsg unmarshal err:",err) |
| | | return |
| | | } |
| | | switch newUpdateMsg.Table { |
| | | case protomsg.TableChanged_T_Server: |
| | | initServerInfo() |
| | | default: |
| | | logger.Debug("other updateData operation") |
| | | |
| | | } |
| | | } |
| | | |
| | | func initServerInfo() { |
| | | var api dbapi.SysSetApi |
| | | b, s := api.GetServerInfo() |
| | | if b{ |
| | | cMap.Set(SERVER_KEY,s) |
| | | } |
| | | } |
| | | |
| | | func GetServerInfo() (conf protomsg.LocalConfig,err error) { |
| | | config, b := cMap.Get(SERVER_KEY) |
| | | if b { |
| | | return config.(protomsg.LocalConfig),nil |
| | | } else { |
| | | return conf,errors.New("conf not found") |
| | | } |
| | | } |
| | |
| | | // @Description 显示左侧所有区域和摄像机 |
| | | // @Produce json |
| | | // @Tags menu |
| | | // @Param parentid query int true "区域的id" |
| | | // @Param parentid query string true "区域的id" |
| | | // @Param searchType query int true "查询类型(0:全部,1:分析摄像机,2:监控摄像机)" |
| | | // @Param cameraName query string false "摄像机名称" |
| | | // @Success 200 {string} json "{"code":200, msg:"目录结构数据"}" |
| | | // @Failure 500 {string} json "{"code":500, msg:"返回错误信息"}" |
| | | // @Router /data/api-v/area/localmenu [get] |
| | |
| | | // @Description 显示Gb28181树形结构 |
| | | // @Produce json |
| | | // @Tags menu |
| | | // @Param parentid query int true "区域的id" |
| | | // @Param parentid query string true "区域的id" |
| | | // @Param searchType query int true "查询类型(0:全部,1:分析摄像机,2:监控摄像机)" |
| | | // @Param cameraName query string false "摄像机名称" |
| | | // @Success 200 {string} json "{"code":200, msg:"目录结构数据"}" |
| | | // @Failure 500 {string} json "{"code":500, msg:"返回错误信息"}" |
| | | // @Router /data/api-v/area/localmenu [get] |
| | | // @Router /data/api-v/area/gb28181Tree [get] |
| | | func (ac AreaController) CameraGb28181Tree(c *gin.Context) { |
| | | parentIdStr := c.Query("parentid") |
| | | searchTypeStr := c.Query("searchType") |
| | |
| | | util.ResponseFormat(c, code.Success, arr) |
| | | } |
| | | |
| | | // @Summary 刷新Gb28181平台树 |
| | | // @Description 刷新Gb28181平台树 |
| | | // @Produce json |
| | | // @Tags menu |
| | | // @Param id formData string true "国标平台id" |
| | | // @Success 200 {string} json "{"code":200, data:"",msg:"请求成功", success:true}" |
| | | // @Failure 200 {string} json "{"code":500, data:"",msg:"请求失败", success:false}" |
| | | // @Router /data/api-v/area/gb28181TreeRefresh [post] |
| | | func (ac AreaController) Gb28181TreeRefresh(c *gin.Context) { |
| | | id := c.PostForm("id") |
| | | if id =="" { |
| | | util.ResponseFormat(c, code.RequestParamError, "参数错误") |
| | | return |
| | | } |
| | | var api dbapi.AreaApi |
| | | if api.Gb28181TreeRefresh(id) { |
| | | util.ResponseFormat(c,code.UpdateSuccess,"更新成功") |
| | | } else { |
| | | util.ResponseFormat(c,code.UpdateFail, "更新失败") |
| | | } |
| | | } |
| | | |
| | | // @Summary 删除Gb28181平台 |
| | | // @Description 删除Gb28181平台 |
| | | // @Produce json |
| | | // @Tags menu |
| | | // @Success 200 {string} json "{"code":200, data:"",msg:"请求成功", success:true}" |
| | | // @Failure 200 {string} json "{"code":500, data:"",msg:"请求失败", success:false}" |
| | | // @Router /data/api-v/area/gb28181TreeDelete [post] |
| | | func (ac AreaController) Gb28181TreeDelete(c *gin.Context) { |
| | | var api dbapi.AreaApi |
| | | if api.Gb28181TreeDelete() { |
| | | util.ResponseFormat(c,code.DelSuccess,"删除成功") |
| | | } else { |
| | | util.ResponseFormat(c,code.ComError, "删除失败") |
| | | } |
| | | } |
| | | |
| | | // @Summary 添加menu的区域 |
| | | // @Description 添加目录上区域 |
| | | // @Produce json |
| | |
| | | |
| | | import ( |
| | | "basic.com/dbapi.git" |
| | | "basic.com/valib/logger.git" |
| | | "fmt" |
| | | "github.com/gin-gonic/gin" |
| | | "strconv" |
| | | "strings" |
| | | "webserver/cache" |
| | | "webserver/extend/code" |
| | | "webserver/extend/config" |
| | | "webserver/extend/esutil" |
| | |
| | | cameraIdStr = "{\"terms\":{\"cameraId\":[\"" + esCameraId + "\"]}}," |
| | | } |
| | | //请求头 |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | util.ResponseFormat(c,code.ComError,"es config err") |
| | | return |
| | | } |
| | | url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) + |
| | | "/" + index + "/_search" |
| | | |
| | | var setApi dbapi.SysSetApi |
| | |
| | | "\"sort\":[{\"picDate\":{\"order\":\"desc\"}}]," + |
| | | "\"size\":\"1000\"," + |
| | | "\"_source\":[\"baseInfo\",\"alarmRules\",\"sex\",\"analyServerName\",\"sdkName\",\"ageDescription\",\"content\",\"id\",\"cameraAddr\",\"picMaxUrl\",\"picDate\",\"race\",\"videoUrl\",\"picSmUrl\",\"taskName\",\"personIsHub\",\"isAlarm\",\"analyServerIp\",\"cameraId\"]}" |
| | | fmt.Println(prama) |
| | | tokenRes := esutil.GetEsDataReq(url, prama, true) |
| | | util.ResponseFormat(c, code.Success, tokenRes) |
| | | } |
| | |
| | | "strconv" |
| | | "time" |
| | | "basic.com/valib/logger.git" |
| | | "webserver/cache" |
| | | "webserver/service" |
| | | |
| | | "github.com/gin-gonic/gin" |
| | |
| | | break |
| | | } |
| | | } |
| | | var weedfsUri = "http://"+config.WeedFs.Ip+":"+strconv.Itoa(config.WeedFs.UploadPort)+"/submit" |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.WebPicIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return |
| | | } |
| | | var weedfsUri = "http://"+localConf.WebPicIp+":"+strconv.Itoa(int(localConf.WebPicPort))+"/submit" |
| | | //根据人脸坐标扣出人脸小图 |
| | | t1 := time.Now() |
| | | cutFaceImgData := util.SubImg(*pI, int(rcFace.Left), int(rcFace.Top), int(rcFace.Right), int(rcFace.Bottom)) |
| | |
| | | } |
| | | |
| | | func UpdateDbPersonsOfDbTable(id string) (message string) { |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return "修改失败" |
| | | } |
| | | url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) + |
| | | "/" + config.EsInfo.EsIndex.Dbtablepersons.IndexName + "/_update_by_query?refresh" |
| | | jsonDSL := ` |
| | | { |
| | |
| | | "fmt" |
| | | "github.com/gin-gonic/gin" |
| | | "github.com/satori/go.uuid" |
| | | "strconv" |
| | | "time" |
| | | "webserver/cache" |
| | | "webserver/extend/code" |
| | | "webserver/extend/config" |
| | | "webserver/extend/esutil" |
| | |
| | | |
| | | // 依据底库id 查询数据 |
| | | func QueryDbTableInfo(tableId string) map[string]interface{} { |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return nil |
| | | } |
| | | url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) + |
| | | "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + tableId |
| | | logger.Debug("请求url:%s;", url) |
| | | data := esutil.GetEsDataInfo(url, true) |
| | |
| | | |
| | | func UpdateEndTime(id string) (flag bool) { |
| | | flag = false |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return false |
| | | } |
| | | url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) + |
| | | "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/" + config.EsInfo.EsIndex.DbTables.IndexType + "/" + id + "/_update?refresh=wait_for" |
| | | prama := "{\"script\":\"ctx._source.remove(\\\"endTime\\\")\"}" |
| | | buf, err := esutil.EsReq("POST", url, []byte(prama)) |
| | |
| | | |
| | | import ( |
| | | "basic.com/dbapi.git" |
| | | "basic.com/valib/logger.git" |
| | | "fmt" |
| | | "github.com/gin-gonic/gin" |
| | | "math/rand" |
| | | "strconv" |
| | | "strings" |
| | | "webserver/cache" |
| | | "webserver/extend/code" |
| | | "webserver/extend/config" |
| | | "webserver/extend/esutil" |
| | |
| | | esSize := strconv.Itoa(webSize) |
| | | //使用es底层机制处理分页 |
| | | //请求头 |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return nil |
| | | } |
| | | url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) + |
| | | "/" + index + "/_search?search_type=dfs_query_then_fetch" |
| | | |
| | | var setApi dbapi.SysSetApi |
| | |
| | | "github.com/gin-gonic/gin" |
| | | "strconv" |
| | | "strings" |
| | | "webserver/cache" |
| | | "webserver/extend/code" |
| | | "webserver/extend/config" |
| | | "webserver/extend/esutil" |
| | |
| | | |
| | | //使用es底层机制处理分页 |
| | | //请求头 |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return nil |
| | | } |
| | | url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) + |
| | | "/" + index + "/_search?search_type=dfs_query_then_fetch" |
| | | var setApi dbapi.SysSetApi |
| | | _, sysconf := setApi.GetServerInfo() |
| | |
| | | } |
| | | |
| | | func GetLinkInfo(linkId string, id string) []map[string]interface{} { |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return nil |
| | | } |
| | | url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) + |
| | | "/" + config.EsInfo.EsIndex.VideoPersons.IndexName + "," + config.EsInfo.EsIndex.Personaction.IndexName + "/_search?search_type=dfs_query_then_fetch" |
| | | jsonDSL := "{\"query\":{\"bool\":{\"filter\":[{\"term\":{\"linkId.keyword\":\"" + linkId + "\"}}],\"must_not\":[{\"term\":{\"id\":\"" + id + "\"}}]}},\"size\":100}" |
| | | |
| | |
| | | "strings" |
| | | "sync" |
| | | "time" |
| | | "webserver/cache" |
| | | "webserver/extend/code" |
| | | "webserver/extend/config" |
| | | "webserver/extend/esutil" |
| | |
| | | util.ResponseFormat(c, code.RequestParamError, "参数有误") |
| | | return |
| | | } |
| | | var weedfsUri = "http://"+config.WeedFs.Ip+":"+strconv.Itoa(config.WeedFs.UploadPort)+"/submit" |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.WebPicIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return |
| | | } |
| | | var weedfsUri = "http://"+localConf.WebPicIp+":"+strconv.Itoa(int(localConf.WebPicPort))+"/submit" |
| | | resultMap :=make(map[string]interface{},0) |
| | | //将上传的图片交人脸检测和人脸提取,获得特征 |
| | | fileBytes, _ := ioutil.ReadAll(file) |
| | |
| | | } |
| | | } |
| | | if len(captureIds) >0 { |
| | | videopersons, _ := esApi.Videopersonsinfosbyid(captureIds, config.EsInfo.EsIndex.VideoPersons.IndexName, config.EsInfo.Masterip, config.EsInfo.Httpport) |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return nil |
| | | } |
| | | videopersons, _ := esApi.Videopersonsinfosbyid(captureIds, config.EsInfo.EsIndex.VideoPersons.IndexName, localConf.AlarmIp, strconv.Itoa(int(localConf.AlarmPort))) |
| | | logger.Debug("comp videoPersons.len:",len(videopersons)) |
| | | for _,vp :=range videopersons { |
| | | isAlarmInt, _ := strconv.Atoi(vp.IsAlarm) |
| | |
| | | } |
| | | var faceB []byte |
| | | if searchBody.CaptureId != "" {//做查找此人,搜所有抓拍和底库 |
| | | searchBase64Fea, err := esApi.GetVideoPersonFaceFeatureById(searchBody.CaptureId, config.EsInfo.EsIndex.VideoPersons.IndexName, config.EsInfo.Masterip, config.EsInfo.Httpport) |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | util.ResponseFormat(c,code.ComError,"localConf wrong") |
| | | return |
| | | } |
| | | searchBase64Fea, err := esApi.GetVideoPersonFaceFeatureById(searchBody.CaptureId, config.EsInfo.EsIndex.VideoPersons.IndexName, localConf.AlarmIp, strconv.Itoa(int(localConf.AlarmPort))) |
| | | if err !=nil { |
| | | util.ResponseFormat(c, code.ComError, "抓拍数据不存在,请检查") |
| | | return |
| | |
| | | util.ResponseFormat(c, code.RequestParamError, "参数有误") |
| | | return |
| | | } |
| | | var weedfsUri = "http://"+config.WeedFs.Ip+":"+strconv.Itoa(config.WeedFs.UploadPort)+"/submit" |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.WebPicIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return |
| | | } |
| | | var weedfsUri = "http://"+localConf.WebPicIp+":"+strconv.Itoa(int(localConf.WebPicPort))+"/submit" |
| | | |
| | | //将上传的图片交人脸检测和人脸提取,获得特征 |
| | | fileBytes, _ := ioutil.ReadAll(file) |
| | |
| | | break |
| | | } |
| | | } |
| | | var weedfsUri = "http://"+config.WeedFs.Ip+":"+strconv.Itoa(config.WeedFs.UploadPort)+"/submit" |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.WebPicIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return "",nil,err2 |
| | | } |
| | | var weedfsUri = "http://"+localConf.WebPicIp+":"+strconv.Itoa(int(localConf.WebPicPort))+"/submit" |
| | | //根据人脸坐标扣出人脸小图 |
| | | t1 := time.Now() |
| | | cutFaceImgData := util.SubImg(*pI, int(rcFace.Left), int(rcFace.Top), int(rcFace.Right), int(rcFace.Bottom)) |
| | |
| | | util.ResponseFormat(c, code.UploadFileError, err2.Error()) |
| | | return |
| | | } |
| | | var weedfsUri = "http://"+config.WeedFs.Ip+":"+strconv.Itoa(config.WeedFs.UploadPort)+"/submit" |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.WebPicIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return |
| | | } |
| | | var weedfsUri = "http://"+localConf.WebPicIp+":"+strconv.Itoa(int(localConf.WebPicPort))+"/submit" |
| | | { |
| | | uri := weedfsUri |
| | | fileInfo, e := esutil.PostFormBufferData(uri, filename, "file", uploadData) |
| | |
| | | |
| | | import ( |
| | | "basic.com/dbapi.git" |
| | | "basic.com/valib/logger.git" |
| | | "fmt" |
| | | "github.com/gin-gonic/gin" |
| | | "strconv" |
| | | "strings" |
| | | "webserver/cache" |
| | | "webserver/extend/code" |
| | | "webserver/extend/config" |
| | | "webserver/extend/esutil" |
| | |
| | | var searchBody RealTimeArg |
| | | c.BindJSON(&searchBody) |
| | | index := config.EsInfo.EsIndex.VideoPersons.IndexName + "," + config.EsInfo.EsIndex.Personaction.IndexName |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | util.ResponseFormat(c,code.ComError,"localConf wrong") |
| | | return |
| | | } |
| | | url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) + |
| | | "/" + index + "/_search" |
| | | cameraIdStr := "" |
| | | if searchBody.TreeNodes !=nil { |
| | |
| | | taskIdStr = "{\"terms\":{\"taskId\":[\"" + esTaskId + "\"]}}," |
| | | } |
| | | //请求头 |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | util.ResponseFormat(c,code.ComError,"localConf wrong") |
| | | return |
| | | } |
| | | url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) + |
| | | "/" + index + "/_search" |
| | | var setApi dbapi.SysSetApi |
| | | _, sysconf := setApi.GetServerInfo() |
| | |
| | | |
| | | import ( |
| | | "basic.com/dbapi.git" |
| | | "basic.com/valib/logger.git" |
| | | "fmt" |
| | | "strconv" |
| | | "strings" |
| | | "webserver/cache" |
| | | |
| | | "github.com/gin-gonic/gin" |
| | | "webserver/extend/code" |
| | |
| | | taskIdStr = "{\"terms\":{\"taskId\":[\"" + esTaskId + "\"]}}," |
| | | } |
| | | //请求头 |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | util.ResponseFormat(c,code.ComError,"localConf wrong") |
| | | return |
| | | } |
| | | url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) + |
| | | "/" + index + "/_search" |
| | | |
| | | var setApi dbapi.SysSetApi |
| | |
| | | |
| | | import ( |
| | | "basic.com/dbapi.git" |
| | | "basic.com/valib/logger.git" |
| | | "encoding/json" |
| | | "fmt" |
| | | "strconv" |
| | | "webserver/cache" |
| | | "webserver/extend/code" |
| | | "webserver/extend/config" |
| | | "webserver/extend/esutil" |
| | |
| | | //判断底库是否有数据 |
| | | func GetTotalFromDb(id string) (flag bool) { |
| | | flag = false |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return false |
| | | } |
| | | url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) + |
| | | "/" + config.EsInfo.EsIndex.VideoPersons.IndexName + "/_search" |
| | | prama := "{\"query\":{\"bool\":{\"filter\":[{\"term\":{\"baseInfo.tableId\":\"" + id + "\"}}]}},\"size\":0}" |
| | | buf, err := esutil.EsReq("POST", url, []byte(prama)) |
| | |
| | | package controllers |
| | | |
| | | import ( |
| | | "basic.com/valib/logger.git" |
| | | "fmt" |
| | | "strconv" |
| | | "webserver/cache" |
| | | |
| | | "github.com/gin-gonic/gin" |
| | | "webserver/extend/code" |
| | |
| | | // @Failure 500 {string} json "{"code":500, msg:"返回错误信息", success:false}" |
| | | // @Router /data/api-v/es/tagList [POST] |
| | | func (sc *EsSearchController) PostEsTaskList(c *gin.Context) { |
| | | |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | util.ResponseFormat(c,code.ComError,"localConf wrong") |
| | | return |
| | | } |
| | | url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) + |
| | | "/" + config.EsInfo.EsIndex.VideoPersons.IndexName + "," + config.EsInfo.EsIndex.Personaction.IndexName + "/_search" |
| | | |
| | | prama := "{\"size\":0,\"aggs\":{\"taskId_list\":{\"terms\":{\"field\":\"taskId\"}}}}" |
| | |
| | | go 1.12 |
| | | |
| | | require ( |
| | | basic.com/dbapi.git v0.0.0-20190823075733-e5071de98457 |
| | | basic.com/fileServer/WeedFSClient.git v0.0.0-20190816064005-fe514a350280 |
| | | basic.com/dbapi.git v0.0.0-20190919084344-7b9de135dd96 // indirect |
| | | basic.com/fileServer/WeedFSClient.git v0.0.0-20190919054037-0182b6c3f5cb // indirect |
| | | basic.com/pubsub/cache.git v0.0.0-20190718093725-6a413e1d7d48 // indirect |
| | | basic.com/pubsub/esutil.git v0.0.0-20190807083318-4431a8860d47 |
| | | basic.com/pubsub/protomsg.git v0.0.0-20190829113947-eb5a5f99a745 |
| | | basic.com/syncdb.git v0.0.0-20190806090534-6ef6050a854c // indirect |
| | |
| | | basic.com/valib/deliver.git v0.0.0-20190531095353-25d8c3b20051 |
| | | basic.com/valib/goffmpeg.git v0.0.0-20190910083410-a6dd7933e0bd // indirect |
| | | basic.com/valib/gopherdiscovery.git v0.0.0-20190605034340-15d89d8b4e28 // indirect |
| | | basic.com/valib/gosdk.git v0.0.0-20190718022708-f0fe2e735c89 // indirect |
| | | basic.com/valib/logger.git v0.0.0-20190912074549-ac4e947b5e9e |
| | | github.com/Microsoft/go-winio v0.4.12 // indirect |
| | | github.com/ajg/form v1.5.1 // indirect |
| | |
| | | basic.com/dbapi.git v0.0.0-20190823075733-e5071de98457 h1:DKxGzMvuCShPR0AtEpPl2WM4nrh2cuLHGUksxCCUnJg= |
| | | basic.com/dbapi.git v0.0.0-20190823075733-e5071de98457/go.mod h1:eDXPnxaz6jZPDvBSk7ya7oSASWPCuUEgRTJCjsfKt/Q= |
| | | basic.com/fileServer/WeedFSClient.git v0.0.0-20190816064005-fe514a350280 h1:fDHXmFgRM6a3pWfh18sXjofprz8AnUaiVDN+yToXtRY= |
| | | basic.com/fileServer/WeedFSClient.git v0.0.0-20190816064005-fe514a350280/go.mod h1:FTryK8BsVLfUplx8a3+l8hJWub6VbAWZCUH7sPRZaso= |
| | | basic.com/dbapi.git v0.0.0-20190919084344-7b9de135dd96 h1:iBqHj7uNMko4BcijsdNVATbTqn2PJO18BWKUAEMPvag= |
| | | basic.com/dbapi.git v0.0.0-20190919084344-7b9de135dd96/go.mod h1:eDXPnxaz6jZPDvBSk7ya7oSASWPCuUEgRTJCjsfKt/Q= |
| | | basic.com/fileServer/WeedFSClient.git v0.0.0-20190919054037-0182b6c3f5cb h1:fM6DojeInFSCFO+wkba1jtyPiSDqw0jYKi4Tk+e+ka4= |
| | | basic.com/fileServer/WeedFSClient.git v0.0.0-20190919054037-0182b6c3f5cb/go.mod h1:FTryK8BsVLfUplx8a3+l8hJWub6VbAWZCUH7sPRZaso= |
| | | basic.com/pubsub/cache.git v0.0.0-20190718093725-6a413e1d7d48 h1:BBA30Rgljn6MRieC4gUncETJDyna3ObyubTo9HEQ2M0= |
| | | basic.com/pubsub/cache.git v0.0.0-20190718093725-6a413e1d7d48/go.mod h1:gHLJZz2ee1cGL0X0ae69fs56bAxkDgEQwDhhXZJNUcY= |
| | | basic.com/pubsub/esutil.git v0.0.0-20190807083318-4431a8860d47 h1:/c8JYWHOjxfrYMTLum6EHx3rcfz8oo0JUf9FGyfkCmk= |
| | | basic.com/pubsub/esutil.git v0.0.0-20190807083318-4431a8860d47/go.mod h1:yIvppFPFGC61DOdm71ujnsxZBMFUu2yKjr5O43bMWCw= |
| | | basic.com/pubsub/protomsg.git v0.0.0-20190829113947-eb5a5f99a745 h1:NQ/172pylwH5BnVwt4vlrXVN+UDn8YJc+5V2ZPaC4P0= |
| | |
| | | basic.com/valib/goffmpeg.git v0.0.0-20190910083410-a6dd7933e0bd/go.mod h1:1x75Hawh/BjgPsQtuJ24px89gzk3uAslD8e0Xs6Z7GQ= |
| | | basic.com/valib/gopherdiscovery.git v0.0.0-20190605034340-15d89d8b4e28 h1:3hejanzPEBvZSSvjIqayB83/6/6SLLrX9oNZAdiYELg= |
| | | basic.com/valib/gopherdiscovery.git v0.0.0-20190605034340-15d89d8b4e28/go.mod h1:CQ+UJyZV8MRzwwckncdUDu6/RDTKAzSIPCxc9tFcwPs= |
| | | basic.com/valib/gosdk.git v0.0.0-20190718022708-f0fe2e735c89 h1:obAoWgx9gdZOUGLNvkYUEmSjuMUXN0gJ+YBEawBDYEE= |
| | | basic.com/valib/gosdk.git v0.0.0-20190718022708-f0fe2e735c89/go.mod h1:mT/jbyl3++GmYjh/jBF65Ein6O6/yd4qIQbSFMCZoE4= |
| | | basic.com/valib/logger.git v0.0.0-20190912074549-ac4e947b5e9e h1:erv1TT6tc7yaNrEh6/niANgtIJQ6WhsapyTc+DN1/lg= |
| | | basic.com/valib/logger.git v0.0.0-20190912074549-ac4e947b5e9e/go.mod h1:SPlOGUUlxCscwF1dkqmLb0oJXVqg1uJ8hsPXLFxrw1M= |
| | | basic.com/valib/logger.git.git v0.0.0-20190904090733-b737ad2f8f18 h1:lfBv29ApfEvecKkUIpKHHsS1qu74ZZGNmzZkazK9PJ8= |
| | |
| | | "basic.com/dbapi.git" |
| | | "basic.com/valib/logger.git" |
| | | "flag" |
| | | "github.com/golang/glog" |
| | | "github.com/spf13/viper" |
| | | "strconv" |
| | | "webserver/cache" |
| | | "webserver/extend/config" |
| | | "webserver/router" |
| | | ) |
| | |
| | | var envirment = flag.String("e", "dev", "") |
| | | var dbIp = flag.String("dbIp", "127.0.0.1", "default dbIp=127.0.0.1") |
| | | var dbPort = flag.String("dbPort", "8001", "default dbPort=8001") |
| | | var surveyPort = flag.Int("surveyPort", 40007, "survey port") //心跳 |
| | | var pubPort = flag.Int("pubPort", 50007, "pubsub port") //数据更新 |
| | | var initchan = make(chan bool) |
| | | |
| | | func init() { |
| | | flag.Parse() |
| | |
| | | } |
| | | logger.SetSaveDays(logSaveDays) |
| | | logger.Info("loginit success !") |
| | | |
| | | flag.Usage = func() { |
| | | glog.Exit("flag parse usage !") |
| | | } |
| | | |
| | | flag.Lookup("alsologtostderr").Value.Set("true") |
| | | flag.Lookup("log_dir").Value.Set("./log") |
| | | |
| | | } |
| | | func main() { |
| | | flag.Parse() |
| | | go cache.Init(initchan, *dbIp, *surveyPort,*pubPort) |
| | | logger.Debug("heartBeat with db done!",<-initchan) |
| | | |
| | | r := router.NewRouter() |
| | | r.Run("0.0.0.0:8000") |
| | | } |
| | |
| | | area.POST("/add", areaController.AreaAdd) |
| | | area.POST("/del", areaController.AreaDelete) |
| | | area.POST("/update", areaController.AreaUpdate) |
| | | area.POST("/gb28181TreeRefresh", areaController.Gb28181TreeRefresh) |
| | | area.POST("/gb28181TreeDelete", areaController.Gb28181TreeDelete) |
| | | } |
| | | |
| | | //摄像机管理 |
| | |
| | | package service |
| | | |
| | | import ( |
| | | "basic.com/valib/logger.git" |
| | | "encoding/json" |
| | | "fmt" |
| | | "strconv" |
| | | "webserver/cache" |
| | | "webserver/extend/config" |
| | | "webserver/extend/esutil" |
| | | "webserver/models" |
| | |
| | | |
| | | // 地库人员数据 为 比对做准备 |
| | | func QueryDbPersonsForCompare(reqBody models.EsSearch) map[string]interface{} { |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return nil |
| | | } |
| | | url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) + |
| | | "/" + config.EsInfo.EsIndex.Dbtablepersons.IndexName + "/_search" |
| | | tableIds := make([]string, 20) |
| | | if reqBody.DataBases != nil { |
| | |
| | | "basic.com/dbapi.git" |
| | | "basic.com/fileServer/WeedFSClient.git" |
| | | "basic.com/valib/capture.git" |
| | | "basic.com/valib/logger.git" |
| | | "errors" |
| | | "strconv" |
| | | "webserver/extend/config" |
| | | "webserver/cache" |
| | | ) |
| | | /*以下属于旧版本地摄像机获取截图(国标摄像机底图无法刷新) |
| | | func PostFormBufferData(uri string, filepath string, fileName string) (maps map[string]interface{}, err0 error) { |
| | |
| | | } |
| | | b,err := capture.Capture("libcffmpeg.so",m,camera.Rtsp,capture.JPEGFileExt,1280,720,10) |
| | | if err == nil{ |
| | | var weedfsUri = "http://"+config.WeedFs.Ip+":"+strconv.Itoa(config.WeedFs.UploadPort)+"/submit" |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.WebPicIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return "",err2 |
| | | } |
| | | var weedfsUri = "http://"+localConf.WebPicIp+":"+strconv.Itoa(int(localConf.WebPicPort))+"/submit" |
| | | weedFilePath, err := WeedFSClient.UploadFile(weedfsUri, camera.Name+".jpg", b) |
| | | if err != nil { |
| | | return "",err |
| | |
| | | |
| | | import ( |
| | | "basic.com/dbapi.git" |
| | | "basic.com/valib/logger.git" |
| | | "encoding/json" |
| | | "fmt" |
| | | "strconv" |
| | | "strings" |
| | | "time" |
| | | "webserver/cache" |
| | | "webserver/extend/config" |
| | | "webserver/extend/esutil" |
| | | "basic.com/valib/logger.git" |
| | | ) |
| | | |
| | | func GetVerificationData() []map[string]interface{} { |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return nil |
| | | } |
| | | url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) + |
| | | "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/_search" |
| | | var setApi dbapi.SysSetApi |
| | | _, sysconf := setApi.GetServerInfo() |
| | |
| | | status = 1 |
| | | } |
| | | enable := strconv.Itoa(status) |
| | | url := "http://" + config.EsInfo.Masterip + ":" + config.EsInfo.Httpport + |
| | | localConf, err2 := cache.GetServerInfo() |
| | | if err2 !=nil || localConf.AlarmIp == "" { |
| | | logger.Debug("localConfig is wrong!!!") |
| | | return "localConf wrong" |
| | | } |
| | | url := "http://" + localConf.AlarmIp + ":" + strconv.Itoa(int(localConf.AlarmPort)) + |
| | | "/" + config.EsInfo.EsIndex.DbTables.IndexName + "/_update_by_query?refresh" |
| | | jsonDsl := ` |
| | | { |