Integruje właśnie moje 26 urządzeń (w sumie 55 kanałów) do których wgrałem różnymi sposobami oprogramowanie SUPLA (już jakiś czas temu ale to inna długa historia).
Uruchomiłem pośrednika na dockerze w postacji programu Supla-mqtt-client i teraz próbuje stworzyć odpowiednie wpisy w pliku configuration.yaml tak by obsłużyć wszystkie kanały z serwera SUPLA.
Oto co udało mi się metodą prób i wielu błędów sprawić by pokazywało poprawny stan i można było wysyłać komendy.
Przykład konfiguracja dla light:
- platform: mqtt
name: 'Listwa LED kinowy test1'
schema: template
state_topic: 'supla/channels/status/relay/13239'
state_template: '{{ "on" if value_json.on else "off" }}'
command_topic: 'supla/channels/command/13239'
command_on_template: '{ "idx": 13239, "on": true }'
command_off_template: '{ "idx": 13239, "on": false }'
qos: 1
retain: true
optimistic: false
Niestety nie wiem jak do takiej konfiguracji władować jeszcze stan dostępności z podanego payload:
{“id”: 13239, “caption”: “LED kinowy”, “on”: 1, “online”: 1}
tag “online” przyjmuje wartości 1 lub 0
Próbowałem z availabilty_template ale nie jest on akceptowany.
Niestety supla-mqtt-client nie działa jak Tasmota więc nie można się wzorować na nim, gdyż tu dostępność i stan kanału jest w jednym topicu - nie ma osobnego tematu dla availabilty.