Gå til innhold
  • Bli medlem
Støtt hjemmeautomasjon! 🥇🥈🥉

Anbefalte innlegg

Skrevet

@Moskus har et script som holder orden på offentlige fridager:

 

Dessverre holder ikke denne styr på dager du er hjemme utover de offentlige fridagene - sykedag, innklemt dag, vinterferie, høstferie, påskeferie, sommerferie, osv, osv. Dvs at hvis du bruker dette til å styre senking av temperatur når du er på jobb, så blir det veldig kaldt disse dagene! :( 

 

Min løsninger er å lage en egen Google Calendar for "huset", som jeg leser av via Google sitt API (med PHP) og oppdaterer HomeSeer utifra det.

Jeg kjører på Linux, men ser ingenting i veien for at samme løsning kan kjøres på Windows. :) 

 

PS: 

Dette bruker PHP fra kommandolinje, så man trenger ikke kjøre en webserver med PHP-støtte eller åpne noen porter i brannmurer, osv. :) 

 

1. Aller først, implementer @Moskus sitt script fra lenken over og sjekke at det virker.

 

2. Deretter er det bare følg denne guiden og se at du får tilgang til å lese ut data fra din primære Google-kalender:

https://developers.google.com/google-apps/calendar/quickstart/php

  Sitat

php quickstart.php
Upcoming events:
Test av API (2018-02-25T17:30:00+01:00)

Ekspander  

 

3. Så lager du en egen "hus-kalender".

Gå deretter inn på innstillinger for kalenderen og finn kalender-ID'en:

image.png.29767335b2f7ec520b9354285ca47dd3.png


4. Legg inn dette scriptet som "HomeSeer.php" (og rediger de 4 øverste linjene):

  Vis skjult innhold

5. Legg til et event i "hus-kalenderen" og sjekk at den listet opp når du nå kjører "php HomeSeer.php".

 

6. Sett opp følgende event:

image.thumb.png.305ca560ea908b7ba44d6b68cc2f99c4.png

 

Da skal "fridag"-devicen oppdateres seg basert på kalenderen i tillegg til faste fridager fra scriptet til @Moskus. :) 

  • Like 3
Skrevet

Ang eventet, ved nærmere ettertanke er det nok bedre å kjøre den 1 min over hver time. For om du er syk en morgen, så er det ikke sikkert du la inn det i kalenderen dagen før... :P 

  • 7 måneder senere...
Skrevet (endret)

Hmmm, dette lukter litt plugin mat. Iallefall den delen å kunne sjekke en Google kalender for inneværende dag.

Jeg har automatisert tidsstyrt oppvarming, men den er ikke konevennlig å overstyre.

Endret av Guahtdim
Skrevet
  Guahtdim skrev (På 5.10.2018 den 21.35):

Hmmm, dette lukter litt plugin mat. Iallefall den delen å kunne sjekke en Google kalender for inneværende dag.

Ekspander  

 

Ja, takk! :)

 

Det finnes en gData-plugin (tror den heter noe sånt), men den vedlikeholdes ikke lengre og jeg tror ikke den funker mot Google sin nye autentiseringsløsning...

Skrevet
  Guahtdim skrev (På 6.10.2018 den 10.47):

40$. Ikke så dyrt med tanke på hvor mange timer man bruker på en plugin. 

Ekspander  

 

Jeg brukte vel 1-2 timer på kalenderfunksjonen, så da var ikke 40$ verdt det. Særlig siden den ikke virker på mitt OS...

Skrevet

Jeg kan ikke garanterer at det jeg lager fungerer i *Nix. Jeg kjøre Win og skjønner svært lite av Linux (desverre). Men slik utviklingen er nå så er det ikke umulig at jeg må lære meg å bruke *nix.

Skrevet
  Guahtdim skrev (På 6.10.2018 den 14.19):

Jeg kan ikke garanterer at det jeg lager fungerer i *Nix. Jeg kjøre Win og skjønner svært lite av Linux (desverre). Men slik utviklingen er nå så er det ikke umulig at jeg må lære meg å bruke *nix.

Ekspander  

 

Jeg har inntrykk av at det meste virker på Linux (Mono), uten at man trenger gjøre noe spesielt. :) 

 

Jeg kjører flere plugins som ikke var testet på linux, men som bare virker. :) 

  • Like 1
Skrevet
  Guahtdim skrev (På 6.10.2018 den 14.19):

Jeg kan ikke garanterer at det jeg lager fungerer i *Nix. Jeg kjøre Win og skjønner svært lite av Linux (desverre). Men slik utviklingen er nå så er det ikke umulig at jeg må lære meg å bruke *nix.

Ekspander  

Så lenge du ikke bruker forferdelig avanserte biblioteker som benytter Windows-APIer så fungerer det aller meste helt fint på Linux. :) 

Skrevet (endret)

Etter å ha fått opp testsystemet mitt (Hyper-v 2008 server og HomeSeer 3.0.0.318 siden den kjører i 30 dager uten noen lisens) så laget jeg kjapt og brutalt en POC på å hente fra Google Calendar. Akkurat nå så leter den etter en eller flere kalender events med Test som overskrift/summary. Og den er avhengig av å ha en recurring event for å kjøre igang.

 

Jeg har bedt Zorac teste i linux hvis han gidder. Hvis noen andre har lyst til å teste noe som ikke engang kan beskrives som alfa så finner du den her (men ikke start med dette hvis du ikke er helt sikker på hva som skal gjøres) :

http://bit.ly/GCalPoc2018

 

NB: Ta gjerne en kopi av hele HomeSeer katalogen din før du begynner å gjøre noe! Skulle ting gå virkelig galt så er det så enkelt som å kopiere tilbake katalogen. 

 

Pakk ut filene i homeseer katalogen din. Du vil få følgende filer  der

HSPI_GCalendarSeerPOC.exe

HSPI_GCalendarSeerPOC.exe.config

HSPI_GCalendarSeerPOC.pdb

I homeseer/bin/GCalendarSeerPOC

vil du få ca 25 filer

 

For å komme igang må du gå inn på f.eks. følgende guide og gjøre punkt 1

https://developers.google.com/calendar/quickstart/php

slik at du får credentials.json. Denne filen må du legge inn i katalogen homeseer/bin/GCalendarSeerPOC.

 

Så setter du opp en recurring event som skjer f.eks. hvert minutt og sjekker mot kalender:

Event.png.ca86f8dbe019434bc73727eddbe11877.png

 

Når den begynner å kjøre vil det høyst sannsynligvis komme opp en webside hvor du må tillate at enheten åpner din kalender.

eks

Choose.png.d1e25bdaf2616ebd2d59722aaffd3e9d.png

 

Og etter å ha valgt konto trykker du på Allow

Allow.png.c6021335e82fe7e6f21eaf44a7bf913b.png

 

For at det skal slå ut må du ha en eller flere registrerte "events" kalenderen din med overskriften Test (Case-sensitivt søk) innenfor de neste 24 timer.

Calendar.png.5107704624959e9da992d765bdb0dc2e.png

Igjen: Ødelegger du noe hos deg selv med dette så tar jeg NULL ansvar.

 

 

Endret av Guahtdim
More docs
  • Like 2
  • 2 uker senere...

Bli med i samtalen

Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.

Gjest
Skriv svar til emnet...

×   Du har limt inn tekst med formatering.   Lim inn uten formatering i stedet

  Du kan kun bruke opp til 75 smilefjes.

×   Lenken din har blitt bygget inn på siden automatisk.   Vis som en ordinær lenke i stedet

×   Tidligere tekst har blitt gjenopprettet.   Tøm tekstverktøy

×   Du kan ikke lime inn bilder direkte. Last opp eller legg inn bilder fra URL.

×
×
  • Opprett ny...

Viktig informasjon

Vi har plassert informasjonskapsler/cookies på din enhet for å gjøre denne siden bedre. Du kan justere dine innstillinger for informasjonskapsler, ellers vil vi anta at dette er ok for deg.