MQTT - PHP - Wersja do druku +- Forum Tiny Control Solution (https://forum.tinycontrol.pl) +-- Dział: LanKontroler - sprzęt i wersje wsadów, problemy, zastosowanie (https://forum.tinycontrol.pl/forumdisplay.php?fid=3) +--- Dział: Programy i Serwery (https://forum.tinycontrol.pl/forumdisplay.php?fid=13) +--- Wątek: MQTT - PHP (/showthread.php?tid=2919) |
MQTT - PHP - stAch - 01-08-2024 witam... potrzebuje pomocy w ogarnięciu tematu spięcia wysyłania na mqtt danych poprzez phpa. na serwerze pracuje https://github.com/bluerhinos/phpMQTT pytania... poniższy kod teoretycznie ma publikować client_id czy to prefix? z ustawień. jak powinien wyglądać prefix i składnia dla zmiennej publish? chciałbym poprzez php pobrać dane z jsona zewnętrznego urządzenia i przesłać je do mqtt jako zmienne m1-m20, bo jak na razie nie ma szansy na doczekanie się na taką obsługę bezpośrednio w LK później mqtt serwer wykona stosowne działania na podstawie tych zmiennych Kod PHP: <?php RE: MQTT - PHP - wilkxt - 01-09-2024 Co, skąd i gdzie chcesz wysyłąc? RE: MQTT - PHP - stAch - 01-09-2024 (01-09-2024, 10:45 AM)wilkxt napisał(a): Co, skąd i gdzie chcesz wysyłąc? dane json z magazynu energii na serwer mqtt.ats.pl jako zmienne m1-->m30 poniżej przykładowy kod odpowiedzi z luny2k który wypluwa mbtranslator bo tam w nowych huawei wszystko po zmodyfikowanym can'ie gada z sobą ale już rozpracowane. z modbusa można tylko pogadać trochę z falownikiem.. ale dane nie idą w czasie rzeczywistym, tylko to co dongl przetwarza i wysyła na serwer www a tutaj jest realtime Kod: {"tblDTSU":[{"em_Type":"DTSU666","em_RdTime":"11:58:15","em_Status":"OK","em_Queries":"479759","em_TotErr":"42","em_%ErrRate":"0.009","em_LastErr":"0","em_Uab":"411.300","em_Ubc":"408.500","em_Uca":"413.700","em_Ua":"240.500","em_Ub":"234.500","em_Uc":"237.200","em_Ia":"0.786","em_Ib":"0.384","em_Ic":"0.612","em_Pt":"13.300","em_Pa":"7.500","em_Pb":"-68.800","em_Pc":"74.600","em_Qt":"-315.000","em_Qa":"-173.300","em_Qb":"-42.000","em_Qc":"-99.600","em_PFt":"0.031","em_PFa":"0.039","em_PFb":"-0.768","em_PFc":"0.516","em_Freq":"50.010","em_ImpEp":"174.540","em_ExpEp":"19.810","em_Q1Eq":"0.220","em_Q2Eq":"0.230","em_Q3Eq":"23.790","em_Q4Eq":"123.500","em_CT":"1.000"}]} pełny json poniżej Kod: {"info":{"hst":"mbtranslator.local","myip":"192.168.xxx.xxx","pvsno":"01FF01AF","pvver":"1.05","pvmmi":"36880","pvme":"72508","pvrst":"1","pvstrt":"2024-01-09 00:01:14","pvrnt":"19731d 11:58:21"},"data":{"tblDTSU":[{"em_Type":"DTSU666","em_RdTime":"11:59:35","em_Status":"OK","em_Queries":"479904","em_TotErr":"42","em_%ErrRate":"0.009","em_LastErr":"0","em_Uab":"409.400","em_Ubc":"406.800","em_Uca":"413.700","em_Ua":"240.400","em_Ub":"232.400","em_Uc":"237.400","em_Ia":"0.758","em_Ib":"0.381","em_Ic":"0.616","em_Pt":"-5.700","em_Pa":"-9.300","em_Pb":"-69.200","em_Pc":"72.700","em_Qt":"-309.400","em_Qa":"-169.000","em_Qb":"-40.400","em_Qc":"-100.000","em_PFt":"-0.013","em_PFa":"-0.050","em_PFb":"-0.786","em_PFc":"0.499","em_Freq":"50.020","em_ImpEp":"174.540","em_ExpEp":"19.810","em_Q1Eq":"0.220","em_Q2Eq":"0.230","em_Q3Eq":"23.790","em_Q4Eq":"123.510","em_CT":"1.000"}]}} RE: MQTT - PHP - stAch - 01-11-2024 ewentualnie zamiast kombinować po stronie php z klientem mqtt może dodać opcje update bazy danych na serwerze mqtt.ats.pl z url co będzie programowo prostszym zabiegiem dla użytkownika. przy dłubaniu w kodzie serwera mqtt wprowadziłbym ciekawe rozwiązanie polegające na usłudze sms poprzez moduł GSM na wybranym temacie analogicznie do wysyłania maila. RE: MQTT - PHP - tonymony - 01-12-2024 Co do kodu php to ponizej fragment z paroma komentarzami (samo wysylanie ): Kod PHP: <?php Odnosnie aktualizacji bazy danych z url na mqtt.ats.pl, co masz na mysli? RE: MQTT - PHP - stAch - 01-12-2024 (01-12-2024, 12:37 PM)tonymony napisał(a): Co do kodu php to ponizej fragment z paroma komentarzami (samo wysylanie ): thx będę testował kod... teoretycznie widzę już dlaczego nie szło nic odnośnie update by url... przypuśćmy ze mamy urządzenie jakieś, które zbiera nam dane np stacja meteo, licznik energi etc Jeśli nie ma ona obsługi mqtt lub nawet jeśli ma ciut inaczej niż lk3 to trzeba się nakombinować jak to sprzęgnąć z LK - najprościej było by przesłać takie dane przez url (np. mqtt.ats.pl/api/user/password/prefix/update?temat1=234&temat2=345&itd.. ) na serwer mqtt a na nim wykonać odpowiednie operacje na LK3 za maskaradą takim oto sposobem można by dodawać do bazy mqtt dane z dowolnych urządzeń można by to rozwiązać jeszcze prościej z poziomu LK3 który odczytywał by jsona z takiego urządzenia np stacji meteo i podpinał je jako zmienne m1-->m30 a zebrane dane wysyłał na serwer Mqtt ale trzeba sobie radzić na tym co mamy obecnie. mając na linii speca od mqtt .. czy można jakoś wysłać na lk przez mqtt polecenie AT+ do modemu gsm? pozdr... |