Compare commits

..

6 Commits

Author SHA1 Message Date
Jan Zípek b6d2d115bf
TODOs are complete 2025-03-05 11:09:33 +01:00
Jan Zípek 44d57143d0
Fix closing 2025-03-05 11:05:24 +01:00
Jan Zípek bae535a014
Refactoring 2025-03-05 11:00:51 +01:00
Jan Zípek 3029d4af52
Improved error messages 2025-03-04 23:29:48 +01:00
Jan Zípek 9f65112a82
Fix missing value field 2025-03-04 21:31:42 +01:00
Jan Zípek 4f9fcbe7e0
MQTT sensors implemented, refactoring needed 2025-03-04 12:09:15 +01:00
2 changed files with 2 additions and 9 deletions

View File

@ -218,7 +218,7 @@ func (s *MQTTBrokersService) EnsureListeners() {
} }
topics := map[string]byte{} topics := map[string]byte{}
brokerSensors := []models.SensorItem{} brokerSensors := []*models.SensorItem{}
for _, sensor := range sensors { for _, sensor := range sensors {
if sensor.MqttBrokerId == nil || *sensor.MqttBrokerId != broker.Id { if sensor.MqttBrokerId == nil || *sensor.MqttBrokerId != broker.Id {
@ -230,7 +230,7 @@ func (s *MQTTBrokersService) EnsureListeners() {
} }
topics[*sensor.MqttTopic] = byte(0) topics[*sensor.MqttTopic] = byte(0)
brokerSensors = append(brokerSensors, sensor) brokerSensors = append(brokerSensors, &sensor)
} }
if len(brokerSensors) == 0 { if len(brokerSensors) == 0 {
@ -249,10 +249,6 @@ func (s *MQTTBrokersService) EnsureListeners() {
log.Printf("MQTT broker %s: Listening for %d topics\n", broker.Name, len(topics)) log.Printf("MQTT broker %s: Listening for %d topics\n", broker.Name, len(topics))
for _, sensor := range brokerSensors {
log.Printf("MQTT broker %s: Sensor %s (%d) - %s\n", broker.Name, sensor.Name, sensor.Id, *sensor.MqttTopic)
}
go func() { go func() {
for { for {
data, ok := <-client.Channel data, ok := <-client.Channel
@ -279,7 +275,6 @@ func (s *MQTTBrokersService) EnsureListeners() {
} }
if *sensor.MqttTopic != data.Topic { if *sensor.MqttTopic != data.Topic {
log.Printf("WARN: Skipping sensor %s because it has different topic", sensor.Name)
continue continue
} }
@ -303,8 +298,6 @@ func (s *MQTTBrokersService) EnsureListeners() {
continue continue
} }
log.Printf("Value for sensor %d (%s) - %f", sensor.Id, sensor.Name, value)
s.ctx.Services.SensorValues.Push(sensor.Id, value) s.ctx.Services.SensorValues.Push(sensor.Id, value)
} }