|
|
@@ -2,6 +2,9 @@ package service
|
|
|
|
|
|
import (
|
|
|
"fmt"
|
|
|
+ "golang.org/x/text/encoding/simplifiedchinese"
|
|
|
+ "golang.org/x/text/transform"
|
|
|
+ "io"
|
|
|
"net"
|
|
|
"regexp"
|
|
|
"smartIntersection_edge/util/config"
|
|
|
@@ -65,7 +68,7 @@ func (s *Device) Process() {
|
|
|
s.IsLogin = true
|
|
|
Devices[data[20:44]] = s
|
|
|
topic := MqttService.GetTopic(s.Info.Sn, TopicChanStatus)
|
|
|
- err := MqttService.Publish(topic, 1)
|
|
|
+ err := MqttService.Publish(topic, "1")
|
|
|
if err != nil {
|
|
|
continue
|
|
|
}
|
|
|
@@ -85,7 +88,7 @@ func (s *Device) Process() {
|
|
|
s.SumHighSpeed++
|
|
|
if s.SumHighSpeed >= 3 { //连续三次认为超速
|
|
|
topic := MqttService.GetTopic(s.Info.Sn, TopicHighSpeed)
|
|
|
- MqttService.Publish(topic, time.Now()) //上报当前超速时间
|
|
|
+ MqttService.Publish(topic, time.Now().Format(time.RFC3339)) //上报当前超速时间
|
|
|
}
|
|
|
} else {
|
|
|
s.SumHighSpeed = 0
|
|
|
@@ -108,7 +111,7 @@ func (s *Device) Process() {
|
|
|
|
|
|
if s.SumLowSpeed >= 6 { //连续8次认为低速
|
|
|
topic := MqttService.GetTopic(s.Info.Sn, TopicLowSpeed)
|
|
|
- MqttService.Publish(topic, time.Now()) //上报当前低俗时间
|
|
|
+ MqttService.Publish(topic, time.Now().Format(time.RFC3339)) //上报当前低速时间
|
|
|
}
|
|
|
} else {
|
|
|
s.SumLowSpeed = 0
|
|
|
@@ -135,3 +138,8 @@ func FindScreenBySN(sn string) *config.Screens {
|
|
|
}
|
|
|
return nil
|
|
|
}
|
|
|
+
|
|
|
+func UTF8ToGB2312(s string) ([]byte, error) {
|
|
|
+ reader := transform.NewReader(strings.NewReader(s), simplifiedchinese.GB18030.NewEncoder())
|
|
|
+ return io.ReadAll(reader)
|
|
|
+}
|