Hmmm, czyżbyś zamierzał oficjalnie dodać Exta Life do HA nice
Dobrze kombinujesz
Jako, że żaden śmiałek jeszcze się nie znalazł (i chyba się nie znajdzie, mimo rzekomej "kultowości" produktów Zamela
) to tak jak rok temu - postanowiłem zakasać rękawy i wgryźć się zębami w temat integracji z HA jeszcze bardziej na zasadzie natywnego komponentu (czyli bez skryptów, MQTT itp). Jestem na samym początku tej drogi i jeszcze nie wiem dokąd mnie to zaprowadzi i czy się uda, ale podwaliny już powstają
Po raz kolejny idea open-source jawi się jako objawienie i doskonały pomysł na budowanie kolejnych rozwiązań w oparciu o czyjąś pracę (tak czasem myślę, że bez open source IT byłoby teraz w zupełnie innym miejscu, a tak szybki rozwój technologii nie byłby możliwy). Chodzi o to, że w HA zarówno jego źródła jak i źródła integracji oraz bibliotek, które te integracje wykorzystują są jawne i ogólnie dostępne. I wpadł mi do głowy pomysł (w sumie trochę z zazdrości, że supla ma już natywne wsparcie HA). Postanowiłem wziąć na warsztat kod integracji supli. I okazuje się, że nie ma tego zbyt dużo!
Supla z racji działania w oparciu o HTTP ma lepiej zrobione API, tzn łatwiejsze do wykorzystania niż zabawa w socket TCP Exty Life, który wymaga do poprawnego działania sztuczek. Te sztuczki są właśnie obecnie największą do pokonania dla mnie przeszkodą, bo jeszcze nie bardzo wiem jak w środowisku HA je zrealizować. Chodzi o konieczność podtrzymywania połączenia z EFC-01 pingując go co 10 sekund. Niby proste, ale jak ma działać razem z HA nie powodując jakiś zaburzeń jego działania to już trzeba wiedzieć trochę więcej. Ale jestem dobrej myśli, że się uda
Kod, który na razie powstaje podoba mi się o wiele bardziej niż to co pisałem rok temu w pakiecie integracyjnym. Trochę się dzięki temu nauczyłem. Cała integracja będzie koncepcyjnie zbliżona do tej suplowej, ponieważ odnalazłem trochę podobieństw między Exta Life a supla (np. idea kanałów). Będzie więcej zabawy i tłumaczenia koślawego JSONa z Exty Life na prawdziwego, pełnoprawnego JSONa, ale to nie jest problemem.
Czy będzie z tego kiedyś oficjalna integracja w HA? Nie wykluczam, choć to niestety wymaga dodatkowych nakładów czasu i pracy, ponieważ w HA proces produkcji oprogramowania jest zrealizowany na prawdę profesjonalnie (a przede wszystkim istnieje, w co w przypadku Zamela śmię wątpić po tylu różnych wpadkach i sposobie organizacji oprogramowania). To oznacza oprogramowanie automatycznych testów kodu (a na razie kompletnie nie mam pojęcia o narzędziach, których używają) i udokumentowania tego. Droga się wydłuża, ale nie oznacza to, że nie można będzie korzystać w ogóle z efektów mojej pracy. Otóż HA posiada koncepcję tzw. custom components - ta sama architektura co natywna integracja, tyle, że nie wymaga włączenia źródeł do oficjalnej "dystrybucji" HA. Ot tak jakbyśmy instalowali sobie własny plugin. Kopiujemy kilka plików z kodem do folderu HA i działa.
Na razie nie zapeszam, ale mam duże nadzieje, że się uda
Zobacz kolego to
https://smartnie.pl/domoticz/ropam-neogsm-ip-domoticz-api-i-inne-takie-tam/
myślę że tobie sporo to powie
Noo, to jest nadzieja. Szkoda, że autor nie udostępnia źródeł swojego rozwiązania, bo to pozwoliłoby na zbudowanie integracji z pominięciem jego biblioteki i programu, który pełni podobną rolę do moich programów ze skryptu. Z drugiej strony takie podejście na pewno ułatwia zbudowanie integracji z wykorzystaniem jego biblioteki dzięki wygonemu RestAPI (chociaż trochę niefortunny moim zdaniem wybór .NET jako środowiska dla programu)
Działaj w temacie i powodzenia
Wygląda, że doczekasz się prawdziwego smart home dzięki tym klockom i za Exta Free tęsknił nie będziesz