Szanowni,
Ponieważ miałem troszkę problemu z przepięciem urządzeń SUPLA z brokera natywnego SUPLA na MQTT rodem z HA, a większość komentujących mówiło “Supli nie mam, nie pomogę”, to pozwolę sobie opisać co i jak w końcu udało mi się zrobić. Może komuś się przyda.
Mamy dwa sposoby podłączenia Supla do HA: oba przez MQTT, ale pierwszy opiera się na brokerze wbudowanym w serwer Supla, drugi to Mosquitto Broker z HA. Oba działają dobrze, ale jeśli w HA używamy także innych niż SUPLA urządzeń obsługiwanych przez MQTT - broker SUPLA się nie przyda. I wtedy właśnie pojawia się kłopot by to przełączyć…
Zacznijmy jednak od początku, sposób pierwszy, łatwiejszy - broker SUPLA.
-
Musisz mieć konto na serwerach SUPLA (cloud.supla.org), ale to oczywiste jeśli używasz ich sprzętu.
-
Po zalogowaniu się na serwery supla wybierasz w menu Konto->integracje, ostatnia zakładka Broker MQTT
-
Klikasz “włącz” i kopiujesz wygenerowane informacje, czyli serwer (host), nazwę użytkownika i hasło brokera. Uwaga, hasło skopiuj i zapisz od razu, potem nie da się go już odczytać, możesz tylko wygenerować nowe. Tyle w SUPLA.
-
W HA w configuration.yaml dodajesz następujący wpis:
mqtt:
broker: TU_ADRES_SERWERA SUPLA
port: 8883
certificate: auto
username: ID SKOPIOWANE Z SUPLA
password: HASŁO SKOPIOWANE Z SUPLA
discovery: true
- Zapisujesz, restartujesz HA, działa. W panelu integracje pojawi Ci się integracja MQTT opisana jako configuration.yaml, w niej twoje urządzenia i przypisane im encje.
A teraz co, jeśli trzeba zmienić to na broker z HA (lub od razu chcesz to u siebie), czyli sposób 2.
- Jeśli masz w HA podłączenie z brokerem SUPLA opisane powyżej - usuń wpis w configuration.yaml i usuń integracje z panelu integracji, który tym wpisem utworzyłeś. Samo usunięcie wpisu w configuration nie wystarczy. Zrestartuj HA.
1a. jeśli nie masz połączenia i od razu robisz to na Mosquitto - wykonaj punkty 1-3 z pierwszego sposobu.
-
Uruchom w HA supervisora i w sklepie z dodatkami wyszukaj i zainstaluj Mosquitto Broker.
-
Zanim uruchomisz po zainstalowaniu dodatku przejdź do konfiguracji.
-
w username wpisz sobie jakiegoś użytkownika. Chyba nie ma znaczenia co tu wpisujemy
-
W password: podobnie, jakieś hasło.
-
Dopisz do konfiguracji:
customize:
active: true
folder: mosquitto
To ważne, bo tylko dzięki temu mosquitto przeczyta nasze wpisy z supli. Zapisz konfigurację.
- Teraz trzeba stworzyć właściwy katalog i plik konfigurujący most między SUPLA a mosquitto. Jak ktoś zna unixa, to zapewne wejdzie sobie w terminal SSH (też go trzeba zainstalować jako dodatek w Supervisorze) i komendą:
mkdir -p /root/share/mosquitto
założy katalog a potem założy w nim plik bridge.conf (nano bridge.conf) i wpisze do niego:
connection bridge-COŚ_TU_WPISZ (8-16 przypadkowych znaków, to będzie supertajny identyfikator połączenia)
address TU_ADRES_SUPLI_TAKI JAK_POPRZEDNIO:8883
topic supla/# in
topic homeassistant/# in
topic supla/+/devices/+/channels/+/execute_action out
topic supla/+/devices/+/channels/+/set/+ out
remote_username UŻYTKOWNIK_PRZEPISANY Z SUPLI
remote_password HASŁO_PRZEPISANE Z SUPLI
bridge_capath /etc/ssl/certs
Ja zrobiłem to bardziej leniwie i za pomocą SAMBY (także jako dodatek w Supervisorze) połączyłem się z Windowsa do serwera HA i w katalogu share założyłem prześliczny katalog mosquitto (taki jak w konfiguracji mosquitto brokera dodaliśmy w sekcji customize), oraz zwykłym notatnikiem utworzyłem w nim plik bridge.conf z zawartością jak powyżej.
Zapisuję plik (trzeba uważać na nazwę, notatnik windows ma tendencję do dodawania od siebie rozszerzenia .txt, trzeba je usunąć. Ma być bridge.conf
Teraz można uruchamiać lub zrestartować jeśli już działa Mosquitto Brokera. JA po tym jeszcze zrestartowałem HA, ale nie jestem pewien, czy potrzeba. Jeśli się nie pomyliliśmy, jeśli mamy usuniętą do spodu poprzednią integrację - SUPLA znowu zaczyna działać, urządzenia i encje mają te same nazwy, integracje działają, my się cieszymy. Jeśli ktoś nad tym pracował tak jak ja dłużej, może wykrzyknąć: “Mam Cię k… chu…!!!” Pomaga, sprawdziłem.
W sumie tyle.Tekst sformatowany