ministatus display
  1. #!/bin/bash
  2.  
  3. #script je psan na miru a je pouzit nasledujici hardware:
  4.  
  5. #DISPLEJ:
  6. # http://www.snailshop.cz/seriove-rozhrani/218-alfanumericky-displej-2x16-znaku-se-seriovym-rozhranim-zlutozeleny.html
  7.  
  8. #USB to TTL prevodnik:
  9. # https://arduino-shop.cz/arduino/935-arduino-programator-pl2303hx-1421353514.html
  10.  
  11.  
  12. #DEFINICE PORTU
  13. PORT="/dev/ttyUSB0"
  14.  
  15. #NASTAVENI PORTU
  16. sudo chmod a+rw $PORT
  17. stty -F $PORT 9600
  18.  
  19. #novy radek do echo
  20. NR="xfexc0"
  21.  
  22. #DEFINICE IP ADRES
  23. IPSRV="xxx"
  24. IPRPI="yyy"
  25. IPROU="zzz"
  26.  
  27.  
  28. #ZAKLADNI PRIKAZY
  29. SMAZ(){
  30. echo -e "xfex01" > $PORT
  31. }
  32. ROZNI(){
  33. echo -e "xfexe9" > $PORT
  34. }
  35. ZHASNI(){
  36. echo -e "xfexe8" > $PORT
  37. }
  38.  
  39.  
  40.  
  41. if [ "$1" == "-start" ]
  42. then
  43.  
  44. #NASTAVENI DISPLEJE
  45. #inicializace
  46.  
  47. #smaz displej
  48. SMAZ
  49.  
  50. #zapni podsviceni
  51. ROZNI
  52.  
  53. #vypis verzi firmware
  54. #echo -e "xfexff" > $PORT
  55.  
  56. #zapipej pico
  57. #sleep 0.01s
  58. #beep -l200 -f800
  59. #sleep 0.05s
  60. #beep -l200 -f800
  61. #sleep 1s
  62.  
  63. #udelej zemana
  64. #echo -e "Hello, kundo ..." > $PORT
  65. #SMAZ
  66. #sleep 2s
  67. SMAZ
  68.  
  69.  
  70. #DEFINICE FUNKCI
  71. #say hello, pico :D
  72. HELLO(){
  73. SMAZ
  74. echo -e " Status display " > $PORT
  75. echo -e "$NR@ Freezy.network" > $PORT
  76. sleep 4s
  77. }
  78.  
  79. #datum a svatek
  80. DATE(){
  81. SMAZ
  82. echo -e "    Dnes je:    " > $PORT
  83. echo -e "$NR   $(date '+%d.%m.%Y')   " > $PORT
  84. sleep 4s
  85. SMAZ
  86. echo -e "   Prave je:    " > $PORT
  87. echo -e "$NR    $(date '+%H:%M:%S')    " > $PORT
  88. sleep 4s
  89. SMAZ
  90. echo -e "   Svatek ma:   " > $PORT
  91. echo -e "$NR$(/bin/svatky-display.sh)           " > $PORT
  92. sleep 4s
  93. }
  94.  
  95. #pouze hodiny
  96. HODINY(){
  97. SMAZ
  98. echo -e "   $(date '+%d.%m.%Y')   " > $PORT
  99. echo -e "$NR      $(date '+%H:%M')      " > $PORT
  100. sleep 4s
  101. }
  102.  
  103. #zobraz info o systemu
  104. SYSTEM(){
  105. uptime=$(</proc/uptime)
  106. uptime=${uptime%%.*}
  107. seconds=$(( uptime%60 ))
  108. minutes=$(( uptime/60%60 ))
  109. hours=$(( uptime/60/60%24 ))
  110. days=$(( uptime/60/60/24 ))
  111. upt=$(echo "$days.d $hours.h $minutes.m $seconds.s" |sed 's/.//g')
  112. SMAZ
  113. echo -e " System uptime: " > $PORT
  114. echo -e "$NR$upt           " > $PORT
  115. sleep 4s
  116. SMAZ
  117. echo -e " Load average:  " > $PORT
  118. echo -e "$NR$(uptime |awk -F 'average: ' '{print $2}' |sed 's/, / /g')       " > $PORT
  119. sleep 4s
  120. SMAZ
  121. echo -e "   Processes:   " > $PORT
  122. echo -e "$NR total: $(ps -AF | grep -v ps | grep -v grep | wc -l)           " > $PORT
  123. sleep 4s
  124. SMAZ
  125. echo -e "   Processes:   " > $PORT
  126. echo -e "$NR runs: $(ps -A r | grep -v ps | grep -v grep | wc -l)           " > $PORT
  127. sleep 4s
  128. ZOMB=$(ps -A x |awk '{print $3}' |grep -c Z)
  129. if [ "$ZOMB" != "0" ]
  130. then
  131. SMAZ
  132. echo -e "Oh shit, zombies" > $PORT
  133. echo -e "$NR kill them! ($(echo $ZOMB))       " > $PORT
  134. sleep 4s
  135. fi
  136. }
  137.  
  138. #1-wire teploty
  139. WIRE(){
  140. ping -c1 $IPSRV 2>/dev/null 1>/dev/null
  141. if [ "$?" = 0 ]
  142. then
  143. rm /tmp/disptemp.tmp
  144. wget -q -U "status minidisplay script" --no-check-certificate -O /tmp/disptemp.tmp --user=foo --password=bar https://$IPSRV/teploty/teploty.txt
  145. OWT=/tmp/disptemp.tmp
  146. SMAZ
  147. if [ -f /tmp/disptemp.tmp ]
  148. then
  149. echo -e "  1-Wire temp:  " > $PORT
  150. echo -e "$NR$(cat $OWT |grep -i venku |sed 's/°C//g') C     " > $PORT
  151. sleep 4s
  152. SMAZ
  153. echo -e "  1-Wire temp:  " > $PORT
  154. echo -e "$NR$(cat $OWT |grep -i kuchyne |sed 's/°C//g') C     " > $PORT
  155. sleep 4s
  156. SMAZ
  157. echo -e "  1-Wire temp:  " > $PORT
  158. echo -e "$NR$(cat $OWT |grep -i loznice |sed 's/°C//g') C     " > $PORT
  159. sleep 4s
  160. SMAZ
  161. echo -e "  1-Wire temp:  " > $PORT
  162. echo -e "$NR$(cat $OWT |grep -i obyvak |sed 's/°C//g') C     " > $PORT
  163. sleep 4s
  164. SMAZ
  165. echo -e "  1-Wire temp:  " > $PORT
  166. echo -e "$NR$(cat $OWT |grep -i pracovna |sed 's/°C//g') C     " > $PORT
  167. sleep 4s
  168. SMAZ
  169. echo -e "  1-Wire temp:  " > $PORT
  170. echo -e "$NR$(cat $OWT |grep -i topeni |sed 's/°C//g') C     " > $PORT
  171. sleep 4s
  172. else
  173. SMAZ
  174. echo -e "  1-Wire temp:  " > $PORT
  175. echo -e "$NR  LOCAL ERROR!  " > $PORT
  176. fi
  177. else
  178. SMAZ
  179. echo -e "  1-Wire temp:  " > $PORT
  180. echo -e "$NR NETWORK ERROR! " > $PORT
  181. fi
  182. }
  183.  
  184. SKLEP(){
  185. ping -c1 $IPRPI 2>/dev/null 1>/dev/null
  186. if [ "$?" = 0 ]
  187. then
  188. ST=$(curl -skNA "status display script" http://$IPRPI/teploty.txt)
  189. SMAZ
  190. echo -e "  1-Wire temp:  " > $PORT
  191. echo -e "$NR$(echo $ST |sed 's/°C//g' |awk '{print "kotel: " $2 " C " $17 ""}')      " > $PORT
  192. sleep 4s
  193. SMAZ
  194. echo -e "  1-Wire temp:  " > $PORT
  195. echo -e "$NR$(echo $ST |sed 's/°C//g' |awk '{print "dilna: " $4}') C     " > $PORT
  196. sleep 4s
  197. SMAZ
  198. echo -e "  1-Wire temp:  " > $PORT
  199. echo -e "$NR$(echo $ST |sed 's/°C//g' |awk '{print "HUV: " $6}') C        " > $PORT
  200. sleep 4s
  201. SMAZ
  202. echo -e "  1-Wire temp:  " > $PORT
  203. echo -e "$NR$(echo $ST |sed 's/°C//g' |awk '{print "RPi CPU: " $8}') C     " > $PORT
  204. sleep 4s
  205. SMAZ
  206. echo -e "  1-Wire temp:  " > $PORT
  207. echo -e "$NR$(echo $ST |sed 's/°C//g' |awk '{print "RPi case: " $10}') C     " > $PORT
  208. sleep 4s
  209. SMAZ
  210. echo -e "  1-Wire temp:  " > $PORT
  211. echo -e "$NR$(echo $ST |sed 's/°C//g' |awk '{print "RPi RH: " $12}')    " > $PORT
  212. sleep 4s
  213. else
  214. SMAZ
  215. echo -e "  1-Wire temp:  " > $PORT
  216. echo -e "  RASPI ERROR!  " > $PORT
  217. fi
  218. }
  219.  
  220. #pouze teplota venku
  221. VENKU(){
  222. ping -c1 $IPSRV 2>/dev/null 1>/dev/null
  223. if [ "$?" = 0 ]
  224. then
  225. rm /tmp/disptemp.tmp
  226. wget -q -U "status minidisplay script" --no-check-certificate -O /tmp/disptemp.tmp --user=foo --password=bar https://$IPSRV/teploty/teploty.txt
  227. OWT=/tmp/disptemp.tmp
  228. SMAZ
  229. if [ -f /tmp/disptemp.tmp ]
  230. then
  231. echo -e " Breaking news: " > $PORT
  232. echo -e "$NR$(cat $OWT |grep -i venku |sed 's/°C/ C/g')     " > $PORT
  233. sleep 7s
  234. else
  235. SMAZ
  236. echo -e " Breaking news: " > $PORT
  237. echo -e "$NR  LOCAL ERROR!  " > $PORT
  238. fi
  239. else
  240. SMAZ
  241. echo -e " Breaking news: " > $PORT
  242. echo -e "$NR NETWORK ERROR! " > $PORT
  243. fi
  244. }
  245.  
  246. #pocet neprectenych mailu v thunderbirdu
  247. # MAIL(){
  248. # UNREAD="/foo/bar/.thunderbird-unread"
  249. # if [ -f $UNREAD ] && [ "$(cat $UNREAD)" != "0" ] && [ "$(pidof thunderbird)" != "" ]
  250. # then
  251. # SMAZ
  252. # echo -e "unread items: $(cat $UNREAD)n    Thunderbird" > $PORT
  253. # sleep 5s
  254. # fi
  255. # }
  256.  
  257. #stav jabberu
  258. # JABBER(){
  259. # if [ "$(pidof psi)" != "" ]
  260. # then
  261. # STAT=$(curl -sN "http://netlab.cz/status/?jid=foobarzoo@jabber.cz&type=var")
  262. # SMAZ
  263. # echo -e "  is now:  $(echo $STAT |awk '{print $1}')n  foobarzoo@jabber.cz" > $PORT
  264. # #echo -e "$(echo $STAT |sed -e 's/.{20}/&€/g' |sed 's/€.*//')n   Jabber status:" > $PORT
  265. # sleep 5s
  266. # fi
  267. # }
  268.  
  269. #co hraje v mamrdoku
  270. AMAROK(){
  271. if [ "$(pidof amarok)" != "" ] && [ "$(qdbus org.kde.amarok /Player GetMetadata)" != "" ]
  272. then
  273. NAZEV=$(qdbus org.kde.amarok /Player GetMetadata |grep title: |cut -d : -f 2 |sed -e 's/.{16}/&€/g' |sed 's/€.*//')
  274. UMELEC=$(qdbus org.kde.amarok /Player GetMetadata |sed 's/albumartist:/jebka:/g' |grep artist: |cut -d : -f 2 |sed -e 's/.{16}/&€/g' |sed 's/€.*//')
  275. ALBUM=$(qdbus org.kde.amarok /Player GetMetadata |sed 's/albumartist:/jebka:/g' |sed 's/albumcovers/jebka:/g' |grep album: |cut -d : -f 2 |sed -e 's/.{16}/&€/g' |sed 's/€.*//')
  276. SMAZ
  277. echo -e "     amaroK     " > $PORT
  278. echo -e "$NR is now playing " > $PORT
  279. sleep 3s
  280. SMAZ
  281. echo -e "$UMELEC              " > $PORT
  282. echo -e "$NR$NAZEV             " > $PORT
  283. sleep 5s
  284. SMAZ
  285. echo -e " from album:     " > $PORT
  286. echo -e "$NR$ALBUM               " > $PORT
  287. sleep 5s
  288. fi
  289. }
  290.  
  291. #nmap tohoto pocitace
  292. NMAP(){
  293. SMAZ
  294. echo -e " NMAP localhost " > $PORT
  295. echo -e "$NR  checking ...  " > $PORT
  296. sleep 1s
  297. PRT=$(sudo nmap 127.0.0.1 |grep open |awk '{print $1}' |sed 's//.*//' |sed -e 's/.{16}/&€/g' |sed 's/€.*/.../')
  298. SMAZ
  299. echo -e " Opened ports:  " > $PORT
  300. echo -e "$NR$PRT                 " > $PORT
  301. sleep 4s
  302. }
  303.  
  304. #opingani routeru
  305. ROUT(){
  306. SMAZ
  307. echo -e " NETGEAR router " > $PORT
  308. echo -e "$NR  checking ...  " > $PORT
  309. sleep 1s
  310. ping -c1 $IPROU 2>/dev/null 1>/dev/null
  311. if [ "$?" = 0 ]
  312. then
  313. SMAZ
  314. echo -e " NETGEAR router " > $PORT
  315. echo -e "$NR up and running " > $PORT
  316. sleep 4s
  317. else
  318. SMAZ
  319. echo -e " NETGEAR router " > $PORT
  320. echo -e "$NR   is offline   " > $PORT
  321. sleep 4s
  322. fi
  323. }
  324.  
  325. #opingani serveru
  326. SRV(){
  327. SMAZ
  328. echo -e " miniSSH server " > $PORT
  329. echo -e "$NR  checking ...  " > $PORT
  330. sleep 1s
  331. ping -c1 $IPSRV 2>/dev/null 1>/dev/null
  332. if [ "$?" = 0 ]
  333. then
  334. SMAZ
  335. echo -e " miniSSH server " > $PORT
  336. echo -e "$NR up and running " > $PORT
  337. sleep 4s
  338. else
  339. SMAZ
  340. echo -e " miniSSH server " > $PORT
  341. echo -e "$NR   is offline   " > $PORT
  342. sleep 4s
  343. fi
  344. }
  345.  
  346. #opingani raspberry sklep
  347. RASPI(){
  348. SMAZ
  349. echo -e "  Raspberry Pi  " > $PORT
  350. echo -e "$NR  checking ...  " > $PORT
  351. sleep 1s
  352. ping -c1 $IPRPI 2>/dev/null 1>/dev/null
  353. if [ "$?" = 0 ]
  354. then
  355. SMAZ
  356. echo -e "  Raspberry Pi  " > $PORT
  357. echo -e "$NR up and running " > $PORT
  358. sleep 4s
  359. else
  360. SMAZ
  361. echo -e "  Raspberry Pi  " > $PORT
  362. echo -e "$NR   is offline   " > $PORT
  363. sleep 4s
  364. fi
  365. }
  366.  
  367. #signal sklepniho ap
  368. AP(){
  369. SIG=$(curl -s http://foo:bar@zoo/activeclient_content.asp |grep b7b7b7 |awk '{print $8}' |sed 's/size=2>//g' |sed 's/</td></tr>//g')
  370. if [ "$SIG" != "" ]
  371. then
  372. SMAZ
  373. echo -e "Ovislink (sklep)" > $PORT
  374. echo -e "$NR signal: $SIG           " > $PORT
  375. sleep 4s
  376. else
  377. SMAZ
  378. echo -e "Ovislink (sklep)" > $PORT
  379. echo -e "$NR connect error   " > $PORT
  380. sleep 4s
  381. fi
  382. }
  383.  
  384. #nanoprehled
  385. NANO(){
  386. SMAZ
  387. echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  388. echo -e "$NR$(/bin/svatky-display.sh)           " > $PORT
  389. sleep 4s
  390.  
  391. ping -c1 $IPSRV 2>/dev/null 1>/dev/null
  392. if [ "$?" = 0 ]
  393. then
  394. rm /tmp/disptemp.tmp
  395. wget -q -U "status minidisplay script" --no-check-certificate -O /tmp/disptemp.tmp --user=foo --password=bar https://$IPSRV/teploty/teploty.txt
  396. OWT=/tmp/disptemp.tmp
  397. SMAZ
  398. if [ -f /tmp/disptemp.tmp ]
  399. then
  400. echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  401. echo -e "$NR$(cat $OWT |grep -i venku |sed 's/°C//g') C     " > $PORT
  402. sleep 4s
  403. SMAZ
  404. echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  405. echo -e "$NR$(cat $OWT |grep -i kuchyne |sed 's/°C//g') C     " > $PORT
  406. sleep 4s
  407. SMAZ
  408. echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  409. echo -e "$NR$(cat $OWT |grep -i loznice |sed 's/°C//g') C     " > $PORT
  410. sleep 4s
  411. SMAZ
  412. echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  413. echo -e "$NR$(cat $OWT |grep -i obyvak |sed 's/°C//g') C     " > $PORT
  414. sleep 4s
  415. SMAZ
  416. echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  417. echo -e "$NR$(cat $OWT |grep -i pracovna |sed 's/°C//g') C     " > $PORT
  418. sleep 4s
  419. SMAZ
  420. echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  421. echo -e "$NR$(cat $OWT |grep -i topeni |sed 's/°C//g') C     " > $PORT
  422. sleep 4s
  423. else
  424. SMAZ
  425. echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  426. echo -e "$NR  LOCAL ERROR!  " > $PORT
  427. fi
  428. else
  429. SMAZ
  430. echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  431. echo -e "$NR NETWORK ERROR! " > $PORT
  432. fi
  433.  
  434. ping -c1 $IPRPI 2>/dev/null 1>/dev/null
  435. if [ "$?" = 0 ]
  436. then
  437. ST=$(curl -skNA "status display script" http://$IPRPI/teploty.txt)
  438. SMAZ
  439. echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  440. echo -e "$NR$(echo $ST |sed 's/°C//g' |awk '{print "kotel: " $2 " C " $17 ""}')      " > $PORT
  441. sleep 4s
  442. SMAZ
  443. echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  444. echo -e "$NR$(echo $ST |sed 's/°C//g' |awk '{print "dilna: " $4}') C     " > $PORT
  445. sleep 4s
  446. SMAZ
  447. echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  448. echo -e "$NR$(echo $ST |sed 's/°C//g' |awk '{print "HUV: " $6}') C        " > $PORT
  449. sleep 4s
  450. # SMAZ
  451. # echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  452. # echo -e "$NR$(echo $ST |sed 's/°C//g' |awk '{print "RPi CPU: " $8}') C     " > $PORT
  453. # sleep 4s
  454. # SMAZ
  455. # echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  456. # echo -e "$NR$(echo $ST |sed 's/°C//g' |awk '{print "RPi case: " $10}') C     " > $PORT
  457. # sleep 4s
  458. # SMAZ
  459. # echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  460. # echo -e "$NR$(echo $ST |sed 's/°C//g' |awk '{print "RPi RH: " $12}')    " > $PORT
  461. # sleep 4s
  462. else
  463. SMAZ
  464. echo -e "$(date '+%d.%m.%y   %H:%M')" > $PORT
  465. echo -e "  RASPI ERROR!  " > $PORT
  466. fi
  467. }
  468.  
  469.  
  470.  
  471. #VYBER FUNKCI
  472. if [ -z $2 ] || [ "$2" == "-full" ]
  473. then
  474. #vsechny furt dokola, jak u blbych na dvorku
  475. until (())
  476. do
  477. HELLO
  478. VENKU
  479. DATE
  480. #MAIL
  481. #JABBER
  482. AMAROK
  483. WIRE
  484. VENKU
  485. SKLEP
  486. VENKU
  487. SYSTEM
  488. VENKU
  489. NMAP
  490. ROUT
  491. SRV
  492. RASPI
  493. AP
  494. VENKU
  495. SMAZ
  496. sleep 1s
  497. done
  498.  
  499.  
  500. elif [ "$2" == "-mini" ]
  501. then
  502. #zakladni informace
  503. until (())
  504. do
  505. HELLO
  506. DATE
  507. #MAIL
  508. #JABBER
  509. AMAROK
  510. WIRE
  511. SKLEP
  512. SMAZ
  513. sleep 1s
  514. done
  515.  
  516.  
  517. elif [ "$2" == "-nano" ]
  518. then
  519. HELLO
  520. #nanoprehled
  521. until (())
  522. do
  523. #MAIL
  524. #JABBER
  525. AMAROK
  526. NANO
  527. SMAZ
  528. sleep 1s
  529. done
  530.  
  531.  
  532. #########################################
  533. #             CUSTOM RULES              #
  534. #########################################
  535. elif [ "$2" == "-custom" ]
  536. then
  537. HELLO
  538. #vlastni poradi funkci
  539. until (())
  540. do
  541. #zapsat vlastni poradi sem:
  542. SMAZ
  543. echo -e "oOOo (O_o) oOOo " > $PORT
  544. sleep 1s
  545. echo -e "$NR custom rules .." > $PORT
  546. sleep 120s
  547. #konec vlastnich hodnot
  548. SMAZ
  549. sleep 1s
  550. done
  551. #########################################
  552. #           END CUSTOM RULES            #
  553. #########################################
  554.  
  555.  
  556. elif [ "$2" == "-1wire" ]
  557. then
  558. HELLO
  559. #1-wire
  560. until (())
  561. do
  562. WIRE
  563. SMAZ
  564. sleep 1s
  565. done
  566.  
  567.  
  568. elif [ "$2" == "-sklep" ]
  569. then
  570. #sklep teploty
  571. until (())
  572. do
  573. SKLEP
  574. SMAZ
  575. sleep 1s
  576. done
  577.  
  578.  
  579. elif [ "$2" == "-teploty" ]
  580. then
  581. #sklep vsechny
  582. until (())
  583. do
  584. WIRE
  585. VENKU
  586. SKLEP
  587. SMAZ
  588. sleep 1s
  589. done
  590.  
  591.  
  592. elif [ "$2" == "-rout" ]
  593. then
  594. HELLO
  595. #opingat roouter
  596. until (())
  597. do
  598. ROUT
  599. sleep 10s
  600. SMAZ
  601. echo -e "PING watchdog is" > $PORT
  602. echo -e "$NR now waiting ... " >  $PORT
  603. sleep 300s
  604. done
  605.  
  606.  
  607. elif [ "$2" == "-srv" ]
  608. then
  609. HELLO
  610. #opingat server
  611. until (())
  612. do
  613. SRV
  614. sleep 10s
  615. SMAZ
  616. echo -e "PING watchdog is" > $PORT
  617. echo -e "$NR now waiting ... " >  $PORT
  618. sleep 300s
  619. done
  620.  
  621.  
  622. elif [ "$2" == "-raspi" ]
  623. then
  624. HELLO
  625. #opingat raspberry sklep
  626. until (())
  627. do
  628. RASPI
  629. sleep 10s
  630. SMAZ
  631. echo -e "PING watchdog is" > $PORT
  632. echo -e "$NR now waiting ... " >  $PORT
  633. sleep 300s
  634. done
  635.  
  636.  
  637. elif [ "$2" == "-ap" ]
  638. then
  639. HELLO
  640. #signal sklepniho ap
  641. until (())
  642. do
  643. AP
  644. sleep 10s
  645. done
  646.  
  647. elif [ "$2" == "-net" ]
  648. then
  649. HELLO
  650. #opingat vsechny zadane ip
  651. until (())
  652. do
  653. NMAP
  654. ROUT
  655. SRV
  656. RASPI
  657. AP
  658. sleep 5s
  659. SMAZ
  660. echo -e "PING watchdog is" > $PORT
  661. echo -e "$NR now waiting ... " >  $PORT
  662. sleep 300s
  663. done
  664.  
  665.  
  666. # elif [ "$2" == "-mail" ]
  667. # then
  668. # HELLO
  669. # #pocet neprectenych mailu
  670. # until (())
  671. # do
  672. # MAIL
  673. # sleep 30s
  674. # done
  675.  
  676.  
  677. # elif [ "$2" == "-jabber" ]
  678. # then
  679. # HELLO
  680. # #jabber status
  681. # until (())
  682. # do
  683. # JABBER
  684. # sleep 30s
  685. # done
  686.  
  687.  
  688. elif [ "$2" == "-hodiny" ]
  689. then
  690. HELLO
  691. #pouze hodiny
  692. until (())
  693. do
  694. HODINY
  695. done
  696.  
  697.  
  698. elif [ "$2" == "-date" ]
  699. then
  700. HELLO
  701. #datum a svatek
  702. until (())
  703. do
  704. DATE
  705. SMAZ
  706. sleep 1s
  707. done
  708.  
  709.  
  710. elif [ "$2" == "-system" ]
  711. then
  712. HELLO
  713. #uptime a load
  714. until (())
  715. do
  716. SYSTEM
  717. SMAZ
  718. sleep 1s
  719. done
  720.  
  721.  
  722. elif [ "$2" == "-amarok" ]
  723. then
  724. HELLO
  725. #co hraje v mamrdoku
  726. until (())
  727. do
  728. AMAROK
  729. done
  730.  
  731.  
  732. elif [ "$2" == "-nmap" ]
  733. then
  734. HELLO
  735. #nmap tohoto pocitace
  736. until (())
  737. do
  738. NMAP
  739. SMAZ
  740. echo -e "NMAP watchdog is" > $PORT
  741. echo -e "$NR now waiting ... " >  $PORT
  742. sleep 300s
  743. done
  744.  
  745.  
  746. elif [ "$2" == "-ping" ] && [ "$3" != "" ]
  747. then
  748. HELLO
  749. #opingat rucne zadanou ip
  750. until (())
  751. do
  752. SMAZ
  753. echo -e "$3               " > $PORT
  754. echo -e "$NR  checking ...  " > $PORT
  755. sleep 1s
  756. ping -c1 $3 2>/dev/null 1>/dev/null
  757. if [ "$?" = 0 ]
  758. then
  759. SMAZ
  760. echo -e "$3               " > $PORT
  761. echo -e "$NR up and running " > $PORT
  762. sleep 4s
  763. else
  764. SMAZ
  765. echo -e "$3               " > $PORT
  766. echo -e "$NR   is offline   " > $PORT
  767. sleep 4s
  768. fi
  769. SMAZ
  770. echo -e "PING watchdog is" > $PORT
  771. echo -e "$NR now waiting ... " >  $PORT
  772. sleep 300s
  773. done
  774.  
  775.  
  776. fi
  777.  
  778.  
  779.  
  780. elif [ "$1" == "-fw" ]
  781. then
  782. #vypis firmware
  783. SMAZ
  784. ROZNI
  785. SMAZ
  786. echo -e "firmware version" > $PORT
  787. sleep 2s
  788. SMAZ
  789. echo -e "xfexff" > $PORT
  790. sleep 7s
  791. SMAZ
  792. echo -e " Status display " > $PORT
  793. echo -e "$NR@ Freezy.network" > $PORT
  794. sleep 7s
  795. $0 -stop
  796.  
  797.  
  798. elif [ "$1" == "-stop" ]
  799. then
  800. #vypni displej
  801. SMAZ
  802. echo -e "  bye  bye ...  " > $PORT
  803. #beep -l500 -f500
  804. sleep 1s
  805. SMAZ
  806. ZHASNI
  807. SMAZ
  808.  
  809.  
  810. elif [ "$1" == "-clear" ]
  811. then
  812. #vymaz displej
  813. #beep -l200 -f800
  814. #sleep 0.05s
  815. #beep -l200 -f800
  816. SMAZ
  817.  
  818.  
  819. else
  820. echo ""
  821. echo "Pouziti scriptu $0 - Status MiniDisplay @ Freezy.network:"
  822. echo ""
  823. echo "$0 -start           = nekonecna smyska se vsemi funkcemi scriptu"
  824. echo "$0 -start -full     = nekonecna smyska se vsemi funkcemi scriptu"
  825. echo "$0 -start -mini     = maly prehled, zasadni info, vyrecnejsi"
  826. echo "$0 -start -nano     = jeste mensi prehled, nejpodstatnejsi informace"
  827. echo "$0 -start -custom   = uzivatelem definovane funkce"
  828. echo "$0 -start -1wire    = zobrazeni teplot z 1-Wire site (pouze patro)"
  829. echo "$0 -start -sklep    = zobrazeni teplot z 1-WIre site (pouze sklep)"
  830. echo "$0 -start -teploty  = zobrazeni teplot z 1-Wire site (sklep i patro)"
  831. echo "$0 -start -rout     = ping hlavniho routeru"
  832. echo "$0 -start -srv      = ping miniSSH serveru"
  833. echo "$0 -start -raspi    = ping Raspberry Pi (sklep)"
  834. echo "$0 -start -ap       = zobrazeni signalu AP Ovislink (sklep)"
  835. echo "$0 -start -net      = vsechny sitove funkce (-nmap -rout -srv -raspi -ap)"
  836. # echo "$0 -start -mail     = zobrazeni neprectenych polozek v thunderbirdu (nutno mit firetray)"
  837. # echo "$0 -start -jabber   = zobrazeni stavu jabberu (nutny transport jabbimu)"
  838. echo "$0 -start -hodiny   = zobrazeni prosteho data a casu"
  839. echo "$0 -start -date     = zobrazeni data, casu a svatku"
  840. echo "$0 -start -system   = zobrazeni systemovych informaci"
  841. echo "$0 -start -amarok   = zobrazeni aktualne hrajici skladby v amaroKu"
  842. echo "$0 -start -nmap     = zobrazeni otevrenych portu na localhostu"
  843. echo "$0 -start -ping IP  = ping na uzivatelem zadanou IP/hosta"
  844. echo ""
  845. echo "$0 -fw              = zobrazeni firmware displeje|"
  846. echo "$0 -stop            = ukonceni a vypnuti displeje|"
  847. echo "$0 -clear           = smazani obsahu displeje|"
  848. echo ""
  849.  
  850.  
  851. fi
  852.  
  853.  
  854.  
  855.  
  856. #hex prikazy pro displej
  857. # FE 01          Vymazání displeje, posun kurzoru na první ?ádek a první sloupec
  858. # FE 02          Kurzor na první ?ádek a první sloupec, zruší posun, obsah pam?ti zachová
  859. # FE 04          Kurzor se po zapsání znaku posune doleva (vhodné p?i vypisování ?ísel)
  860. # FE 06          Kurzor se po zapsání znaku posune doprava
  861. # FE 08          Vypne zobrazování, obsah pam?ti zachová
  862. # FE 0C          Obnoví zobrazení znak?, vypne kursor
  863. # FE 0D          Kursor jako blikající blok
  864. # FE 0E          Kursor jako podtržítko
  865. # FE 10          Posune kursor o jedno místo doleva
  866. # FE 14          Posune kursor o jedno místo doprava
  867. # FE 18          Posune obsah displeje o jedno místo doleva
  868. # FE 1C          Posune obsah displeje o jedno místo doprava
  869. # FE 40+adresa   Nastaví adresu generátoru uživatelských znak?
  870. # FE 80+sloupec  Nastaví kurzor na první ?ádek a sloupec 00 až 0F (15 dekadicky)
  871. # FE C0+sloupec  Nastaví kurzor na druhý ?ádek a sloupec 00 až 0F (15 dekadicky)
  872. # FE E8          Vypne podsvícení displeje
  873. # FE E9          Zapne podsvícení displeje
  874. # FE FE          Zobrazí znak s kódem FE
  875. # FE FF          Vypíše verzi firmware na displeji
  876.  
Parsed in 0.217 seconds