![]() |
Własny interfejs dla LAN kontrolera - 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ł: LanKontroler - wersje oprogramowania (https://forum.tinycontrol.pl/forumdisplay.php?fid=4) +---- Dział: Przykłady zastosowań przez użytkowników. (https://forum.tinycontrol.pl/forumdisplay.php?fid=6) +---- Wątek: Własny interfejs dla LAN kontrolera (/showthread.php?tid=390) |
Własny interfejs dla LAN kontrolera - pzdunek - 02-16-2014 Witam, Chciałbym stworzyć stronę www do sterowania domem, którą umieściłbym na serwerze z własną domeną itd. Byłyby tam przyciski, schemat sieci CO i odczyty temperatur. Do przycisków chciałbym przyporządkować obsługę onclick z wysłaniem odwołania CGI pod adres LAN kontrolera a do odczytów ładować plik xml, odpowiednio obrabiać dane i td, tak jak to robi oryginalne GUI Problem jest tylko taki że odwołania ze strony wychodzą z przeglądarki mając Origin z domeny tej strony. Ze względów bezpieczeństwa, takie odwołania są zablokowane i daje to błąd "Origin http:// is not allowed by Access-Control-Allow-Origin". Próbowałem CORS ale LAN Kontroler tego nie obsługuje. Czy znacie inną sprytniejszą metodę by to zrobić, jestem początkujący jeśli chodzi o html/AJAX ale myślę że dałbym radę po naprowadzeniu ![]() Z góry wielkie dzięki! Piotrek Re: Własny interfejs dla LAN kontrolera - mrcnpdlk - 02-26-2014 Może po SNMP się uda. Re: Własny interfejs dla LAN kontrolera - tomekO - 03-05-2014 hmm. SNMP. raczej do odczytu, czy twoja strona może wysyłac polecenia np (nie dokladnie) : jak klikniesz w ikone zmień stan przekaźnika to jest wykonywany link w postaci : ("Http://admin:admin@" & IpLankontrolera & "/outs.cgi?out=0" zmieni stan przekaźnika na przeciwny np procedura zmiany stanu przekaxnika w Visual Basic (2012) : Private Sub btnOut0_Click(sender As Object, e As EventArgs) Handles btnOut0.Click Dim request As WebRequest = WebRequest.Create("Http://admin:admin@" & IpLankontrolera & "/outs.cgi?out=0") request.Method = "POST" Dim dataStream As Stream = request.GetRequestStream() dataStream.Close() Dim response As WebResponse = request.GetResponse() Console.WriteLine(CType(response, HttpWebResponse).StatusDescription) dataStream = response.GetResponseStream() Dim reader As New StreamReader(dataStream) Dim responseFromServer As String = reader.ReadToEnd() ' Display the content. Console.WriteLine(responseFromServer) If responseFromServer = "1" Then btnOut0.BackColor = Color.Red / btnOut0 - to button/ lblOut0.Text = " Wyłączony" / lbl osnaczam zawsze jako przedrostek do label/ Else btnOut0.BackColor = Color.Green lblOut0.Text = " Załączony" End If ' Clean up the streams. reader.Close() dataStream.Close() response.Close() End Sub Re: Własny interfejs dla LAN kontrolera - pzdunek - 03-10-2014 Ten problem juz rozwiazalem. Napisalem proste proxy w php. Cale GUI jest po prostu strona www na serwerze a komendy sa wysylane poprzez wywolanie pliku php z parametrem. Dziala to calkiem niezle ![]() Teraz walcze z inna rzecza, tj jak za pomoca php wyslac HTTP POST ze stringiem ustawiajacym eventy. Chodzi o to by LAN Kontroler przeksztalcic w termostat z ustawiana przez internet temperatura. sprawa niby jest prosta, ale mam problem z takim uszyciem HTTP POST by LAN Kontroler wpisal sobie dane tak, by byly potem zmienione w s.xml. Jakies sugestie? ![]() Pozdrawiam Piotrek Re: Własny interfejs dla LAN kontrolera - tomekO - 03-10-2014 według naszej wiedzy ( mojej) raczej nie realne. okienka sa w ajaxie, i pobieraja dane z okienka . html nie ma nic do tego. ( chyba że sie mylę> ale na spotkaniach grupy padały rtakie pyrtanie i taka była odpowiedz. Re: Własny interfejs dla LAN kontrolera - pzdunek - 03-25-2014 Dzięki za odpowiedź! Stąd sugestia by np wystawić progi zadziałania eventów tak, by można było je zmieniać wywołując CGI albo ustawiając obiekt w SNMP. W ten sposób można byłoby prosto implementować funkcje takie jak różne termostaty i inne i ustawiać je zdalnie. |