PHP & MySQL gränssnitt, HomeAutomation v2.0.2 releasad!!

Moderator: Telldus

Post Reply

Hur många använder / har testat HomeAutomation?

Har inte testat
65
44%
Har testat men använder inte
16
11%
I använding
67
45%
 
Total votes: 148

Toronto
Posts: 54
Joined: Fri Mar 17, 2023 9:45 am

Post by Toronto »

En till fråga inom samma ämne, när jag ändå håller på:

Går det att tweaka alternativet 'motorvärmare' till att även innefatta vanliga kupévärmare?
Man skulle kunna, liksom för motorvärmaren, ställa in tiden för avfärd, samt temperaturkälla, när man skapar schemat för kupévärmaren. Samt:
- Anpassa tiden för hur länge kupévärmaren ska gå med avseende på avfärdstiden
- Själv ställa in tidsintervallerna för de olika temperaturnivåerna, så att kupévärmare går olika länge vid olika temperaturnivåer

Men det kanske redan ingår i feature 'Motorvärmare'... :-)
tom_rosenback
Posts: 779
Joined: Fri Mar 17, 2023 9:45 am
Contact:

Post by tom_rosenback »

Toronto wrote:En till fråga inom samma ämne, när jag ändå håller på:

Går det att tweaka alternativet 'motorvärmare' till att även innefatta vanliga kupévärmare?
Man skulle kunna, liksom för motorvärmaren, ställa in tiden för avfärd, samt temperaturkälla, när man skapar schemat för kupévärmaren. Samt:
- Anpassa tiden för hur länge kupévärmaren ska gå med avseende på avfärdstiden
- Själv ställa in tidsintervallerna för de olika temperaturnivåerna, så att kupévärmare går olika länge vid olika temperaturnivåer

Men det kanske redan ingår i feature 'Motorvärmare'... :-)
I princip ingår detta i ett temperatur styrt schema. Att kunna ställa in tiden som enheten max skall vara på funderade vi på tidigare men vi kanske riktade in oss mera på motorvärmar funktion var vi ansåg att 2h skall räcka. Men det är inte alls omöjligt att det kommer med i nästa release att kunna anpassa max tiden. Att själv kunna ställa in tidsintervaller, hm, kanske. Man kanske kunde få med max tiden i formeln så att man skulle beräkna offsetten med hjälp av max tid. Skall ta mig en funderare.
//Tom

Senaste info och release om/av HomeAutomation hittas här http://karpero.mine.nu/ha
Latest info and release of HomeAutomation can be found here http://karpero.mine.nu/ha
Toronto
Posts: 54
Joined: Fri Mar 17, 2023 9:45 am

Post by Toronto »

Daniel, det visade sig att jag inte hade kommandot 'at' installerat på min BubbaTwo... Drog in det som root med:

Code: Select all

apt-get install at
Ska testa igen med schemaläggningen...
Daniel
Posts: 317
Joined: Fri Mar 17, 2023 9:45 am

Post by Daniel »

Toronto wrote:Daniel, det visade sig att jag inte hade kommandot 'at' installerat på min BubbaTwo... Drog in det som root med:
Just det. Det var inte default på Bubba 1 heller. Försökte därför hålla mig till cron i möjligaste mån, men just motorvärmarfunktionen blev så mycket enklare med at...

/Daniel
Toronto
Posts: 54
Joined: Fri Mar 17, 2023 9:45 am

Post by Toronto »

Daniel, här kommer den begärda utskriften:

Code: Select all

bubba:/usr/bin#  crontab -u www-data -l
50 05 * * * /usr/bin//php /home/web/ha/tdtool.php task=4 status=1
50 08 * * * /usr/bin//php /home/web/ha/tdtool.php task=4 status=0
01 00 * * * /usr/bin/php /home/web/ha/updatetasks.php
bubba:/usr/bin# atq
bubba:/usr/bin# 
Jag tog bort och skapade om den schemalagda händelsen, därav något ändrade tider. Hoppas det hjälper...

Men inga köade jobb visas från 'atq'-kommandot??
Daniel
Posts: 317
Joined: Fri Mar 17, 2023 9:45 am

Post by Daniel »

Toronto wrote:Daniel, här kommer den begärda utskriften:
Hmmm... Vad var klockan när du körde det där?

Så här har vi konstruerat det: Två timmar före avfärd (dvs i ditt fall 05:05) kör cron igång tdtool.php. Där kollas vad det är för temperatur just nu. Är det riktigt kallt så slår motorvärmaren på direkt. Är det lite varmare (så den inte behöver vara på två timmar) så schemalägger den istället en engångshändelse med hjälp av at som sedan i sin tur slår på motorvärmaren lagom lång tid innan avfärd. Om det inte är svinigt kallt och du kör kommandot atq (som visar alla jobb schemalagda i at) strax efter 05:05 så borde den alltså returnera ett upplagt jobb.

/Daniel
Toronto
Posts: 54
Joined: Fri Mar 17, 2023 9:45 am

Post by Toronto »

Hmmm... Vad var klockan när du körde det där?
Äsch, glömde anteckna det... Men jag gör om det hela, tar först bort den schemalagda händelsen och skapar om den kl 10:27 för avfärd kl 12:30. Hoppas det funkar.


Code: Select all

bubba:/home/krra# date
lör feb 13 10:27:11 CET 2010

bubba:/home/krra# echo "Nytt event skapat för avfärd kl 12:30"
Nytt event skapat för avfärd kl 12:30

bubba:/home/krra# crontab -u www-data -l
30 10 * * * /usr/bin//php /home/web/ha/tdtool.php task=7 status=1
30 13 * * * /usr/bin//php /home/web/ha/tdtool.php task=7 status=0
01 00 * * * /usr/bin/php /home/web/ha/updatetasks.php

bubba:/home/krra# atq
1       Sat Feb 13 10:49:00 2010 a root

bubba:/home/krra#

bubba:/home/krra# date
lör feb 13 10:59:20 CET 2010

bubba:/home/krra# atq

bubba:/home/krra#

Förslag:
Det vore trevligt att kunna se den kommande händelserna i någon logg eller i en egen flik. Just för att kunna ha koll på vad som händer härnäst och när, speciellt i motorvärmarfallet eftersom den är något förskjuten och beroende av temperaturen.

Fråga 1:
Vad händer förresten om man tappar nätverkskontakten och man inte får in temperaturangivelsen från temperatur.nu?

Fråga 2:
Vid strömavbrott eller om starttiden redan passerats vid skapande av ny schemalagd händelse, kommer den/de schemalagda händelserna att kunna köras om starttiden redan passerats?


Sorry för kanonaden av frågor, men jag är rätt så nyfiken av mig och som professionell testare måste man kunna skapa realistiska scenarier... Visst, jag skulle kunna testa ovanstående, men man har ju pågående grejer som man inte vill avbryta... :-)
tom_rosenback
Posts: 779
Joined: Fri Mar 17, 2023 9:45 am
Contact:

Post by tom_rosenback »

Toronto wrote:
Hmmm... Vad var klockan när du körde det där?
Äsch, glömde anteckna det... Men jag gör om det hela, tar först bort den schemalagda händelsen och skapar om den kl 10:27 för avfärd kl 12:30. Hoppas det funkar.

Förslag:
Det vore trevligt att kunna se den kommande händelserna i någon logg eller i en egen flik. Just för att kunna ha koll på vad som händer härnäst och när, speciellt i motorvärmarfallet eftersom den är något förskjuten och beroende av temperaturen.

Fråga 1:
Vad händer förresten om man tappar nätverkskontakten och man inte får in temperaturangivelsen från temperatur.nu?

Fråga 2:
Vid strömavbrott eller om starttiden redan passerats vid skapande av ny schemalagd händelse, kommer den/de schemalagda händelserna att kunna köras om starttiden redan passerats?

Sorry för kanonaden av frågor, men jag är rätt så nyfiken av mig och som professionell testare måste man kunna skapa realistiska scenarier... Visst, jag skulle kunna testa ovanstående, men man har ju pågående grejer som man inte vill avbryta... :-)
En händelse lista är redan på TODO listan, dvs att kunna se nästa event, skippa nästa event och köra den direkt....

Om ingen temperatur finns att hämtas körs schemat 2h före avfärd.

Förtillfället så körs schemat igen först när starttiden "kommer på nytt".
//Tom

Senaste info och release om/av HomeAutomation hittas här http://karpero.mine.nu/ha
Latest info and release of HomeAutomation can be found here http://karpero.mine.nu/ha
Daniel
Posts: 317
Joined: Fri Mar 17, 2023 9:45 am

Post by Daniel »

Toronto wrote:Äsch, glömde anteckna det... Men jag gör om det hela, tar först bort den schemalagda händelsen och skapar om den kl 10:27 för avfärd kl 12:30. Hoppas det funkar.
Ja men berätta nu då. Funkade det?
Toronto wrote:Vid strömavbrott eller om starttiden redan passerats vid skapande av ny schemalagd händelse, kommer den/de schemalagda händelserna att kunna köras om starttiden redan passerats?
Nä, strömavbrott har vi inte räknat med några. Själv har jag ups på min server :D

Men det är klart, det vore ju snyggt om man körde någonting vid uppstarten som kollade över alla lampor och satte dem till rätt status...

/Daniel
Toronto
Posts: 54
Joined: Fri Mar 17, 2023 9:45 am

Post by Toronto »

neee, tyvärr...

Code: Select all

#  	Enhet  	Status  	Datum  	Användare  	IP
1 	Ute 1 	av 	Idag @ 13:30	system 	system
2 	Ute 1 	av 	Idag @ 10:24	system 	system
3 	Ute 1 	av 	Idag @ 08:50	system 	system
Bara frånslag, inga tillslag...
För säkerhets skull gick jag ett par ggr ut till bilen för att kontrollera, men kupévärmaren var dessvärre mycket riktigt inte igång då.

Jag fattar inte, skapar jag däremot en _statisk_ schemalagd händelse, så funkar det korrekt med både till- och frånslag!

Code: Select all

#  	Enhet  	Status  	Datum  	Användare  	IP
1 	Ute 1 	av 	Idag @ 17:35	system 	system
2 	Ute 1 	på 	Idag @ 17:33	system 	system

Mina schemalagda händelser:

Code: Select all

Typ  	 Aktiv  	 Namn  	 Dag(ar)  	 Tid  	 Enhet(er)  	  
Tempstyrd 	Alltid 	Bilen 	Alla 	12:30 	Alla 	
Statisk 	Alltid 	Test 	Alla 	17:33-17:35 	Alla 	

En liten detalj som jag reagerar över, är att sluttiden för den tempstyrda händelsen är satt till '12:30', medan frånslaget hände kl '13:30'?? Tidzon i servern är satt till CET, i HomeAutomation till GMT+1.

Edit:
duh, såg inte att användaren 'www-data' fanns i både /etc/at.allow och /etc/at.deny. typiskt, skit bakom spakarna...

Men nu kickar det hela igång som det ska, med reservation för sluttid eftersom det inte gått klart än...
Daniel
Posts: 317
Joined: Fri Mar 17, 2023 9:45 am

Post by Daniel »

Toronto wrote:En liten detalj som jag reagerar över, är att sluttiden för den tempstyrda händelsen är satt till '12:30', medan frånslaget hände kl '13:30'??
Nja, det där är så fiffigt så vi har satt att den ska slå av en timme efter avfärd. Så försover du dig en timma så är bilen varm ändå 8)

Tror det är någonting med at som skiter sig. Jag skulle vilja att du gör följande:

1. Ta följande kod och lägg in i en fil som du kallar för typ test.php eller någonting:

Code: Select all

<?php

$fh = fopen("/tmp/phpenv", 'w');

$result = print_r($_ENV, true);
$result .= print_r($_SERVER, true);

fwrite($fh, $result);

fclose($fh);

?>
2. Kör följande kommando inloggad som den användare apache kör som:

Code: Select all

echo "php /home/web/homeautomation/test.php" | at now
(fast med den där sökvägen i mitten utbytt mot var du nu la koden ovan).

3. Kolla vad som finns i filen /tmp/phpenv och posta det här.

Bakgrunden till detta testande är att vi har satt vissa spärrar på vem som får köra tdtool.php, för att man inte ska kunna surfa in direkt mot filen i sin webläsare och göra saker man inte ska. Jag misstänker att vi kanske spärrar ute din at från att köra filen. Och det är ju dumt :roll:

/Daniel
Toronto
Posts: 54
Joined: Fri Mar 17, 2023 9:45 am

Post by Toronto »

2. Kör följande kommando inloggad som den användare apache kör som:

Code: Select all

echo "php /home/web/homeautomation/test.php" | at now
(fast med den där sökvägen i mitten utbytt mot var du nu la koden ovan).

3. Kolla vad som finns i filen /tmp/phpenv och posta det här.

Bakgrunden till detta testande är att vi har satt vissa spärrar på vem som får köra tdtool.php, för att man inte ska kunna surfa in direkt mot filen i sin webläsare och göra saker man inte ska. Jag misstänker att vi kanske spärrar ute din at från att köra filen. Och det är ju dumt :roll:

/Daniel

Det är risk att jag editerade mitt förra inlägg med uppdatering om användaren i både /etc/at.allow och /etc/at.deny, samtidigt som du postade ditt inlägg...

Hur som helst, här kommer körningen:

Code: Select all

www-data@bubba:/home/krra/tellstick$ echo "php test.php" | at now
warning: commands will be executed using /bin/sh
job 3 at Sat Feb 13 19:58:00 2010
www-data@bubba:/home/krra/tellstick$ cat /tmp/phpenv
Array
(
    [OLDPWD] => /home/krra/tellstick
    [USER] => www-data
    [MAIL] => /var/mail/www-data
    [PATH] => /usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
    [PWD] => /home/krra/tellstick
    [LANG] => sv_SE.UTF-8
    [HOME] => /var/www
    [SHLVL] => 1
    [LOGNAME] => www-data
    [_] => /usr/bin/php
)
Array
(
    [OLDPWD] => /home/krra/tellstick
    [USER] => www-data
    [MAIL] => /var/mail/www-data
    [PATH] => /usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
    [PWD] => /home/krra/tellstick
    [LANG] => sv_SE.UTF-8
    [HOME] => /var/www
    [SHLVL] => 1
    [LOGNAME] => www-data
    [_] => /usr/bin/php
    [PHP_SELF] => test.php
    [SCRIPT_NAME] => test.php
    [SCRIPT_FILENAME] => test.php
    [PATH_TRANSLATED] => test.php
    [DOCUMENT_ROOT] =>
    [REQUEST_TIME] => 1266087492
    [argv] => Array
        (
            [0] => test.php
        )

    [argc] => 1
)
www-data@bubba:/home/krra/tellstick$
Hoppas det hjälper...
Toronto
Posts: 54
Joined: Fri Mar 17, 2023 9:45 am

Post by Toronto »

Förresten, jag kan inte minnas att jag skapat denna användare:

Code: Select all

Användarnamn  	Förnamn  	Efternamn  	Användarnivå
local 	        local 		              demo 	      Editera

Och inte heller kan jag ta bort användaren, bara editera??
Daniel
Posts: 317
Joined: Fri Mar 17, 2023 9:45 am

Post by Daniel »

Toronto wrote:Förresten, jag kan inte minnas att jag skapat denna användare:

Code: Select all

Användarnamn  	Förnamn  	Efternamn  	Användarnivå
local 	        local 		              demo 	      Editera

Och inte heller kan jag ta bort användaren, bara editera??
Det här är den så kallade local-användaren. Vi har gjort så att när man sitter hemma på sitt lokala nätverk så blir man automatiskt inloggad på homeautomation och då blir man inloggad som den användaren. Vi resonerade som så att det är dumt att radera den, men man kanske vill ändra vilken nivå den ska ha. Därför är den redigerbar men inte raderbar. Däremot kan man i 1.0 inte konfa vad som anses som "lokalt nätverk", vilket jag har föreslagit att man ska kunna göra i 1.1.

Men om jag förstår allting rätt så funkar det med motorvärmaren nu, eller hur?

/Daniel
Toronto
Posts: 54
Joined: Fri Mar 17, 2023 9:45 am

Post by Toronto »

Yes box, motorvärmaren funkar nu! Tack för hjälpen!

Ang det, kanske man ska lägga till i installationsinstruktionerna att kontrollera ifall man har tillgång till kommandot 'at'.

Ang den lokala användaren, så måste jag kontrollera en sak imorgon. vissa gånger när jag återkommit till webbsidan har jag inte kunnat kontrollera enheterna, o då har jag varit inloggad som den lokala användaren. Men detta testar jag imorgon...
Post Reply