Stránka 2 z 13

Re: Wifi zásuvka

Napsal: 24 dub 2020, 08:00
od Kony
Ee nad tim hlavnim arduinu jsem jen premyslel, ale nyni to mam zvlast, kazde rele ma vlastni ip....

nyní jsem to udělal takto :

http://xxxxxxxx/ovladani.php?vypinacOFF1.html - kde rele vypne v souboru vypinacOFF1.html je presmerovani na web relatka http://yyyyyy/OFF

nejsem primo u toho rele, tak musim zjistit jestli to takto funguje

Re: Wifi zásuvka

Napsal: 24 dub 2020, 08:38
od KamilV
Kony píše:
24 dub 2020, 07:08
tak se mi samozrejme presmeruje stranka na toto rele a zustane tam. Takze premyslim jak z me php stranky odeslat jen request, ale aby se nepresmerovavala na rele
Když to nutně chceš takto, tak ten request udělej ajaxem a stránku neopouštěj.

Re: Wifi zásuvka

Napsal: 24 dub 2020, 16:18
od Kony
KamilV píše:
23 dub 2020, 23:17
On hlavně ten článek předpokládá, že je relátko připojeno k tomu Arduinu, na kterém běží server. Stavy potom mění na základě requestu.

Ty ale řešíš jinou situaci. Chceš několik klientů od sebe vzdálených, každý u sebe má své relátko.
Klient si pošle na server GET request s dotazem, v jakém stavu má být jen a pouze to jeho relátko. V response mu příjde třeba jen 0 nebo 1 a podle toho změní / nezmění svůj stav.

Ten server může být z Arduina (ale stavy by asi měl udržovat v EEPROM), nebo třeba RPi, kde už rozběhneš i databázi a snadněji uděláš na to ovládání pěkné GUI.
Pořád přemýšlím jak udělat ten GET REQUEST, abych na svých stránkách jen poslal zmáčkl na tlačítko a aby mě odešel požadavek na rele na sepnutí, ale aby se mi to nepřesměrovalo...

Nyni to mám takto
<td align="center"><p><a href="http://xxx.eu/vypinac1.html?request=aaa ... 0/ON"><img src="http://xxx.eu/images/svetlo.jpg" width="130" height="130" alt=""/></a></p>
Ale to mě přesměruje

Re: Wifi zásuvka

Napsal: 24 dub 2020, 16:49
od Kony
obsah souboru vypinac1.html

Kód: Vybrat vše

<meta http-equiv="refresh" content="0;url=http://aaa.bbb.ccc.ddd:1080/ON">
a nebo by možná stačilo aby při přihlášení na stránky RELE, se automaticky přesměrovalo zpět...
To jsem taky zkoušel , ale nechce to brát Arduino IDE

Když zkusím v IDE do kodu zadat

Kód: Vybrat vše

 client.print("<meta http-equiv="refresh" content="0;url=http://seznam.cz">");
Tak mi to hodí chybu
wifi_z_suvka:86:34: error: expected ')' before 'refresh'

wifi_z_suvka:86:54: error: 'url' was not declared in this scope

wifi_z_suvka:86:58: error: 'http' was not declared in this scope

wifi_z_suvka:86:62: error: expected ';' before ':' token

exit status 1
expected ')' before 'refresh'

Re: Wifi zásuvka

Napsal: 24 dub 2020, 17:23
od Kony
Tak zase mi to nejde editovat....

Už to běží to přesměrování

Kód: Vybrat vše

 client.println("<meta http-equiv=\"refresh\" content=\"0;url=http://xxxx.eu/ovladani.php\">");

Re: Wifi zásuvka

Napsal: 24 dub 2020, 18:21
od Kony
pavel1tu píše:
23 dub 2020, 20:41
To jak ti to zamrzne, je na žádku

Kód: Vybrat vše

 while (!client.available()) {
 delay(1); 
nebo hned za tím, nemám na čem otestovat
Tak me to po chvilce zamrzne a vubec nemam tuseni, kde hledat chybu... funguje funguje a zniceho nic zamrznuti... ted jsem nechal schvalne svitit nejakou dobu a uz to neslo vypnout...

Delay jsem zkousel menit, ale tim to neni

Re: Wifi zásuvka

Napsal: 24 dub 2020, 19:11
od kiRRow
Ona tam chyba není. Funguje to naprosto správně. Má to zacyklovat donekonečna program pokud klient nebude availeble. A přesně to to dělá.

Re: Wifi zásuvka

Napsal: 24 dub 2020, 19:17
od Kony
Ale proc se to tak zasekne ??? Kde tedy muze byt problem ? Nebo spis cim to tedy muze byt ?

Re: Wifi zásuvka

Napsal: 24 dub 2020, 19:30
od kiRRow
Každé spojení na http server je omezeno časově. Potom je uzavřeno, aby i ostatní uživatelé měli možnost se na server připojit. V momentě kdy se toto spojení uzavře, přestane být client.availeble a program začne běhat dokola. Buď zrušíš ten cyklus, nebo budeš udržovat spojení zasíláním prázdných požadavků podobně jako u slowloris utoku.

Re: Wifi zásuvka

Napsal: 24 dub 2020, 19:47
od Kony
Aha, tak to nemam tuseni co to znamena.... mohl by si mi to trosku vysvetlit ???

Co presne to znamena a jak opravit