chengqian пре 4 месеци
родитељ
комит
942427fa6f

+ 1 - 0
server/build.bat

@@ -1 +1,2 @@
 go env -w CGO_ENABLED=0 GOOS=linux GOARCH=amd64 && go build -o build/smart_intersectionV2.0 ./
+

BIN
server/build/smart_intersectionV2.0


+ 4 - 12
server/service/devices/mqtt.go

@@ -87,19 +87,19 @@ func (o *MqttHandler) Handler() interface{} {
 		}
 
 		switch topic {
-		case TopicHighSpeed: //存储超速事件
+		case protocol.TopicHighSpeed: //存储超速事件
 			event := dao.Event{Sn: sn, Type: "超速", Time: m.PayloadString()}
 			err := event.AddEvent()
 			if err != nil {
 				global.GVA_LOG.Error(fmt.Sprintf("添加事件失败:%s", err.Error()))
 			}
-		case TopicLowSpeed: //存储低速时间
+		case protocol.TopicLowSpeed: //存储低速时间
 			event := dao.Event{Sn: sn, Type: "低速", Time: m.PayloadString()}
 			err := event.AddEvent()
 			if err != nil {
 				global.GVA_LOG.Error(fmt.Sprintf("添加事件失败:%s", err.Error()))
 			}
-		case TopicChanStatus: //修改屏幕状态
+		case protocol.TopicChanStatus: //修改屏幕状态
 			status, _ := strconv.Atoi(m.PayloadString())
 			err := dao.UpdateScreensStatusBySn(sn, status)
 			if err != nil {
@@ -130,17 +130,9 @@ func parseTopic(topic string) (string, string, error) {
 }
 
 func Sending(sn, json string) error {
-	err := MqttService.Publish(MqttService.GetTopic(sn, protocol.TopicChanStatus), []byte(json))
+	err := MqttService.Publish(MqttService.GetTopic(sn, protocol.TopicSetControl), []byte(json))
 	if err != nil {
 		return fmt.Errorf("error updating: %v", err)
 	}
 	return nil
 }
-
-const (
-	TopicChanStatus = "chanStatus" //上报状态
-	TopicHighSpeed  = "highSpeed"  //超速时
-	TopicLowSpeed   = "lowSpeed"   //低速时
-
-	TopicSetControl = "setControl" //云台下发控制
-)

+ 2 - 2
server/service/devices/program.go

@@ -31,7 +31,7 @@ func (ps *ProgramService) CreateProgram(ref devices.ProgramReq) error {
 		return fmt.Errorf("转换失败: %v", err)
 	}
 
-	err = MqttService.Publish(MqttService.GetTopic(ref.DeviceSn, protocol.TopicChanStatus), jsonBytes)
+	err = MqttService.Publish(MqttService.GetTopic(ref.DeviceSn, protocol.TopicSetControl), jsonBytes)
 	if err != nil {
 		return fmt.Errorf("error updating: %v", err)
 	}
@@ -67,7 +67,7 @@ func (ps *ProgramService) UpdateProgram(ref devices.ProgramReq) error {
 		return fmt.Errorf("转换失败: %v", err)
 	}
 
-	err = MqttService.Publish(MqttService.GetTopic(ref.DeviceSn, protocol.TopicChanStatus), jsonBytes)
+	err = MqttService.Publish(MqttService.GetTopic(ref.DeviceSn, protocol.TopicSetControl), jsonBytes)
 	if err != nil {
 		return fmt.Errorf("error updating: %v", err)
 	}

+ 2 - 2
server/service/devices/soundPeriod.go

@@ -33,7 +33,7 @@ func (sps *SoundPeriodService) CreateSoundPeriod(req devices.SoundPeriodReq) err
 		return fmt.Errorf("转换失败: %v", err)
 	}
 
-	err = MqttService.Publish(MqttService.GetTopic(req.DeviceSn, protocol.TopicChanStatus), jsonBytes)
+	err = MqttService.Publish(MqttService.GetTopic(req.DeviceSn, protocol.TopicSetControl), jsonBytes)
 	if err != nil {
 		return fmt.Errorf("error updating: %v", err)
 	}
@@ -71,7 +71,7 @@ func (sps *SoundPeriodService) UpdateSoundPeriod(req devices.SoundPeriodReq) err
 		return fmt.Errorf("转换失败: %v", err)
 	}
 
-	err = MqttService.Publish(MqttService.GetTopic(req.DeviceSn, protocol.TopicChanStatus), jsonBytes)
+	err = MqttService.Publish(MqttService.GetTopic(req.DeviceSn, protocol.TopicSetControl), jsonBytes)
 	if err != nil {
 		return fmt.Errorf("error updating: %v", err)
 	}

+ 2 - 2
server/service/devices/voice.go

@@ -29,7 +29,7 @@ func (vs *VoiceService) CreateVoice(info devices.VoiceReq) error {
 		return fmt.Errorf("转换失败: %v", err)
 	}
 
-	err = MqttService.Publish(MqttService.GetTopic(info.DeviceSn, protocol.TopicChanStatus), jsonBytes)
+	err = MqttService.Publish(MqttService.GetTopic(info.DeviceSn, protocol.TopicSetControl), jsonBytes)
 	if err != nil {
 		return fmt.Errorf("error updating: %v", err)
 	}
@@ -62,7 +62,7 @@ func (vs *VoiceService) UpdateVoice(info devices.VoiceReq) error {
 		return fmt.Errorf("转换失败: %v", err)
 	}
 
-	err = MqttService.Publish(MqttService.GetTopic(info.DeviceSn, protocol.TopicChanStatus), jsonBytes)
+	err = MqttService.Publish(MqttService.GetTopic(info.DeviceSn, protocol.TopicSetControl), jsonBytes)
 	if err != nil {
 		return fmt.Errorf("error updating: %v", err)
 	}

+ 51 - 52
server/service/tcp/deviceMgr.go

@@ -10,7 +10,6 @@ import (
 	"regexp"
 	"server/dao"
 	"server/global"
-	"server/service/devices"
 	"strconv"
 	"strings"
 	"time"
@@ -125,57 +124,57 @@ func (s *Device) Process() {
 	}
 }
 
-func IsOnline() {
-	t := time.NewTicker(5 * time.Second) //每分钟
-	for {
-		select {
-		case <-t.C:
-			topic := devices.MqttService.GetTopic("071995171560000000c40808", devices.TopicChanStatus)
-			err := devices.MqttService.Publish(topic, "1")
-			if err != nil {
-				fmt.Println(err.Error())
-			}
-			fmt.Println("发送了。。。。。。。。。。。。。。。。。。。。。。")
-			for _, device := range Devices {
-				//commond := `{
-				// "setdiscontent0":{
-				//   "num":"7",
-				//   "effect":"11",
-				//   "speed":"3",
-				//   "stay":"5",
-				//   "total":"100",
-				//   "color":"3",
-				//   "content":"[24M]哈哈哈哈"
-				// }
-				//}`
-
-				//conyuyin := `{"audionumset0":{"num0":"21","num1":"[m0]前方路口,注意来车","num2":"[m1]您已超速,请减速","num3":"[m0]对向来车,请减速","num4":"[m0]双向来车,请减速"}}`
-
-				//consy := ``
-
-				//gb2312, _ := UTF8ToGB2312(conyuyin)
-
-				//n, err := Devices[device.Info.Sn].Conn.Write(gb2312)
-				//fmt.Println("我是n,", n)
-				//if err != nil {
-				//	fmt.Println("err:", err)
-				//}
-				//fmt.Println("发送了。。。。。。。。。。。。。。。。。。。。。。")
-				//符合条件
-				if time.Now().Add(-2*time.Minute).After(device.LastTime) || device.LastTime.IsZero() {
-					state := 0
-					err := dao.UpdateScreensStatusBySn(device.Info.Sn, state)
-					delete(Devices, device.Info.Sn)
-					if err != nil {
-						continue
-					}
-					device.Info.Status = 0
-					global.GVA_LOG.Info("设备离线了", zap.String("ScreensName", device.Info.ScreensName))
-				}
-			}
-		}
-	}
-}
+//func IsOnline() {
+//	t := time.NewTicker(5 * time.Second) //每分钟
+//	for {
+//		select {
+//		case <-t.C:
+//			topic := devices.MqttService.GetTopic("071995171560000000c40808", devices.TopicChanStatus)
+//			err := devices.MqttService.Publish(topic, "1")
+//			if err != nil {
+//				fmt.Println(err.Error())
+//			}
+//			fmt.Println("发送了。。。。。。。。。。。。。。。。。。。。。。")
+//			for _, device := range Devices {
+//				//commond := `{
+//				// "setdiscontent0":{
+//				//   "num":"7",
+//				//   "effect":"11",
+//				//   "speed":"3",
+//				//   "stay":"5",
+//				//   "total":"100",
+//				//   "color":"3",
+//				//   "content":"[24M]哈哈哈哈"
+//				// }
+//				//}`
+//
+//				//conyuyin := `{"audionumset0":{"num0":"21","num1":"[m0]前方路口,注意来车","num2":"[m1]您已超速,请减速","num3":"[m0]对向来车,请减速","num4":"[m0]双向来车,请减速"}}`
+//
+//				//consy := ``
+//
+//				//gb2312, _ := UTF8ToGB2312(conyuyin)
+//
+//				//n, err := Devices[device.Info.Sn].Conn.Write(gb2312)
+//				//fmt.Println("我是n,", n)
+//				//if err != nil {
+//				//	fmt.Println("err:", err)
+//				//}
+//				//fmt.Println("发送了。。。。。。。。。。。。。。。。。。。。。。")
+//				//符合条件
+//				if time.Now().Add(-2*time.Minute).After(device.LastTime) || device.LastTime.IsZero() {
+//					state := 0
+//					err := dao.UpdateScreensStatusBySn(device.Info.Sn, state)
+//					delete(Devices, device.Info.Sn)
+//					if err != nil {
+//						continue
+//					}
+//					device.Info.Status = 0
+//					global.GVA_LOG.Info("设备离线了", zap.String("ScreensName", device.Info.ScreensName))
+//				}
+//			}
+//		}
+//	}
+//}
 
 func UTF8ToGB2312(s string) ([]byte, error) {
 	reader := transform.NewReader(strings.NewReader(s), simplifiedchinese.GB18030.NewEncoder())