Remote Rig

Webswitch 1216H Support på svenska => Allmänt diskussionsforum => Topic started by: nilrog on 2011-09-27, 08:08:35

Title: Styra uppvärmningsfunktionen via http
Post by: nilrog on 2011-09-27, 08:08:35
Går det att ändra inställningarna för uppvärmningsfunktionen via http? Jag hittar bara info om hur man kan styra relän, läsa temperaturer m.m. Det hade varit smidigt om man hade kunnat ändra åtminstone "Override" inställningarna via http.

/Roger
Title: Re: Styra uppvärmningsfunktionen via http
Post by: Jan (Microbit) on 2011-09-27, 20:28:31
Ska man vara en petig besserwisser så är det faktiskt så att allt ändras via HTTP ;) Det innebär att för den ambitiösa webbutvecklaren så är det "bara" att ta reda på vad som skickas från webbsidan och sen använda samma data (HTTP GET eller POST) från valfritt program. Jag förstår dock vad du är ute efter, ett beskrivet publikt "gränssnitt", något som inte finns som det ser ut nu. Tanken med hur det är gjort nu är att antingen är det Webswitchen som är "hjärnan" och kontrollerar reläerna eller så styr man reläerna från utsidan så att säga.

Jag kikade i alla fall som hastigast på hur det är gjort(kom inte ihåg det själv heller, hehe) och så här man kan göra:

http://[adress till Webswitch]/autoPrograms?i=[nollbaserat programindex]&m=[override operation]&ot=[ev tid, klockslag eller minuter]

"i" kan vara 0-19 = programrad 1-20. OBS att man måste klicka på "Show disabled programs" för att kunna se alla program och då kunna räkna sig fram till rätt nr.

"m" anger vilken operation man vill utföra. 255=Disabled, 0=Off, 1=On

"ot" anger ev tidsgräns för operationen. Kan lämnas tom=ingen gräns. Om ett tal anges = minuter, om timmar+minuter "TT:MM" anges i URL-kodat format = klockslag.  Ex är kl 20:24 = 20%3A24 i URL-kodat format.

Några exempel:

http://192.168.1.100:8123/autoPrograms?i=12&m=1&ot=60
= sätt On som Override på program nr 13(index 12) i 60 minuter

http://192.168.1.100:8123/autoPrograms?i=0&m=255&ot=
= Ta bort Override på program nr 1(index 0)

http://192.168.1.100:8123/autoPrograms?i=1&m=1&ot=20%3A24
= sätt On som Override på program nr 2(index 1) till klockan 20:24

Edit: Ser nu när jag läser igenom igen att du skriver "uppvärmningsfunktionen"! Menar du kanske motorvärmarstyrningen då?


Title: Re: Styra uppvärmningsfunktionen via http
Post by: nilrog on 2011-09-28, 09:14:14
Oops, såg just att jag lagt den här frågan i fel forum :P

Precis, det är motorvärmarstyrningen jag menade. Kom inte på något bättre namn när jag ställde frågan ::)

Jag förstår att tanken är att switchen ska vara hjärnan. Men min tanke var att göra ett lite mer lättanvänt gränssnitt för att ställa in tiden för motorvärmaren som passar min bättre hälft. Mao en enkel mobilanpassad sida där hon lätt kan ändra tiden om så behövs utan att behöva logga in i switchen via mobilen och navigera fram den vägen.

Jag har inte införskaffat någon switch själv ännu så jag kan inte gå in och snoka i HTML-koden. Därav mina frågor :)
Title: Re: Styra uppvärmningsfunktionen via http
Post by: Jan (Microbit) on 2011-09-28, 09:36:56
OK, så du tänker dig att det är olika tider för avfärd/färdig-tid mest hela tiden och att "override" blir mer regel än undantag? Motorvärmarstyrningens override ställs in med HTTP POST, så det är lite mer pillrigt att få till. Vad är det för mobiltyp? iphone, android? Annat?
Title: Re: Styra uppvärmningsfunktionen via http
Post by: nilrog on 2011-09-28, 10:34:15
Precis. Tiden kommer att vara olika varje dag, ibland inte någon tid alls, så baserat på hur jag tolkar att funktionen ser ut att fungera så stämmer det att "override" i princip blir det som kommer att användas hela tiden. Tanken är att ersätta ett vanligt tidur med den här webswitchen och att motorvärmarkabeln alltid får sitta i bilen. När man kommer på att man behöver bilen så tar man bara fram mobilen och ställer in tiden och bilen är varm när man behöver den :)

Mobilen är en iPhone och tanken är att göra ett enkelt gränssnitt som en "Webbapp" med HTML+Javascript där man bara ställer in avgångstiden så uppdateras switchen. Mao det man ser i switchens gränssnitt för "override" är det som jag vill kunna komma åt att styra via HTTP. Om det idag går att göra via HTTP POST så ska det inte vara något problem.
Title: Re: Styra uppvärmningsfunktionen via http
Post by: Jan (Microbit) on 2011-09-28, 10:59:17
Som sagt, allt man ställer in görs via HTTP POST/GET så då kan du nog klura ut en sådan sak rätt enkelt(Du verkar ju ha bra koll, hehe)
Title: Re: Styra uppvärmningsfunktionen via http
Post by: nilrog on 2011-09-28, 11:13:26
Okej, det låter lovande. Får ta och beställa hem en switch och labba lite :)

Tack för dina snabba svar!
Title: Re: Styra uppvärmningsfunktionen via http
Post by: Jan (Microbit) on 2011-09-28, 11:40:21
Hör gärna av dig när du har totat ihop nått. Vore kul att höra/se hur det gick/blev  ;)
Title: Re: Styra uppvärmningsfunktionen via http
Post by: nilrog on 2011-10-18, 13:19:45
Det blev lite besvärligare än jag trodde med en webbapp eftersom javascript har vissa säkerhetsbegränsningar. Man får nämligen bara kontakta den server som man hämtat skriptet från, vilket inte är webswitchen, och besvärligast är POST. Men det går att komma runt med en liten proxy och jag måste ändå ha en server snurrande där jag kan accessa webbappen så det ska nog inte vara något problem. Annat än med tiden för att fixa det :P

Jag har en prototyp med gränssnittet klar men har inte haft möjlighet att beställa någon switch ännu så det återstår att se om det går att få det att lira ihop.
Title: Re: Styra uppvärmningsfunktionen via http
Post by: Jan (Microbit) on 2011-10-18, 14:15:47
 ;D
Title: Re: Styra uppvärmningsfunktionen via http
Post by: nilrog on 2011-10-26, 21:48:43
Prototypen fungerar tillsammans med en proxy+webswitchen ;D
Title: Re: Styra uppvärmningsfunktionen via http
Post by: Jan (Microbit) on 2011-10-27, 08:26:08
Prototypen fungerar tillsammans med en proxy+webswitchen ;D
Kul! Hur funkar en Webbapp i iPhone? Är det en lokalt lagrad HTML-sida med Javascript? Funkar det bara på iPhone? (Jag gillar inte att vara "mainstream" så har ingen "iFån", haha!)
Title: Re: Styra uppvärmningsfunktionen via http
Post by: nilrog on 2011-10-27, 10:36:26
En webbapp är en HTML-sida med eller utan Javascript som man accessar via webbläsaren som sen sparas ner lokalt på den enhet man använder. Det fungerar mer eller mindre lika på alla webbläsare som stödjer HTML5 eller offline-cache. I mitt fall så har jag använt ett ramverk som stödjer en mängd olika plattformar, iPhone, iPad, Andriod m.m., förutom en viss komponent som än så länge efterlikar en komponent som är iPhone specifik. Tanken är att när jag är klar så ska alla script/bilder/html m.m. sparas ner på enheten vid första besöket så att den inte behöver hämta hem det varje gång. Efter det så är det bara ren kommunikation mot webswitchen.

Enda nackdelen med en webbapp är som jag nämnde tidigare att webbläsaren inte får kontakta någon annan server än den som man har laddat hem webbsidan från. I det här fallet är det inte webswitchen så den server som jag har webbsidan på måste ha en proxy som kan slussa kommunikationen vidare från webbappen till webswitchen.

Det verkar som att man kan gå runt kravet på proxy om man bara klarar sig med GET men i det här fallet så används POST och då fungerar det inte. Idealet hade varit om man kunde signera en webbapp men den enda webbläsare som verkar stödja något sådant i dagsläget är Firefox.
Title: Re: Styra uppvärmningsfunktionen via http
Post by: Jan (Microbit) on 2011-10-27, 10:47:01
Ok. Då är webbapp:ar i Nokia, som jag gjort några, i princip samma sak som i iPhone då. Vilket ramverk har du använt dig av?
Title: Re: Styra uppvärmningsfunktionen via http
Post by: nilrog on 2011-10-27, 10:56:35
http://jquerymobile.org/ (http://jquerymobile.org/) just nu iaf.

Tänkte att om jag ska försöka göra det här som en webbapp så kan jag lika gärna försöka göra det med något som inte blir iPhone specifikt. Även om jag aldrig kommer att skaffa någon annan mobil ;)
Title: Re: Styra uppvärmningsfunktionen via http
Post by: Samuel on 2011-10-30, 17:51:08
@ nilrog
Intressant läsning! Köpte en webswitch av just den anledningen som du beskriver, att kunna sätta på motorvärmaren smidigt med telefonen!
Är mycket intresserad av hur utvecklingen blir av det här.


@microbit
Tyvärr funkar inte android-appen för mig, force close när jag försöker ansluta. Men vad jag har förstått så finns inte motorvärmardelen i appen än. Kommer sådana här funktioner att finnas i kommande appar?
Title: Re: Styra uppvärmningsfunktionen via http
Post by: Jan (Microbit) on 2011-10-31, 08:24:49
Samuel: Vilken version av Webswitch köpte du? Den "vanliga" eller den "utökade"?
Title: Re: Styra uppvärmningsfunktionen via http
Post by: Samuel on 2011-10-31, 09:11:34
Den utökade!

Jag kan se temperaturen i appen, eller snarare kunde. Nu får jag force close så fort jag startar appen. Kör Htc Legend med 2.2
Title: Re: Styra uppvärmningsfunktionen via http
Post by: Jan (Microbit) on 2011-10-31, 10:13:31
Den utökade!

Jag kan se temperaturen i appen, eller snarare kunde. Nu får jag force close så fort jag startar appen. Kör Htc Legend med 2.2
OK. Jag frågade eftersom vår app ännu inte stöder manövrering av motorvärmaren(förutsatt att den funkar förstås). Vi ska kika på vad som felar med appen. Problemet är lite som vanligt, dvs det funkar för oss, men krånglar "ute på fältet".
Title: Re: Styra uppvärmningsfunktionen via http
Post by: Samuel on 2011-10-31, 10:56:13
Det som jag efterfrågar är en smidig sätt att kunna styra av/på relän/nexa, eller programmen. Programmen kan man sätta upp i datormiljö.
Men framförallt styrning av motorvärmaren. Jag som jobbar väldigt oregelbundet vill kunna ställa in avfärdstiden när jag lagt mig i sängen och sätter klockan på ringning. Jag behöver ingen veckostyrning utan vill ha chansen att även kunna styra med ett dygns framförhållning. Därav blev jag intresserad av den här tråden. Men kan ni få till nåt i en app så vore det till det bättre!

Ser fram emot en bra app, det skulle lyfta webswitchen för mig som användare och förmodligen medföra fler sålda enheter för er!

Behöver ni betatestare så finns jag här!
Title: Re: Styra uppvärmningsfunktionen via http
Post by: nilrog on 2011-11-01, 12:28:37
Går det att fråga webswitchen vad nuvarande inställning för "override" på motorvärmaren är inställd på utan att hämta hela sidan och gräva fram det där?

Sen verkar det som att webswitchen svarar positivt även när man skickar felaktig data för motorvärmaren via POST. Kan det stämma?
Title: Re: Styra uppvärmningsfunktionen via http
Post by: Jan (Microbit) on 2011-11-01, 14:06:12
Går det att fråga webswitchen vad nuvarande inställning för "override" på motorvärmaren är inställd på utan att hämta hela sidan och gräva fram det där?

Sen verkar det som att webswitchen svarar positivt även när man skickar felaktig data för motorvärmaren via POST. Kan det stämma?
Som programmet i Webswitchen funkar nu så finns inget enkelt sätt att få fram den infon (och inte heller att sätta den som du har sett). Detta behov du och andra har är dock en bra grej, så vi kommer att utöka GET-HTTP-api:et till att inkludera  även detta.

Eftersom du använder ett sätt att skicka in data som inte är "officiellt" så sker inte heller felkontroller på samma sätt som i det "publika" HTTP-GET-api:et.
Title: Re: Styra uppvärmningsfunktionen via http
Post by: nilrog on 2011-11-01, 14:28:07
Super! Det kommer att underlätta avsevärt om det går att läsa/styra motorvärmarfunktionen via GET :)
Title: Re: Styra uppvärmningsfunktionen via http
Post by: nilrog on 2011-11-28, 10:21:34
Såg att v1.24 är ute nu och har GET support :)