❗️Toto je původní verze internetového fóra ISPforum.cz do února 2020 bez možnosti registrace nových uživatelů. Aktivní verzi fóra naleznete na adrese https://telekomunikace.cz
Návod - Měření teploty na Mikrotiku
Re: Návod - Měření teploty na Mikrotiku
jo tak použít třeba tunel aby server měl přístup. Ale to už je každýho věc.
0 x
velká smůla 
ani VPN nejde použít? co použít fetch kterej bude dotazovat stránku s tim že jí mkčko pošle v getu tu teplotu? hmm asi zase narazíš na to že to nejde v mkčku ze seriaku vyčíst... co takhle nasimulovat tim mikroprocesorem APCčkovou UPSku a doplňovat teplotu tam a odtud už se dá pohodlě vyčítat?
bych to udělal ale nechci přestat makat a s4i.

ani VPN nejde použít? co použít fetch kterej bude dotazovat stránku s tim že jí mkčko pošle v getu tu teplotu? hmm asi zase narazíš na to že to nejde v mkčku ze seriaku vyčíst... co takhle nasimulovat tim mikroprocesorem APCčkovou UPSku a doplňovat teplotu tam a odtud už se dá pohodlě vyčítat?

bych to udělal ale nechci přestat makat a s4i.
0 x
- lwq
- Příspěvky: 1659
- Registrován: 19 years ago
- antispam: Ano
- Bydliště: MistyMountain
- Kontaktovat uživatele:
To co umi MK vzhledem k seriaku je dost polovicaty, tedy jako ledacos v RouterOS ... HTTP GET ledas kde pouzivam a je to super metoda, ale zde nejde pouzit protoze Lua v ROS neumi co by bylo treba a porad to umiralo na ruznych escape ci spec. znacich ... Jako zdroj dat sem pouzil ten remote-access zpusob ... 

0 x
zkusím ten SW, vypadá hezky. jen bych ještě uvítal jestli by to mohlo něco generovat třeba nějaký malinký graf pro úvod na webové stránce
0 x
prave jsem resil teplomer na mikrotiku pro hlidani serverovny ... idea je takova ze staci jednou za pulhodinu checknout teplotu v servrovne jestli se neposrala klimatizace
tento problem uz jednou nastal
koupil jsem desky od papoucha http://www.papouch.com/cz/shop/product/ ... -mikrotik/
a poresil to nasledujicim skriptem (ros v 5.24 deska rb411 bez wifi):
#usage: /import teplomer.rsc
#teplomer papouch script for unit tm-mikrotik2 by p1
/system console set 0 disabled=yes
/port set 0 baud-rate=9600
/port remote-access add allowed-addresses=0.0.0.0/0 channel=0 disabled=no log-file="teplota.txt" port=serial0 tcp-port=65500
/system script add name=teplomer policy=ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api source=":local obsah\r\
\n:local webserver 192.168.1.1\r\
\n:local teplo\r\
\n:local teplota\r\
\n/port remote-access set 0 disabled=yes\r\
\n:set obsah [/file get teplota.txt contents]\r\
\ndelay 2\r\
\n:set teplo [:pick \$obsah 0 [:find \$obsah \";\" 0]]\r\
\n:set teplota [:pick \$obsah 1 [:find \$obsah \"C\" 0]]\r\
\n:log warning (\$teplota)\r\
\n/file remove teplota.txt\r\
\ndelay 2\r\
\n/port remote-access set 0 disabled=no\r\
\n:if (\$teplota<15) do={/tool fetch mode=http address=$webserver dst-path=teplota.tmp src-path=\"cgi-bin/smsgate.php\?msgtxt=SERVEROVNA_ZIMA_\$teplo\"}\r\
\n:if (\$teplota>25) do={/tool fetch mode=http address=$webserver dst-path=teplota.tmp src-path=\"cgi-bin/smsgate.php\?msgtxt=SERVEROVNA_TEPLO_\$teplo\"}\r\
\n/file remove teplota.tmp"
/system scheduler add disabled=no interval=30m name=teplomer on-event=teplomer policy=ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api
pokud to chcete jako teplomer online tak si to upravte nasledovne:
radky s :if smazte a misto nich tam dejte natvrdo:
/tool fetch mode=http address=$webserver dst-path=teplota.tmp src-path=\"cgi-bin/onlineteplomer.php\?teplota=$teplo
a jestli chcete teplotu z nejakeho duvodu aktualizovat casteji tak nastavte
/system scheduler .... interval=5m ....
hotovo ...
+pripada mi to rozumejsi nez posilat neco nekam pres FTP = fuj, takova prasecina protokol kterej posila nezasifrovana hesla
tak jak je to v oficialnim navodu ...
+onlineteplomer.php by mel obsahovat test, z jake adresy data prisla (ja vim, je to paranoidni ale radsi ...), check dat ktere prisla v $_GET['teplota'], check jestli jsou data validni! tj +023.1C a podobne (reg vyraz),
dale doporucuji otestovat jestli je prvni znak + a pokud ano tak substr od druheho znaku po strlen-1 pokud je tam minus tak od prvniho znaku po strlen-1,
no a muzeme vesele provest INSERT INTO ... a je to v suchu bez nejakych jmen a hesel a je to vsechno na jedne webove strance jenom pomoci PHPcka
-kdo potrebuje posilat aktualni posledni teplotu tak necht si dopise jeste posun v souboru o par findu dal na posledni radek
jsem prilis liny na to se s tim hrat predevsim protoze se teplota v mistnosti meni pomalu, jestli budu mit cas tak to jeste prepisu
+doufam ze se najde nejake jelito co to bude mastit pres FTP a bude instalovat buhvico kvuli takove kravine
webovy server s PHP je dostatecne silny nastroj aby to v nem slo udelat bez nutnosti tam valit nejake dalsi kraviny, pokud nekdo ma apache s pearlem a dela v perlu tak napise vlastne uplne to same jenom pouzije pearl script - where is difference? 
+neni treba aby mikrotik byl dostupny na verejne adrese, mikrotik odesila ukoristene data na server - z toho vyplyva ze mikrotik muze byt klidne za NATem bez verejne adresy vzhledem k serveru kam to bude posilat ...

koupil jsem desky od papoucha http://www.papouch.com/cz/shop/product/ ... -mikrotik/
a poresil to nasledujicim skriptem (ros v 5.24 deska rb411 bez wifi):
#usage: /import teplomer.rsc
#teplomer papouch script for unit tm-mikrotik2 by p1
/system console set 0 disabled=yes
/port set 0 baud-rate=9600
/port remote-access add allowed-addresses=0.0.0.0/0 channel=0 disabled=no log-file="teplota.txt" port=serial0 tcp-port=65500
/system script add name=teplomer policy=ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api source=":local obsah\r\
\n:local webserver 192.168.1.1\r\
\n:local teplo\r\
\n:local teplota\r\
\n/port remote-access set 0 disabled=yes\r\
\n:set obsah [/file get teplota.txt contents]\r\
\ndelay 2\r\
\n:set teplo [:pick \$obsah 0 [:find \$obsah \";\" 0]]\r\
\n:set teplota [:pick \$obsah 1 [:find \$obsah \"C\" 0]]\r\
\n:log warning (\$teplota)\r\
\n/file remove teplota.txt\r\
\ndelay 2\r\
\n/port remote-access set 0 disabled=no\r\
\n:if (\$teplota<15) do={/tool fetch mode=http address=$webserver dst-path=teplota.tmp src-path=\"cgi-bin/smsgate.php\?msgtxt=SERVEROVNA_ZIMA_\$teplo\"}\r\
\n:if (\$teplota>25) do={/tool fetch mode=http address=$webserver dst-path=teplota.tmp src-path=\"cgi-bin/smsgate.php\?msgtxt=SERVEROVNA_TEPLO_\$teplo\"}\r\
\n/file remove teplota.tmp"
/system scheduler add disabled=no interval=30m name=teplomer on-event=teplomer policy=ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api
pokud to chcete jako teplomer online tak si to upravte nasledovne:
radky s :if smazte a misto nich tam dejte natvrdo:
/tool fetch mode=http address=$webserver dst-path=teplota.tmp src-path=\"cgi-bin/onlineteplomer.php\?teplota=$teplo
a jestli chcete teplotu z nejakeho duvodu aktualizovat casteji tak nastavte
/system scheduler .... interval=5m ....
hotovo ...
+pripada mi to rozumejsi nez posilat neco nekam pres FTP = fuj, takova prasecina protokol kterej posila nezasifrovana hesla

+onlineteplomer.php by mel obsahovat test, z jake adresy data prisla (ja vim, je to paranoidni ale radsi ...), check dat ktere prisla v $_GET['teplota'], check jestli jsou data validni! tj +023.1C a podobne (reg vyraz),
dale doporucuji otestovat jestli je prvni znak + a pokud ano tak substr od druheho znaku po strlen-1 pokud je tam minus tak od prvniho znaku po strlen-1,
no a muzeme vesele provest INSERT INTO ... a je to v suchu bez nejakych jmen a hesel a je to vsechno na jedne webove strance jenom pomoci PHPcka

-kdo potrebuje posilat aktualni posledni teplotu tak necht si dopise jeste posun v souboru o par findu dal na posledni radek

jsem prilis liny na to se s tim hrat predevsim protoze se teplota v mistnosti meni pomalu, jestli budu mit cas tak to jeste prepisu
+doufam ze se najde nejake jelito co to bude mastit pres FTP a bude instalovat buhvico kvuli takove kravine


+neni treba aby mikrotik byl dostupny na verejne adrese, mikrotik odesila ukoristene data na server - z toho vyplyva ze mikrotik muze byt klidne za NATem bez verejne adresy vzhledem k serveru kam to bude posilat ...

0 x
- lwq
- Příspěvky: 1659
- Registrován: 19 years ago
- antispam: Ano
- Bydliště: MistyMountain
- Kontaktovat uživatele:
Jen drobnost - FTP tam bylo pouzite, protoze WEDOS omezuje pocet soubeznych PHP procesu a vyskytoval se tam problem s jejich vycerpanim a HTTP 503...
A druha vec, zasadne sem nechtel pouzivat nejak slozity skriptovani na strane ROS nebot je to tezce nespolehlive a mezi verzemi problemove. Ale zpusobu je vice a kdo chce kam ...
A druha vec, zasadne sem nechtel pouzivat nejak slozity skriptovani na strane ROS nebot je to tezce nespolehlive a mezi verzemi problemove. Ale zpusobu je vice a kdo chce kam ...

0 x
LWQ ... Vice na www.lwq.cz (treba GIOM 3000 atp.) ...