Linux, wap och Tellstick

I detta forum hör diskussioner gällande teknik i största allmänhet och hemautomation i synnerhet hemma.
Kategoriregler
Vill du visa bilder i ditt inlägg? Använd funktionen "Ladda upp bilaga" nedanför textrutan!
sm4wdq
Wannabe
Inlägg: 17
Blev medlem: 24 sep 2008, 11:21
Ort: Hagfors

Re: Linux, wap och Tellstick

Inlägg av sm4wdq »

Hej

Kan du dela med dig av dina script
speciellt för WAP !?
finkman
Wannabe
Inlägg: 22
Blev medlem: 02 nov 2006, 01:45
Ort: Linköping

Re: Linux, wap och Tellstick

Inlägg av finkman »

Absolut,

Wap-prylen genereras via php,

Kod: Markera allt

<?php
$housecode = escapeshellcmd($_GET[h]);
$address = escapeshellcmd($_GET[n]);
if($_GET[power] == 'on'){
        shell_exec("sudo /usr/local/bin/rfcmd1/rfcmd /dev/ttyUSB0 NEXA $housecode $address 1");
} elseif($_GET[power] == 'off'){
        shell_exec("sudo /usr/local/bin/rfcmd /dev/ttyUSB0 NEXA $housecode $address 0");
}
echo '<?xml version="1.0"?>';

?>
 <!DOCTYPE wml PUBLIC "-//PHONE.COM//DTD WML 1.1//EN"
    "http://www.phone.com/dtd/wml11.dtd" >
 <wml>
        <head>
        <meta http-equiv="Cache-Control" content="no-cache"/>
        </head>
   <card id="main" title="Asdf">
$randlink=rand(1,99999);
     echo "
     <p mode=\"wrap\">
        V-rum f&ouml;nstret: <a href=index.php?power=on&h=C&n=1&r=$randlink>P&aring;</a> <a href=index.php?power=off&h=C&n=1&r=$randlink>Av</a><br>
        D-rum klotlampa: <a href=index.php?power=on&h=B&n=2&r=$randlink>P&aring;</a> <a href=index.php?power=off&h=B&n=2&r=$randlink>Av</a><br>
        D-rum hyllor: <a href=index.php?power=on&h=B&n=1&r=$randlink>P&aring;</a> <a href=index.php?power=off&h=B&n=1&r=$randlink>Av</a><br>
        D-rum f&ouml;rst&auml;rkare: <a href=index.php?power=on&h=B&n=3&r=$randlink>P&aring;</a> <a href=index.php?power=off&h=B&n=3&r=$randlink>Av</a><br>
        U-rum r&ouml;da: <a href=index.php?power=on&h=A&n=1&r=$randlink>P&aring;</a> <a href=index.php?power=off&h=A&n=1&r=$randlink>Av</a><br>
        U-rum uplight: <a href=index.php?power=on&h=A&n=2&r=$randlink>P&aring;</a> <a href=index.php?power=off&h=A&n=2&r=$randlink>Av</a><br>
        U-rum glitter: <a href=index.php?power=on&h=A&n=3&r=$randlink>P&aring;</a> <a href=index.php?power=off&h=A&n=3&r=$randlink>Av</a>";
                
$result = shell_exec('sudo cat /mnt/owfs/12.776A37000000/sensed.A');

                echo '<br>D&ouml;rren &auml;r ';
                if($result == '1')
                        echo "ol&aring;st.";
                elseif($result == '0')
                        echo " l&aring;st.";
?>
</p>
</card>
 </wml>
Jeppjepp, här hemma gäller quick&dirty, finkoda kan man göra på jobbet :) Wap börjar bli lite gammalmodigt dessutom, när/om jag någonsin skriver om det hela skulle jag skriva html/ajax, telefonens webläsare klarar av det minst lika bra. Som ni ser så körs allting via skal-anrop, vanliga rfcmd till tellsticken och owfs till att läsa i entrådsnätet. Sen behövs det inget mer! :) För säkerhet så får webserverns användare inte göra alls mycket, och det som den får göra är uppstyrt via åtstramade sudo-regler. All input bör ändå filtreras genom t.ex. escapeshellcmd() för att undvika injection-attacker via webbapplikationen.
sm4wdq
Wannabe
Inlägg: 17
Blev medlem: 24 sep 2008, 11:21
Ort: Hagfors

Re: Linux, wap och Tellstick

Inlägg av sm4wdq »

Kanon !!!

Tack för scriptet

har lite strul med telia o mina portar på webservern (ej std)
macce76
Inlägg: 1
Blev medlem: 09 feb 2010, 23:29
Ort: Sundsvall

Re: Linux, wap och Tellstick

Inlägg av macce76 »

Är det bekräftat att finkmans schema fungerar ? , tack på förhand Macce
finkman
Wannabe
Inlägg: 22
Blev medlem: 02 nov 2006, 01:45
Ort: Linköping

Re: Linux, wap och Tellstick

Inlägg av finkman »

Ptjaa.. Det första schemat fungerar än idag i min ytterdörr :) Dock så finns det varken några ds2405 eller ds2406 i to92-format att köpa längre. 2406p+ verkar finnas i lager på http://www.m.nu, den borde kunna ersätta 2406 rakt av, förutom att 2406p+ är en tsoc-kapsel som är lite jobbigare att löda (men man kan ju köpa chippet färdigmonterat på ett litet breakout-kretskort i shopen också).

Det andra schemat är nog otestat än så länge vad jag vet. Jag kan ha testat det på en labb-bräda om jag minns rätt, men minnet är väldigt luddigt på den punkten :)

Som Erik redan nämnt i tråden så finns det färdiga io-kort i shopen också, t.ex. den här: https://www.m.nu/d2p-2-io-med-pullupmotstand-p-257.html
För 149 spänn så är det ju knappt värt att löda själv, bara 2406-chippet monterat på kretskort kostar ju 103pix, till det kommer ju kostnaden för några motstånd. Io-kortet i shopen är ju snyggt monterat på ett kretskort dessutom.
Reine
Wannabe
Inlägg: 19
Blev medlem: 06 nov 2008, 00:45
Ort: Örebro
Kontakt:

Re: Linux, wap och Tellstick

Inlägg av Reine »

Jag får inte styrningen av tellstick via en webbsida att fungera. Kan det vara rättighetsproblem eller nån inställning i php eller apache? När jag kör kommandot i bash så fungerar det bra, men inte från en webbsida.

exec( "rfcmd /dev/tellstick NEXA B 1 1" );

Har även testat med shell_exec() och med sudo, inget funkar.
Användarvisningsbild
elf98
Hemautomation - det är mer än en hobby
Inlägg: 5434
Blev medlem: 27 okt 2006, 13:49
Ort: Linköping
Kontakt:

Re: Linux, wap och Tellstick

Inlägg av elf98 »

Troligtvis måste du lägga till hela sökvägen till rfcmd.
Grundade m.nu & temperatur.nu

Driver temperatur.nu

Bild
Reine
Wannabe
Inlägg: 19
Blev medlem: 06 nov 2008, 00:45
Ort: Örebro
Kontakt:

Re: Linux, wap och Tellstick

Inlägg av Reine »

Har testat det också, glömde skriva det. Har även testat att lägga rfcmd på samma ställe som websidan utan resultat. Har testat med chmod +x på rfcmd så alla ska få köra den, men icke.

edit:
Hittade felet, hade inte rätt behörighet på devicen tellstick under /dev. När jag ställde in att alla får läsa o skriva till den gick det bättre.
finkman
Wannabe
Inlägg: 22
Blev medlem: 02 nov 2006, 01:45
Ort: Linköping

Re: Linux, wap och Tellstick

Inlägg av finkman »

Därav sudo i min kod, rättigheterna på devicen nollställdes nämligen vid varje reboot och varje gång usb-stickan togs ur. Inte så ofta det hände iofs.. menmen.. :)

(finns säkert snyggare sätt att ställa default-behörigheter på nytillkomna usb-devices? någon?)
andreas
Tar hemautomation på allvar
Inlägg: 61
Blev medlem: 17 jan 2010, 01:06
Ort: Borås
Kontakt:

Re: Linux, wap och Tellstick

Inlägg av andreas »

Jag använder nedanstående udev-configuration för att sätta gruppen till tellstick och skapa en symlink som heter /dev/tellstick.

Kod: Markera allt

KERNEL=="ttyUSB*", BUS=="usb", SYSFS{idVendor}=="1781", SYSFS{idProduct}=="0c30", GROUP="tellstick" NAME="tellstick"
Vill man bara ändra behörighet så att alla ska kunna läsa/skriva, lägg till MODE=0666 på udev-raden.

Jag kan rekommendera http://www.reactivated.net/writing_udev_rules.html för en genomgång på hur udev-rules kan skrivas.
Skriv svar