Profil użytkownika
posty użytkownika | ||||
|
||||
majkels
|
wrzucam to co mi się udało na razie poskładać:
public double GetTempPodloga() { return (Int16)(aStatus[17] << 8 | aStatus[16]) / 10.0; } public double GetTempWew() { return (Int16)(aStatus[19] << 8 | aStatus[18]) / 10.0; } public double GetTempZadanaWew() { return (Int16)(aStatus[58] << 8 | aStatus[57]) / 10.0; } public double GetTempObnizonaWew() { return (Int16)(aStatus[56] << 8 | aStatus[55]) / 10.0; } public double GetTempZew() { return (Int16)(aStatus[21] << 8 | aStatus[20]) / 10.0; } public double GetTempCWU() { return (Int16)(aStatus[23] << 8 | aStatus[22]) / 10.0; } public int GetZadanaCWU() { return aStatus[38]; } public int GetObnizonaCWU() { return aStatus[60]; } public double GetTempPowrot() { return (Int16)(aStatus[25] << 8 | aStatus[24]) / 10.0; } public double GetTempPodajnik() { return (Int16)(aStatus[27] << 8 | aStatus[26]) / 10.0; } public double GetTempCO() { return (Int16)(aStatus[29] << 8 | aStatus[28]) / 10.0; } public int GetZadanaCO() { return aStatus[37]; } public int GetObnizonaCO() { return aStatus[59]; } public double GetTempSpaliny() { return (Int16)(aStatus[31] << 8 | aStatus[30]) / 10.0; } public int GetDmuchawa() { return ((aStatus[32] & (1 << 0)) >> 0); } public int GetMocDmuchawy() { return aStatus[39]; } //zakres 0-100 % public int GetPodajnik() { return ((aStatus[32] & (1 << 1)) >> 1); } public int GetPompaCO() { return ((aStatus[32] & (1 << 2)) >> 2); } public int GetPompaCWU() { return ((aStatus[32] & (1 << 3)) >> 3); } public int GetPompaMieszajaca() { return ((aStatus[32] & (1 << 4)) >> 4); } public int GetTrybAuto() { return ((aStatus[34] & (1 << 0)) >> 0); } public int GetCzasPodajnika() { return (Int16)(aStatus[65] << 8 | aStatus[64]); } //czas w sekundach public double GetTempPodlogowkaDzien() { return (Int16)(aStatus[79] << 8 | aStatus[78]) / 10.0; } public double GetTempPodlogowkaNoc() { return (Int16)(aStatus[81] << 8 | aStatus[80]) / 10.0; } Jeśli macie coś więcej - wrzucajcie. pozdrawiam, Michał |
|||
|
||||
majkels
|
adkwapniewski napisał » 2015-01-05 15:59 rozgrzeb sobie updater masz tam ecoalbase.dll ze wszystkim ... grzebię, grzebię i nigdzie nie widzę ani DLLa, ani opisu komunikacji. Jeśli możesz wrzuć gdzieś na sieć. dzięki, Michał |
|||
|
||||
majkels
|
DarekB napisał » 2014-02-28 16:17 mateuszm napisał » 2014-02-27 11:51 A co z możliwością połączenia przez esterownik? Nie wiem czy można takie rzeczy robić ale dodałem do tej biblioteki parę linii kodu i zrobiłem możliwość łączenia się ze sterownikiem przez platformę esterownik. Można też skrypt wywołać z linii komend podając id sterownika, opcjonalnie można podać login i hasło żeby połączyć się w trybie do odczyt - zapis. skrypt do pobrania z https://drive.google.com/file/d/0B1rjRhAXEGUoN3hTV2xHWXFpaGs/edit?usp=sharing cześć, próbuję zrobić port tej biblioteki do C# i nie mogę rozgryźć logowania do platformy e-sterownik. Dla urządzeń publicznych - ładnie pobiera mi się status. Dla mojego kotła, dostaję error 400 - bad request - wynikający z braku zalogowania. Grzebię w tym kodzie już parę godzin i nie kumam w jaki sposób przekazac login i hasło. Czy ktoś może mi to trochę przybliżyć? pozdrawiam, Michał ------------------------------------- aktualizacja: 14:30 w końcu skumałem gdyby ktoś potrzebował wiedzieć: żeby dostać się do urządzenia przez esterownik.pl trzeba 1. zalogować się do platformy post na https://esterownik.pl/?p=get_modal z 4 parametrami: values["cmd"] = "do_login"; values["login"] = sUser; values["password"] = sPassword; values["redirect"] = ""; 2. z powstałej odpowiedzi pobrać cookie o nazwie PHPSESSID 3. przekazać to session id w parametrze POST o nazwie sessid na adres https://device.esterownik.pl/device/{device_id}/ zwrotnie powinien ustawić się cookie z id sesji dla tego połączenia 4. i wtedy można odczytać status urządzenia https://device.esterownik.pl/device/{device_id}/?com=02010006000000006103 p.s. czy jest dostępna dokumentacja poszczególnych liczb zwracanych w statusie? |