@@ -17,9 +17,8 @@ type TopicConfigurations struct {
17
17
}
18
18
19
19
type Availability struct {
20
- Topic string `json:"topic"`
21
- Payload availabilityPayload `json:"payload"`
22
- Interval * Interval `json:"interval"`
20
+ Topic string `json:"topic"`
21
+ Payload availabilityPayload `json:"payload"`
23
22
}
24
23
type availabilityPayload struct {
25
24
Available string `json:"available"`
@@ -36,6 +35,7 @@ type Trigger struct {
36
35
type Sensor struct {
37
36
Name string `json:"name"`
38
37
ResultTopic string `json:"topic"`
38
+ Retained bool `json:"retained"`
39
39
Interval Interval `json:"interval"`
40
40
Unit string `json:"unit"`
41
41
Icon string `json:"icon"`
@@ -68,10 +68,6 @@ func LoadTopicConfiguration(configFilePath, deviceId string) (TopicConfiguration
68
68
//replace DEVICE_ID
69
69
if topicConfig .Availability != nil {
70
70
topicConfig .Availability .Topic = strings .Replace (topicConfig .Availability .Topic , "__DEVICE_ID__" , deviceId , - 1 )
71
- if topicConfig .Availability .Interval == nil {
72
- defaultInterval := Interval (30 * time .Second )
73
- topicConfig .Availability .Interval = & defaultInterval
74
- }
75
71
if topicConfig .Availability .Payload .Available == "" {
76
72
topicConfig .Availability .Payload .Available = "Online"
77
73
}
0 commit comments