Changes the way to parse parts

This commit is contained in:
2025-06-05 14:29:54 -04:00
parent 930d3391bf
commit 4244fbe988
2 changed files with 8 additions and 14 deletions

View File

@ -308,24 +308,18 @@ func (s *MySubaruClient) mySubaruConfigToMQTTHassioConfig(v *mysubaru.Vehicle) [
for n, d := range v.Doors {
// homeassistant/sensor/mysubaru/VIN-NUMBER-HERE/door_frontleft_status/config
position := d.Position
if len(d.SubPosition) > 0 {
position = position + ` ` + d.SubPosition
}
hassioConfig[s.config.Hassio.Topics.Discovery+`/sensor/`+v.Vin+`/door_`+n+`_status/config`] = `{` + device + origin + topic + `"name":"Door ` + position + ` Status","uniq_id":"` + v.Vin + `_door_` + n + `_status","obj_id":"` + obj_id_prefix + `_door_` + n + `_status","ic":"mdi:car-door","stat_t":"mysubarumq/` + v.Vin + `/doors/state","val_tpl":"{{value_json.` + n + `}}"}`
position := d.Position + ` ` + d.SubPosition
hassioConfig[s.config.Hassio.Topics.Discovery+`/sensor/`+v.Vin+`/`+n+`_status/config`] = `{` + device + origin + topic + `"name":"Door ` + position + ` Status","uniq_id":"` + v.Vin + n + `_status","obj_id":"` + obj_id_prefix + n + `_status","ic":"mdi:car-door","stat_t":"mysubarumq/` + v.Vin + `/doors/state","val_tpl":"{{value_json.` + n + `}}"}`
}
for n, w := range v.Windows {
// homeassistant/sensor/mysubaru/VIN-NUMBER-HERE/window_frontleft/config
position := w.Position
if len(w.SubPosition) > 0 {
position = position + ` ` + w.SubPosition
}
hassioConfig[s.config.Hassio.Topics.Discovery+`/sensor/`+v.Vin+`/window_`+n+`/config`] = `{` + device + origin + topic + `"name":"Window ` + position + `","uniq_id":"` + v.Vin + `_window_` + n + `","obj_id":"` + obj_id_prefix + `_window_` + n + `","ic":"mdi:car-door","stat_t":"mysubarumq/` + v.Vin + `/windows/state","val_tpl":"{{value_json.window_` + n + `}}"}`
position := w.Position + ` ` + w.SubPosition
hassioConfig[s.config.Hassio.Topics.Discovery+`/sensor/`+v.Vin+`/`+n+`/config`] = `{` + device + origin + topic + `"name":"Window ` + position + `","uniq_id":"` + v.Vin + n + `_status","obj_id":"` + obj_id_prefix + n + `_status","ic":"mdi:car-door","stat_t":"mysubarumq/` + v.Vin + `/windows/state","val_tpl":"{{value_json.` + n + `}}"}`
}
for n, t := range v.Tires {
// homeassistant/sensor/mysubaru/VIN-NUMBER-HERE/tire_frontleft_psi/config
position := t.Position + ` ` + t.SubPosition
hassioConfig[s.config.Hassio.Topics.Discovery+`/sensor/`+v.Vin+`/tire_`+n+`_psi/config`] = `{` + device + origin + topic + `"name":"Tire ` + position + ` (Psi)","uniq_id":"` + v.Vin + `_tire_` + n + `_psi","obj_id":"` + obj_id_prefix + `_tire_` + n + `_psi","ic":"mdi:car-tire-alert","stat_t":"mysubarumq/` + v.Vin + `/tires/state","val_tpl":"{{value_json.tire_` + n + `}}"}`
hassioConfig[s.config.Hassio.Topics.Discovery+`/sensor/`+v.Vin+`/`+n+`_psi/config`] = `{` + device + origin + topic + `"name":"Tire ` + position + ` (Psi)","uniq_id":"` + v.Vin + n + `_psi","obj_id":"` + obj_id_prefix + n + `_psi","ic":"mdi:car-tire-alert","stat_t":"mysubarumq/` + v.Vin + `/tires/state","val_tpl":"{{value_json.` + n + `}}"}`
}
topicState := `mysubarumq/` + v.Vin + `/ignition`