76

Odp: Power Switch - najtańszy sterownik ON/OFF

przeciez harmonogram juz jest do powerswitch a jesli chodzi o ikonki to po odłączeniu "bynajmniej u mnie" po prostu nie ma ikonki tylko znaczek uszkodzonego obrazka

TL-WR1043ND: HDD-USB, extroot, LCD, Pilot, MP3 - Radio Player, NAS, Torrent, FTP, Sterowanie głosem, Komunikaty Głosowe, Termometr, PowerSwitch - Sterownik oświetlenia, Budzik, LTE - ODU IDU 200
Raspberry Pi + HDMI-VGA + Lcd Controller + Lcd z laptopa = Pogodynka smile

77 (edytowany przez roblad 2013-04-03 15:23:36)

Odp: Power Switch - najtańszy sterownik ON/OFF

Witam,

A gdzie ten harmonogram, bo po przesledzeniu postow nie widze - jest tylko do WiFi - nie wiem jak sobie poradzic zeby to dzialalo na PowerSwitcha - co trzeba zmienic - moze jakos na priva kolega mi przesle - nie poradze sobie z tym kodowaniem (sory za moje dyletanctwo, ale prosty chlop kubanski jestem). Co do ikonek, to ladniej wygladalo by z zakazem wjazdu (no ze niby nie ma podlaczonego powerswitcha), mala pewnie zmiana typu "else", ale nie wiem czy mi sie uda, nie znam skladni JS i moge cos poknocic.

Pozdr,

78

Odp: Power Switch - najtańszy sterownik ON/OFF

w innym temacie

http://eko.one.pl/forum/viewtopic.php?id=5711

,

79

Odp: Power Switch - najtańszy sterownik ON/OFF

I po co wymyslono funkcje search - zamiast na to wpasc to pytam bez sensu, wielkie dzieki. Brakuje mi jeszcze tych ikonek i tego aby w menu glownym Gargoyle pojawila sie sekcja, co by na okraglo nie wchodzic i zablokowac haslem calosc poprzez interfejs glowny Gargoyle.

Pozdr,

80 (edytowany przez kamillo 2013-04-08 18:29:55)

Odp: Power Switch - najtańszy sterownik ON/OFF

czego może mi brakować w konfiguracji serwera lighttpd do odpalenia stronki switch.sh ? na uhttpd z Gargoyle leci bez problemu a na lighttpd wyświetla pustą stronę. Tak wygląda mój config lighttpd

# lighttpd configuration file
# 
## modules to load
# all other module should only be loaded if really neccesary
# - saves some time
# - saves memory
server.modules = ( 
#    "mod_rewrite", 
#    "mod_redirect", 
#    "mod_alias", 
#    "mod_auth", 
#    "mod_status", 
#    "mod_setenv",
#    "mod_fastcgi",
#    "mod_proxy",
#    "mod_simple_vhost",
    "mod_cgi",
#    "mod_ssi",
#    "mod_usertrack",
#    "mod_expire",
#    "mod_webdav"
)

# force use of the "write" backend (closes: #2401)
server.network-backend = "write"

## a static document-root, for virtual-hosting take look at the 
## server.virtual-* options
server.document-root = "/www1/"

## where to send error-messages to
#server.errorlog = "/var/log/lighttpd/error.log"

## files to check for if .../ is requested
index-file.names = ( "index.html", "default.html", "index.htm", "index.php", "default.htm" )

## mimetype mapping
mimetype.assign = (  
    ".pdf"   => "application/pdf",
    ".class" => "application/octet-stream",
    ".pac"   => "application/x-ns-proxy-autoconfig",
    ".swf"   => "application/x-shockwave-flash",
    ".wav"   => "audio/x-wav",
    ".gif"   => "image/gif",
    ".jpg"   => "image/jpeg",
    ".jpeg"  => "image/jpeg",
    ".png"   => "image/png",
    ".svg"   => "image/svg+xml",
    ".css"   => "text/css",
    ".html"  => "text/html",
    ".htm"   => "text/html",
    ".js"    => "text/javascript",
    ".txt"   => "text/plain",
    ".dtd"   => "text/xml",
    ".xml"   => "text/xml"
 )

## Use the "Content-Type" extended attribute to obtain mime type if possible
#mimetypes.use-xattr = "enable"

## send a different Server: header
## be nice and keep it at lighttpd
#server.tag = "lighttpd"

$HTTP["url"] =~ "\.pdf$" {
    server.range-requests = "disable"
}

##
# which extensions should not be handle via static-file transfer
#
# .php, .pl, .fcgi are most often handled by mod_fastcgi or mod_cgi
static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )

######### Options that are good to be but not neccesary to be changed #######

## bind to port (default: 80)
server.port = 81

## bind to localhost (default: all interfaces)
#server.bind = "localhost"

## error-handler for status 404
#server.error-handler-404 = "/error-handler.html"
#server.error-handler-404 = "/error-handler.php"

## to help the rc.scripts
server.pid-file = "/var/run/lighttpd.pid"


###### virtual hosts
##
##   If you want name-based virtual hosting add the next three settings and load
##   mod_simple_vhost
##
## document-root =
##   virtual-server-root + virtual-server-default-host + virtual-server-docroot or
##   virtual-server-root + http-host + virtual-server-docroot
##
#simple-vhost.server-root = "/home/weigon/wwwroot/servers/"
#simple-vhost.default-host = "grisu.home.kneschke.de"
#simple-vhost.document-root = "/pages/"


## 
## Format: <errorfile-prefix><status>.html
## -> ..../status-404.html for 'File not found'
#server.errorfile-prefix = "/www/error-"

## virtual directory listings
#server.dir-listing = "enable"

## send unhandled HTTP-header headers to error-log
#debug.dump-unknown-headers = "enable"

### only root can use these options
#
# chroot() to directory (default: no chroot() )
#server.chroot = "/"

## change uid to <uid> (default: don't care)
#server.username = "nobody"
#
server.upload-dirs = ( "/tmp" )

## change uid to <uid> (default: don't care)
#server.groupname = "nobody"

#### compress module
#compress.cache-dir          = "/dev/null/"
#compress.filetype           = ("text/plain", "text/html")

#### proxy module
## read proxy.txt for more info
#proxy.server = (
#    ".php" => (
#        "localhost" => (
#            "host" => "192.168.0.101",
#            "port" => 80
#        )
#    )
#)

#### fastcgi module
## read fastcgi.txt for more info
#fastcgi.server = (
#    ".php" => (
#        "localhost" => (
#            "socket" => "/tmp/php-fastcgi.socket",
#            "bin-path" => "/usr/local/bin/php"
#        )
#    )
#)

#### CGI module
cgi.assign = ( ".pl"  => "/usr/bin/perl", ".cgi" => "/usr/bin/perl",  ".php" => "/usr/bin/php-cgi", ".sh" => "/bin/sh")
#### SSL engine
#ssl.engine = "enable"
#ssl.pemfile = "server.pem"

#### status module
#status.status-url = "/server-status"
#status.config-url = "/server-config"

#### auth module
## read authentification.txt for more info
#auth.backend = "plain"
#auth.backend.plain.userfile = "lighttpd.user"
#auth.backend.plain.groupfile = "lighttpd.group"
#auth.require = (
#    "/server-status" => ( 
#        "method"  => "digest",
#        "realm"   => "download archiv",
#        "require" => "group=www|user=jan|host=192.168.2.10"
#    ),
#    "/server-info" => ( 
#        "method"  => "digest",
#        "realm"   => "download archiv",
#        "require" => "group=www|user=jan|host=192.168.2.10"
#    )
#)

#### url handling modules (rewrite, redirect, access)
#url.rewrite = ( "^/$" => "/server-status" )
#url.redirect = ( "^/wishlist/(.+)" => "http://www.123.org/$1" )

#### both rewrite/redirect support back reference to regex conditional using %n
#$HTTP["host"] =~ "^www\.(.*)" {
#    url.redirect = ( "^/(.*)" => "http://%1/$1" )
#}

#### expire module
#expire.url = ( "/buggy/" => "access 2 hours", "/asdhas/" => "access plus 1 seconds 2 minutes")

#### ssi
#ssi.extension = ( ".shtml" )

#### setenv
#setenv.add-request-header  = ( "TRAV_ENV" => "mysql://user@host/db" )
#setenv.add-response-header = ( "X-Secret-Message" => "42" )

#### variable usage:
## variable name without "." is auto prefixed by "var." and becomes "var.bar"
#bar = 1
#var.mystring = "foo"

## integer add
#bar += 1
## string concat, with integer cast as string, result: "www.foo1.com"
#server.name = "www." + mystring + var.bar + ".com"
## array merge
#index-file.names = (foo + ".php") + index-file.names
#index-file.names += (foo + ".php")

#### include
#include /etc/lighttpd/lighttpd-inc.conf
## same as above if you run: "lighttpd -f /etc/lighttpd/lighttpd.conf"
#include "lighttpd-inc.conf"

#### include_shell
#include_shell "echo var.a=1"
## the above is same as:
#var.a=1

#### webdav
#$HTTP["url"] =~ "^/webdav($|/)" {
# webdav.activate = "enable"
# webdav.is-readonly = "enable"
# webdav.sqlite-db-name = "/var/run/lighttpd-webdav-lock.db"
#}

81 (edytowany przez roblad 2013-04-11 22:08:03)

Odp: Power Switch - najtańszy sterownik ON/OFF

roblad napisał/a:

I po co wymyslono funkcje search - zamiast na to wpasc to pytam bez sensu, wielkie dzieki. Brakuje mi jeszcze tych ikonek i tego aby w menu glownym Gargoyle pojawila sie sekcja, co by na okraglo nie wchodzic i zablokowac haslem calosc poprzez interfejs glowny Gargoyle.

Pozdr,



>>> UDALO mi sie to znalezc i dodac do glownego interfejsu gargoyle i do stronki

na poczatku stronki switch.sh musi byc taki wpis i bedzie ona chroniona haslem standardowym z routera

#!/usr/bin/haserl
<?

        eval $( gargoyle_session_validator -c "$COOKIE_hash" -e "$COOKIE_exp" -a "$HTTP_USER_AGENT" -i "$REMOTE_ADDR" -r "login.sh" -t $(uci get gargoyle.global.session_timeout) -b "$COOKIE_browser_time"  )


?>

A do pliku /etc/config/gargoyle


w sekcji 

config display 'display'

                       option system_switch 'Power switch'

oraz do sekcji

config scripts 'scripts'

                      option system_switch 'switch.sh'

i pozycja w menu

config 400 'system'

                       option switch '1200'

                       
postaram sie w wolnej chwili zrobic jeszcze przyciski chwilowe tzn. takie impulsowe, jak w dzwonku, akurat mi sa 2 takie potrzebne, ktore zalacza sie na sekunde. Wiem jak juz tez zrobic ikonki o braku podlaczonego powerswitcha zeby wyswietlaly sie 3 ikonki z zakazem wiazdu albo czerwona z krzyzykiem, chwilowo nie mam czasu sie bawic, ale dam znac jak juz bede to mial.

82

Odp: Power Switch - najtańszy sterownik ON/OFF

Takie chwilowe włączanie ma w sobie powerswitch. Wpisujesz np: powerswitch 1 on 2 i wlaczy sią a po dwóch sek. Ci się wyłączy

TL-WR1043ND: HDD-USB, extroot, LCD, Pilot, MP3 - Radio Player, NAS, Torrent, FTP, Sterowanie głosem, Komunikaty Głosowe, Termometr, PowerSwitch - Sterownik oświetlenia, Budzik, LTE - ODU IDU 200
Raspberry Pi + HDMI-VGA + Lcd Controller + Lcd z laptopa = Pogodynka smile

83

Odp: Power Switch - najtańszy sterownik ON/OFF

Witam,

Ale mi potrzeba to wykonac poprzez klikniecie - dzieki za podpowiedz, dodam guziki (udalo mi sie znalezc dobry tool microsoft expresion web, z ktorym sobie radze z php i graficznie mozna tworzyc stronke). Dodam guziki ze skryptem php do odpalenia chwilowego switcha i bedzie po sprawie, powstanie 8 dodatkowych guzikow ale beda funkcjonowac. Mam zamiar zrobic sobie jeszcze cos na zasadzie diod swiecacych aby sygnalizowaly zadzialanie on/off i obsluzyly tez chwilowe zadzialanie. Ale pewnie  jeszcze troche sie zejdzie z tym jakies podstay php i html musze sobie zaszczepic, nigdy sie nie bawilem w to.

Pozdr,
RL

84

Odp: Power Switch - najtańszy sterownik ON/OFF

Witam,

A moze jakis kolega mogl by pomoc w kwestji przycisku chwilowego, mniej wiecej wiem jak to zrobic ale chyba mniej - cos tam kombinowalem z <button type="rodzaj">Treść przycisku</button> i <form name=" ... - ale nic nie wychodzi, jak juz cos zaczyna dzialac to przy odswierzeniu strony tez wykonuje sie skrypt <?...?> - totalnie nie wiem jak to ugryzc, pisalem juz ze jestem totalnym laikiem w tym i spedzilem juz z 2 dni i nic.  Nigdzie nie moge znalezc dobrego przykladu.

85

Odp: Power Switch - najtańszy sterownik ON/OFF

wabikboy napisał/a:

Takie chwilowe włączanie ma w sobie powerswitch. Wpisujesz np: powerswitch 1 on 2 i wlaczy sią a po dwóch sek. Ci się wyłączy

Ale jak to okodowac na stronce i zapewnic, ze jak sie odswierzy strone to nie zadziala zawarty w przycisku skrypt ?

86 (edytowany przez wabikboy 2013-04-11 16:04:04)

Odp: Power Switch - najtańszy sterownik ON/OFF

musisz zmienić skrypty które za to odpowiadają. Przyjrzyj się tym skryptom

#!/bin/sh

status=$(/dodatki/powersw/power status | grep 0 | sed 's/port.0..//')

if [ "$status" == "on" ] ; then

/dodatki/powersw/power off 0

else

/dodatki/powersw/power on 0

fi

echo "$status"

ten poniżej odpowiada za odczyt czy przycisk został klikniety i nie zadziała przy wczytywaniu

<script>
 
$(document).ready(function(){
    setInterval(function (){
   $.get('cgi-bin/powersw/stan1.sh',function(data) {
          $('#buttona').attr('src',"iconsw/"+data+".png");
          $('#buttona').attr('power',data);   });},7500);
    $('#buttona').click(function(){
       var power=$(this).attr('power');
        if(power=='on'){
            power='off'
       }else{
            power='on';
       }
       $.get('cgi-bin/powersw/power1.sh',{action:power},function(data) {
          $('#buttona').attr('src',"iconsw/"+data+".png");
          $('#buttona').attr('power',data);
       });
    });
});
</script>
TL-WR1043ND: HDD-USB, extroot, LCD, Pilot, MP3 - Radio Player, NAS, Torrent, FTP, Sterowanie głosem, Komunikaty Głosowe, Termometr, PowerSwitch - Sterownik oświetlenia, Budzik, LTE - ODU IDU 200
Raspberry Pi + HDMI-VGA + Lcd Controller + Lcd z laptopa = Pogodynka smile

87 (edytowany przez roblad 2013-04-11 22:04:30)

Odp: Power Switch - najtańszy sterownik ON/OFF

Witam,

Chcialbym teraz jakos opanowac to:

<script>

$(document).ready(function(){
    setInterval(function (){
   $.get('cgi-bin/powersw/stan1.sh',function(data) {
          $('#buttona1s').attr('src',"iconsw/"+data+".png");
          $('#buttona1s').attr('power',data);   });},7500);
    $('#buttona').click(function(){
       var power=$(this).attr('power');
        if(power=='on'){
            power='off'
       }else{
            power='on';
       }
       $.get('cgi-bin/powersw/power11s.sh',{action:power},function(data) {
          $('#buttona1s').attr('src',"iconsw/"+data+".png");
          $('#buttona1s').attr('power',data);
       });
    });
});
</script>

które jest obslugiwane przez to

<img id="buttona1s" src="<?
status1=$(/dodatki/powersw/power status | grep 0 | sed 's/port.0..//')
echo -n "iconsw/$status1.png"
?>" power="<?
echo -n "$status1"
?>" width="50" height="50" ></font>

wlozyc do tego tak aby zadzialalo na 1 s:

<input name="Button9" style="width: 105px; height: -1px;" type="button" value="SW-1 (2s)" onclick="cos">

poprzez wykonanie skryptu (tu jest prosto):

cgi-bin/powersw/power1.sh

#!/usr/bin/haserl
<?
echo "Content-type: text/html"
echo ""

status=$(/dodatki/powersw/power status 2>/dev/null | grep 0 | sed 's/port.0..//')

if [ "$status" == "on" ] ; then
       /dodatki/powersw/power off 0
       sleep 1
       /dodatki/powersw/power on 0

else
        /dodatki/powersw/power on 0 2>/dev/null

#2>/dev/null jest potrzebne do podstawienia 3 ikonki przy braku podlaczonego switcha

           sleep 1

        /dodatki/powersw/power off 0 2>/dev/null
fi

#tu jest badane czy jest podlaczony switch - podstawienia 3 ikonki przy braku podlaczonego switcha

if [ "$status" == "on" ] || [ "$status" == "off" ] ; then

status0=$(/dodatki/powersw/power status | grep 0 | sed 's/port.0..//' )

echo "$status0"
else

status0="unknown"    # tu musi byc w katalogu ikonek 3 ikonka unknown.png
echo "$status0"
fi

?>

Czy ktos moze byc tak mily i jakos moze to pozenic ze soba, aby zadzialaly wszystkie funkcje i przycisk typu "button", i bylo tak ze przy odswierzeniu strony nie zadzialala akcja "onclick" i nie wcisnie sie automatycznie "onclick"

tak sobie to wykombinowalem, ale nie wiem czy zadziala

-----------------------------------------------------------------------------------------------------------------
switch.sh  (switchharm.sh)
-----------------------------------------------------------------------------------------------------------------

....

<script>
$(document).ready(function(){$('#buttona1s').click(function()
            {$.get('cgi-bin/powersw/power11s.sh');
            });
});
</script>

....

<td><input name="Button9" style="width: 105px; height: -1px;" type="button" value="SW-1 (2s)" onclick="buttona1s"/></td>

....

-----------------------------------------------------------------------------------------------------------------
cgi-bin/powersw/power11s.sh
-----------------------------------------------------------------------------------------------------------------

#!/usr/bin/haserl
<?
echo "Content-type: text/html"
echo ""

status=$(/dodatki/powersw/power status 2>/dev/null | grep 0 | sed 's/port.0..//')

if [ "$status" == "on" ] ; then
       /dodatki/powersw/power off 0
       sleep 1
       /dodatki/powersw/power on 0

else
       
/dodatki/powersw/power on 0 2>/dev/null    #<<<< 2>/dev/null jest potrzebne do podstawienia 3 ikonki przy braku podlaczonego switcha

           sleep 1

        /dodatki/powersw/power off 0 2>/dev/null
fi

# tu jest badane czy jest podlaczony switch - podstawienia 3 ikonki przy braku podlaczonego switcha

if [ "$status" == "on" ] || [ "$status" == "off" ] ; then

status0=$(/dodatki/powersw/power status | grep 0 | sed 's/port.0..//' )

echo "$status0"

else

status0="unknown"    # <<<<<<  tu musi byc w katalogu ikonek 3 ikonka unknown.png

echo "$status0"

fi

?>

Czy ktos kto jest obcykany w JS mogl by pomoc w tym temacie ?

Pozdr,

88

Odp: Power Switch - najtańszy sterownik ON/OFF

Stworzyłem sobie ikonki do odczytu stanu wejść mojej karty, czyli bez funkcji button. U mnie tylko wywołuje jaki jest stan i zapisuje go do zmiennej stan2. Mam taki skrypt

<script>
$(document).ready(function(){
    setInterval(function (){
   $.get('cgi-bin/powersw/stanIn1.sh',function(data) {
          $('#buttonx').attr('src',"iconsw/"+data+".png");
          $('#buttonx').attr('power',data);   });},7500);
});
</script>

i problem jest taki że sama ikonka nie odświeża sie automatycznie co 7,5s. Musze ręcznie odświeżać stronę. Co może być nie tak? Po odświeżeniu strony ikonka zmienia sie. Ale ja chce żeby było z automatu jak to dzieje się w skryptach wabikboy. Swoją drogą świetna robota! bardzo pomogło mi te mini HOW-To

89 (edytowany przez roblad 2013-04-11 23:10:09)

Odp: Power Switch - najtańszy sterownik ON/OFF

Czesc,

Nie bardzo sie na tym znam ale wydaje mi sie ze ta funkcja $(document).ready to dziala na wczytanie dokumentu tylko, moze
kolega wabikboy - pomoze nam w naszych problemach.


moze popatrz na to:

http://eko.one.pl/forum/viewtopic.php?id=3642

Pozdr

90 (edytowany przez wabikboy 2013-04-12 10:48:58)

Odp: Power Switch - najtańszy sterownik ON/OFF

roblad napisał/a:

Nie bardzo sie na tym znam ale wydaje mi sie ze ta funkcja $(document).ready to dziala na wczytanie dokumentu tylko, moze
kolega wabikboy - pomoze nam w naszych problemach.
Pozdr

Postaram sie big_smile

Więc tak:
funkcja
$(document).ready

oznacza "uruchom po wczytaniu całej strony"

setInterval(function () {...},7500);

oznacza "wykonaj co określony czas" .. tu co 7,5 sek.

Strona jest tak zrobiona aby stan przycisków zmieniał sie bez przeładowania strony i oczywiście tylko po kliknieciu

więc zmieniamy tylko kod powerX.sh

czyli to:

if [ "$status" == "on" ] ; then

/dodatki/powersw/power off 0

else

/dodatki/powersw/power on 0

fi

zamieniasz na to :

/dodatki/powersw/power off 0 2

Jeśli chcesz włączyć port 0 na 2 sekundy, i analogicznie jak jest włączony i chcesz wyłaczyć.

Czyli robisz sobie w/w skrypt i zapisujesz w np: wlsw0na2sek.sh prawem uruchomienia

a na stronie robisz tak:

#w sekcji head

<script>
 
$(document).ready(function(){
    setInterval(function (){
   $.get('cgi-bin/powersw/stan1.sh',function(data) {      # stan1.sh odpowiada za odczyt stanu portu 0, stan2.sh za 1 itd.
          $('#jakisprzycisk').attr('src',"iconsw/"+data+".png");
          $('#jakisprzycisk').attr('power',data);   });},1000);
    $('#jakisprzycisk').click(function(){
       var power=$(this).attr('power');
        if(power=='on'){
            power='off'
       }else{
            power='on';
       }
       $.get('cgi-bin/powersw/wlsw0na2sek.sh',{action:power},function(data) {
          $('#jakisprzycisk').attr('src',"iconsw/"+data+".png");
          $('#jakisprzycisk').attr('power',data);
       });
    });
});
</script>

#w sekcji body

<img id="jakisprzycisk" src="<?
status1=$(/dodatki/powersw/power status | grep 0 | sed 's/port.0..//')
echo -n "iconsw/$status1.png"
?>" power="<?
echo -n "$status1"
?>" width="50" height="50" >
TL-WR1043ND: HDD-USB, extroot, LCD, Pilot, MP3 - Radio Player, NAS, Torrent, FTP, Sterowanie głosem, Komunikaty Głosowe, Termometr, PowerSwitch - Sterownik oświetlenia, Budzik, LTE - ODU IDU 200
Raspberry Pi + HDMI-VGA + Lcd Controller + Lcd z laptopa = Pogodynka smile

91 (edytowany przez roblad 2013-04-12 12:33:34)

Odp: Power Switch - najtańszy sterownik ON/OFF

Witam,

Ale ja nie chce odswierzania, ttylko wykonanie kliku i odpalenie skryptu powerXX.sh, ktory wlaczy i zaraz wylaczy dany port switcha. Nie wiem czy moja koncepcja byla sluszna i ten skrypt:

<script>
$(document).ready(function(){$('#buttona1s').click(function()
            {$.get('cgi-bin/powersw/power11s.sh');
            });
});
</script>

z odpaleniem przycisku:


<td><input name="Button9" style="width: 105px; height: -1px;" type="button" value="SW-1 (2s)" onclick="buttona1s"/></td>


Nie wiem czy to wystarczy, czy koniecznie musi sie to odswierzac skoro przenioslem caly harmonogram do strony power switcha gdzie juz sa skrypty i przyciski (ikony), ktore maja swoja pierwotna funkcjie. Moje przyciski sa przyciskami dodatkowymi.

Powiem ze wszystko mi juz dziala po zintegrowaniu 2 stronek, czyli switcha i harmonogramu oprocz zalaczenia chwilowego przez przyciski. Jak by kolega mogl pomoc to jak juz wszystko skoncze udostepnie swoje rozwiazanie, gdzie polaczylem oba projekty w 1 i dodalem jeszcze kontrole apodlaczenia powerswitcha i chce dodac przyciski chwilowe.

Bardzo prosze o pomoc i analize tego co wykoncepowalem sobie w tej kwestii.

Bo po ciezkich bojach poleglem, skrypty sie nie odpalaja (maja 777)  - ani w podanym przykladzie przez wabikboy ani w moim rozwiazaniu, zalezy mi strasznie zeby byly to przyciski nie ikony do klikania.

Pozdr,

92 (edytowany przez wabikboy 2013-04-12 13:36:40)

Odp: Power Switch - najtańszy sterownik ON/OFF

roblad napisał/a:

Witam,

Ale ja nie chce odswierzania, ttylko wykonanie kliku i odpalenie skryptu powerXX.sh, ktory wlaczy i zaraz wylaczy dany port switcha. Nie wiem czy moja koncepcja byla sluszna i ten skrypt:

<script>
$(document).ready(function(){

             $('#buttona1s').click(function(){
             $.get('cgi-bin/powersw/power11s.sh');
            });
});
</script>

z odpaleniem przycisku:


<td><input name="Button9" style="width: 105px; height: -1px;" type="button" value="SW-1 (2s)" onclick="buttona1s"/></td>

aby odnieść sie do funkcji to nie onclick="buttona1s" tylko id="buttona1s"

znaczniki "<td> i </td>" możesz usunąć chyba że używasz na stronie tabeli


Nie moge teraz przetestować ale powinno działać jako zwykły przycisk a po kliknieciu wykona skrypt

<button type="button" onclick="cgi-bin/powersw/power11s.sh">Click Me!</button>
TL-WR1043ND: HDD-USB, extroot, LCD, Pilot, MP3 - Radio Player, NAS, Torrent, FTP, Sterowanie głosem, Komunikaty Głosowe, Termometr, PowerSwitch - Sterownik oświetlenia, Budzik, LTE - ODU IDU 200
Raspberry Pi + HDMI-VGA + Lcd Controller + Lcd z laptopa = Pogodynka smile

93

Odp: Power Switch - najtańszy sterownik ON/OFF

dzięki za podpowiedzi, okazało sie ze pomieszałem troche w zmiennych, ale już działa prawie ok. Wszystko odświeża się automatycznie. Jednak jest inny problem. Wyrywkowo co jakiś czas znikają mi ikonki. W chrome wywala takie błędy: http://img254.imageshack.us/img254/197/bledyh.png

94

Odp: Power Switch - najtańszy sterownik ON/OFF

sprawdz sobie w sekcji head skrypty odpowiadajace za dany przycisk. porównaj z innymi moze jakiś znak "zjadłeś" smile

TL-WR1043ND: HDD-USB, extroot, LCD, Pilot, MP3 - Radio Player, NAS, Torrent, FTP, Sterowanie głosem, Komunikaty Głosowe, Termometr, PowerSwitch - Sterownik oświetlenia, Budzik, LTE - ODU IDU 200
Raspberry Pi + HDMI-VGA + Lcd Controller + Lcd z laptopa = Pogodynka smile

95 (edytowany przez roblad 2013-04-12 17:20:11)

Odp: Power Switch - najtańszy sterownik ON/OFF

Witam,

<button type="button" onclick="cgi-bin/powersw/power11s.sh">Click Me!</button>

nie odpala nic - niestety - jak to kurna odpalic, zwykly klawisz i 1 skrypt ?

Moze ktos wie ?

Ja wpadlem tylko na to ze w sekcji HEAD

dodaje skrypt JS (niestety nie wiem jak odpalic skrypt shela ze skryptu javy)

 <script type="text/javascript">
<!--
function popup() {

    alert("Hello World")
    }
//-->
</script>

i do mojego przycisku dodaje ta funkcje jako onclick - ale to tyle co potrafir, i to dziala, daziala po kliknieciu przycisku nie po odswierzeniu strony - ale niestety musze odpalic skrypt lub chociaz komende w shellu z tego skryptu JS.


moj przycisk wyglada tak

<button name="Button2" style="width: 105px" type="button" onclick="popup()">SW-2 (2s)</button>

96

Odp: Power Switch - najtańszy sterownik ON/OFF

no to teraz sobie dodaj zamiast alertu funkcje która uruchamia skrypt.

Jak sobie nie poradzisz to za godz sie odezwe bo teraz nie mam jak potestowac kodu.

TL-WR1043ND: HDD-USB, extroot, LCD, Pilot, MP3 - Radio Player, NAS, Torrent, FTP, Sterowanie głosem, Komunikaty Głosowe, Termometr, PowerSwitch - Sterownik oświetlenia, Budzik, LTE - ODU IDU 200
Raspberry Pi + HDMI-VGA + Lcd Controller + Lcd z laptopa = Pogodynka smile

97

Odp: Power Switch - najtańszy sterownik ON/OFF

Czesc,

Juz 3 dni siedze nad tym, a przez to ze laik jestem w programowaniu to szukam po internecie i znalezc nie moge, a w JS to juz zupelne 0, poczekam na pomoc kolegi - bede wdzieczny, choc przetestuje jutro bo wymieniam pamiec na 64 m dzisiaj w routerze i bede mial go dopiero jutro po polodniu.

98 (edytowany przez wabikboy 2013-04-12 20:39:07)

Odp: Power Switch - najtańszy sterownik ON/OFF

#sekcja head
<script>
$(document).ready(function(){
        $('#tescik').click(function(){    
       $.get('cgi-bin/sciezka/skryptu.sh')
    });
});
</script>

#sekcja body

<button id="tescik">Przycisk</button>

przetestowane, działa

Troche sie rozpisałeś ze swoim kodem i ta trzecią ikonką smile jak chcesz to masz moją wersje smile
skrypt na strone

#head
<script>
 
$(document).ready(function(){
    setInterval(function (){
   $.get('cgi-bin/powersw/stan1.sh',function(data) {
          $('#buttona').attr('src',"iconsw/"+data+".png");
          $('#buttona').attr('power',data);
   });
},5000);
    $('#buttona').click(function(){
       var power=$(this).attr('power');
        if(power=='on'){
            power='off'
       }else{
            power='on';
       }
         if(power=='NA'){
                power='NA';
         }
       $.get('cgi-bin/powersw/power1.sh',{action:power},function(data) {
          $('#buttona').attr('src',"iconsw/"+data+".png");
          $('#buttona').attr('power',data);
       });
    });
});
</script>

#body
<img id="buttona" src="<?
stan=`/dodatki/powersw/power status 2>/dev/null | wc -l`
if [ "$stan" -gt "0" ] ; then
status1=$(/dodatki/powersw/power status | grep 0 | sed 's/port.0..//')
echo -n "iconsw/$status1.png"
else
echo -n "iconsw/NA.png"  
fi
?>" power="<?
if [ "$stan" -gt "0" ] ; then
echo -n "$status1"
else
echo -n "NA"  
fi
?>" width="50" height="50" >

cgi-bin/powersw/power1.sh

#!/usr/bin/haserl
<?
echo "Content-type: text/html"
echo ""

status=$(/dodatki/powersw/power status | grep 0 | sed 's/port.0..//')
stan=`/dodatki/powersw/power status 2>/dev/null | wc -l`

if [ "$stan" -gt "0" ] ; then

if [ "$status" == "on" ] ; then

/dodatki/powersw/power off 0

else

/dodatki/powersw/power on 0

fi 

status0=$(/dodatki/powersw/power status | grep 0 | sed 's/port.0..//')
echo "$status0"
else
echo "NA" 
fi
?>

/cgi-bin/powersw/stan1.sh

#!/usr/bin/haserl
<?
echo "Content-type: text/plain"
echo ""

devstan=`/dodatki/powersw/power test 2>/dev/null`


if [ "$devstan" == "test succeeded" ] ; then

status1=$(/dodatki/powersw/power status | grep 0 | sed 's/port.0..//')

echo "$status1"

else

echo "NA"

fi
?>
TL-WR1043ND: HDD-USB, extroot, LCD, Pilot, MP3 - Radio Player, NAS, Torrent, FTP, Sterowanie głosem, Komunikaty Głosowe, Termometr, PowerSwitch - Sterownik oświetlenia, Budzik, LTE - ODU IDU 200
Raspberry Pi + HDMI-VGA + Lcd Controller + Lcd z laptopa = Pogodynka smile

99 (edytowany przez roblad 2013-04-12 21:59:29)

Odp: Power Switch - najtańszy sterownik ON/OFF

Witam,

Super ! o to chodzilo, jak juz dostane spowrotem routerek z ram modem to wrzuce do siebie (niechce mi sie na vboxsie bawic bo niedokonfigurowany mam). 3 ikonka i komunikat jest wazny, mowi o jakis problemach ze sterowaniem a to wazne jak sie czyms powaznym steruje :-). Jak juz skoncze zintegrowana stronke z harmonogramem to przesle do Ciebie, moze cos zoptymalizujesz moze da sie zrobic plugina z tego do gargoyle, taki mam cel (duzo nauki przedemna) ale wspolnie moze sie da dotuningowac i bedzie gotowy plugin, jest to naprawde fajna sprawa. Harmonogram wi-fi zrobil sie pluginem - dlaczego nie powerswitch :-). Moze pozniej 1-wire jakis - i to radiowy :-) to mnie zainspirowalo http://majsterkowo.pl/prosty-system-pow … pocztowej/ i to http://majsterkowo.pl/forum/pomiar-tem … -t651.html koszt max 50 PLN http://allegro.pl/modul-nadajnik-odbior … 03596.html, to nastepne podejscie, ale bede chcial z czujnikiem ognia i wilgotnosci cos wykabinowac razem z prezentacja na gargoyle (dluga zabawa na ardurino). Wielkie dzieki za zainteresowanie napewno jutro juz bede mial swoja wersje beta sterowania.

Pozdr

100

Odp: Power Switch - najtańszy sterownik ON/OFF

wabikboy napisał/a:

sprawdz sobie w sekcji head skrypty odpowiadajace za dany przycisk. porównaj z innymi moze jakiś znak "zjadłeś" smile

no tylko własnie u mnie wszystkie ikony znikają tylko wyrywkowo, raz jedne są a drugich nie ma.
w sekcji head tak mam:

<script>
$(document).ready(function(){
    setInterval(function (){
   $.get('cgi-bin/powersw/stanIn1.sh',function(data) {
          $('#buttoni').attr('src',"iconsw/"+data+".png");
          $('#buttoni').attr('power',data);   });},1000);
});
</script>

tak jak pisałem w tych akurat odczyuje tylko stan i zmieniam ikone, nie są to przyciski
tak wyglada dalsza część ikonki

<div style="position: absolute; top: 250px; left: 50px">  
<table border="2" bordercolor="black" width="100" height="140px" >
<tr align="center">
<td>
<font size="4" color="blue">IN-1</font>
</td>
</tr>
<tr  align="center">
<td>

<img id="buttoni" src="<?
status2=$(/przekazniki/power /dev/ttyUSB0 getIn 1)
echo -n "iconsw/$status2.png"
?>" power="<?
echo -n "$status2"
?>" width="50" height="50" >
</td>
</tr>
</table> 
</div>

a tak skrypt cgi-bin/powersw/stanIn1.sh

#!/usr/bin/haserl
<?
echo "Content-type: text/plain"
echo ""


status2=$(/przekazniki/power /dev/ttyUSB0 getIn 1)
echo "$status2"

?>

komenda power /dev/ttyUSB0 getIn 1 zwraca mi z urządzenia wartość "open" lub "closed" i tak mam nazwane pliki png. Co może być nie tak że znikają te ikony? jak odświeże całą strone to pojawiają sie wszystkie i po pierszwszym automatycznym odświeżeniu samych ikon już część z nich się nie pojawia. Później znowu za jakiś czas się pojawiają...