Cześć, przymierzam się do dodania integracji w AFE Firmware z Domoticz po MQTT.
Jako że nie jestem użytkownikiem Domoticz, to chciałbym skorzystam z mądrości tej grupy, żeby szybciej skumulować wiedzę.
Pytanie:
- czy Domoticz ma zintegrowany w sobie MQTT Broker?
- Jeśli tak, jaki jest do niego dostęp? Czy dostępny jest przez standardowe: IP, Port, User, Password jak w typowym MQTT Brokerze?
Hej @adrian bardzo dobre wieści , domoticz nie ma zintegrowanego brokera natomiast świetnie komunikuje się z Mosquitto za pomocą bramki LAN , czyli łączy się po IP z domyślnym portem 1883, więcej info w pigułce znajdziesz https://www.domoticz.com/wiki/MQTT
a konfiguracja bramki sprowadza się do kilku pól
ok, gitara, czyli potrzebuje zewnętrznego MQTT Brokera, to mi upraszcza. To do dzieła.
@isom, w Domoticz wpisuje się coś w Akcje w wirtualnym przełączniku, żeby zrobić włączyć, wyłączyć? tak jak w przypadku http wpisuje się tam cały URL do AFE z jego IP? czy to już leci wszystko w tle?
Kolejne pytanie, nigdzie nie znalazłem informacji, że Domoticz z MQTT obsługuje wiadomość LWT - zakłada więc, że nie obsługuje. Potwierdzacie?
dzięki
@adrian opisz w dwóch zdaniach jak realizujesz to w OH, tzn czy chodzi o powiadomienia kiedy moduł jest offline ? Czy to potwierdzenie wykonania akcji ? Czy może ostani stan czujnika/ przełącznika ? Ułatwi mi to odpowiedz na Twoje pytanie
- LWT to funkcjonalość MQTT Brokera.
- Jeśli MQTT Broker wykryje, że urządzenie rozłaczy się od MQTT Brokera to wysyła wiadomość o tym fakcie w "eter"
- W przypadku standardowego MQTT API w AFE lekko to rozbudowałem i
- urządzenie, gdy podłączy się wysyła wiadomość: connected
- a jak się rozłączy od MQTT Brokera, broker wysyła wiadomość: disconnected
- Odbiorycy tych wiadomości np. OH widzi kiedy i czy urządzenie podłączyło / rozłączyło się
https://afe.smartnydom.pl/pl/integracja-api/mqtt#temat-lwt-last-will-and-testament
Ok , jeżeli np dom/kuchnia/lampa/lwt
wysyła AFE to w domoticz można dodać wirtual sensor typu tekst i taka wiadomość będzie się aktualizowała czyli tekst zmieni się w zależności od sytuacji .
mozesz dokladniej wyjasnic? aktualizacja przelacznika tekstowego zamknie sie w obrebie tylko mqtt? na ten temat bedzie osobny idx na poziomie AFE?
- MQTT zadba o integrację / wymianę danych
- w Domoticz bedzie przełącznik ON/OFF - który bedzie informował, czy urządzenie jest podłączone / odłączone
- w AFE wprowdzi sie dodatkowy IDX dla tego przełącznika
ok, z dodatkowym IDX nie widze problemu 😀 , zaniepokoil mnie ten "virtualny sensor typu text"
A można by do tego dołożyć parametr {"RSSI":x}. Można by jeszcze w tabeli podglądać jak się połączyło jaka jakość sygnału. Gdzie X może mieć wartość od 0-12 czy tam 11. Ja myślę, że w celach informacyjnych lepszy jest tekst.
nie można bo domoticz takich nie czyta / interpretuje
moze wyjasnie, jak czytalem Wasza wczesniejsza dyskusje to, mozna bylo zrozumiec ze udostepnisz tylko "dom/kuchnia/lampa/lwt
" bez idx, i dlatego pytalem;), w sumie taka informacje rowniez daloby sie wyrzucic na domo w formie przelacznika, czy tez kafelka tekstowego, tylko imho trzeba by bylo pisac skrypt np w bashu, chyba ze @isom mial na to jakis inny pomysl
co do sondy 😎 , to przelacznik, mam dwa kafelki text , do uptime Maliny i Domoticza, wszystko fajnie do momentu az wysylam to na telefon, no poprostu idzie oslepnac 😆 , imho stan w zupelnosci wystarczy
w AFE z standardowym MQTT API wysyłane jest do MQTT Brokera
connected lub disconnected
na dowolnie zdefiniowany temat np dom/kuchnia/lampa/lwt do MQTT Brokera
W przypadku Domoticzm który IMHO jest "sztywny" jeśli chodzi o integrację, mogę wysłać wiadomość tylko na temat domoticz/in
wiadomość musi być w jednym z formatów zdefiniowanych tutaj https://www.domoticz.com/wiki/MQTT w rozdziale MQTT to Domoticz
mogę wysłać co chcecie i jak chcecie, ale tylko jedną wiadomość w domoticzowych formatach
W moim domoticzu w konfiguracja->urządzenia jest lista. Jak wykonam takom komendę
mosquitto_pub -h 10.0.0.1 -t domoticz/in -m '{"idx":36,"switchcmd":"Off","nvalue":0,"Battery":100,"RSSI":5}'
to otrzymuję wartość ja w załączniku. także to działa. Chociaż nie wiem może i to bez sensu.
Bo np. takie polecenie
mosquitto_pub -h 10.0.0.1 -t domoticz/in -m '{"idx":36,"command":"switchlight","switchcmd":"Off","nvalue":0,"Battery":100,"RSSI":5}'
już nie chce nic zmienić. Parametr Battery też działa. Pokazuje wartość w procentach.
ok, tak to m/w jest wysylane w Tasmocie "domoticz/in = {"idx":51,"nvalue":0,"svalue":"21.90;39.60;2","Battery":100,"RSSI":10}", a tak jak na obrazku interpretuje to domoticz
natomiast topic/LWT to calkiem inna para kaloszy, jezeli uda sie z danego urzadzenia wyslac na domo/in informarcje o LWT z jego IDX to bedzie swietnie...
i chyba jedna wiadomosc powiazana z jednym IDX...
ps. chyba sie zdublowalem z kolega 😉
mogę te dodatkowe parametry dodać też - nie są udokumentowane ale jak coś działa to dlaczego nie.