Përmbajtje:
2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-13 06:58
Termostati Nest ndjek temperaturën, lagështinë dhe përdorimin e furrës/AC dhe përdoruesit janë në gjendje të shohin të dhënat historike vetëm për 10 ditë. Doja të mblidhja të dhëna historike (> 10 ditë) dhe hasa në skenarin e fletëpalosjeve të Google që vendos fole në çdo kohë dhe gjithashtu merr të dhëna lokale të motit nga openweathermap.org dhe ruan në spreadsheet.
Gjithçka po shkonte mirë për një vit, dhe skenari papritmas ndaloi mbledhjen e të dhënave. Pas një kërkimi në Google, kuptova se një rresht çdo 5 minuta për google spreadhseet do të thotë të godasësh kufirin maksimal të qelizave që një spreadsheet i Google mund të strehojë. Përditësova skenarin origjinal për të bërë ende ping Nest çdo 5 minuta, dhe mblidhja të dhëna në 1 rresht në ditë. Skenari kontrollon rreshtin e fundit dhe nëse është e njëjta ditë, atëherë i shton të dhënat në të njëjtën rresht në vend që të shtojë një rresht të ri.
Merita për skenarin origjinal. Unë thjesht bëra disa modifikime që i përshtaten nevojave të mia.
// Puna e Michael-pesce: https://gist.github.com/michael-pesce/a4ba55d4fc4…// Puna e BEEZLY:
Fjalët kyçe: Historia e Nest Thermostat, Nest Heat, Nest Temperature History, Nest Thermostat Hack, Këshilla Nest Thermostat, Nest Energy History, Nest Daily Use, Nest Përdorimi Ditor, Shkarkimi i të dhënave të termostatit të folesë
Hapi 1: Krijoni një fletë të re të Google (Bëni një kursim si në fletën e shpërndarë të punës sime)
Filloni me fletën time të përbashkët të google të lidhur më poshtë (Hapeni atë skedar dhe klikoni Skedar dhe më pas "bëni një kopje" dhe ruani në google drive tuaj).
P. S: Mos më kërkoni që t'ju jap lejen për të redaktuar këtë skedar. Para se të bëni ndonjë ndryshim, të cilin nuk do të mund ta bëni sepse e kam ndarë këtë si një fletëllogaritëse vetëm për lexim, bëni një "bëni një kopje" në pajisjen tuaj të Google dhe më pas vazhdoni me bërjen e redaktimeve.
docs.google.com/spreadsheets/d/1zTHUfiltWomhPYmfD3TYRRoJZsgcjrQ_A2xHSTK5_dE/edit?usp=sharing
Për njerëzit që kanë probleme me autorizimin: Provoni skriptin në skedarin e mëposhtëm. Ai ka funksionalitet shtesë që lidhet me protokollet e reja të autorizimit 2.0 të Nest. Unë nuk e kam provuar, kështu që nëse hasni ndonjë pyetje ose çështje, ju lutemi postoni në seksionin e komenteve. Kredia për mcr2582.
www.dropbox.com/s/8rbtg7pb0xl9n9x/nest%20t…
Një tjetër ndryshim i shkrimit nga Coder56: Detaje shtesë në pjesën e komenteve. Unë nuk e kam provuar, por skenari është i organizuar shumë mirë dhe duket se punon mirë për shumë përdorues.
docs.google.com/spreadsheets/d/15bTn9_Cv9I…
Hapi 2: Kopjoni skenarin
Kaloni këtë hap nëse keni ruajtur një kopje në fletën time të përbashkët të google.
- Në shiritin e menysë klikoni Veglat -> Script Editor… për të hapur Script Editor (dritare e re)
- Në Script Editor fshini të gjithë skriptet/skedarët e paracaktuar dhe krijoni një të ri (e quajta "NestScript.gs")
- Pritini dhe ngjitni të gjithë tekstin nga skedari i bashkangjitur në NestScript.gs, pastaj RUAJ SHKRIMIN (Për këtë hap, ju lutemi përdorni skriptin nga fleta e google që kam ndarë në hapin 1. Nëse keni ruajtur një kopje në atë skedar, ju duhet të ketë tashmë skriptin. Nëse nuk e keni, mund ta hapni atë skedar dhe të shkoni në seksionin e skriptit dhe të kopjoni tekstin. Unë fshiva skedarin e tekstit të shkrimit që i ishte bashkangjitur këtij hapi pasi nuk ishte i përditësuar dhe mund të krijojë konfuzion.).
Hapi 3: Vendoseni si aplikacion në internet
- Në shiritin e menysë klikoni Veglat -> Script Editor… për të hapur Script Editor (dritare e re)
- Në shiritin e menusë klikoni Publiko -> Vendoseni si Web App
- Zgjidhni "Ekzekutoni aplikacionin si unë"
- Zgjidhni Kush ka qasje në aplikacion: "Çdokush, madje edhe anonim"
-
Kopjoni/mbani shënim lidhjen me aplikacionin tuaj të ri në internet tani për tani, dhe do të shtohet në rutinën runDataCollection më poshtë (kodi i parë) në hapat e mëvonshëm.
Hapi 4: Shkakton
Këtu ju përcaktoni sa shpesh mblidhni të dhëna.
- Në shiritin e menysë klikoni Shkaktarët aktualë të projektit
- Klikoni shtoni një shkas të ri
- Për Run, zgjidhni funksionin runDataCollection, Events: i drejtuar nga koha, dhe zgjidhni pjesën tjetër sipas preferencës tuaj (e bëj çdo 5 minuta)
Hapi 5: Informacion shtesë në Script
Le të modifikojmë skriptin në termostatin tuaj specifik, qytetin dhe fletën e Google.
Çdo ndryshim është i shënuar me një numër linje të shkrimit. Ju do të duhet të shkoni në atë linjë në skenar dhe të azhurnoni siç udhëzohet më poshtë. (Numrat e linjave duhet të jenë të saktë nëse rreshti 40 është "runDataCollection () …").
- Linja 45: shtoni lidhjen webapp në drejtimin runDataCollection (Kjo është ajo që keni vërejtur në një nga hapat e mëparshëm)
- Linja 53: Nest username dhe password
- Linja 77: ID e pajisjes termostat
Mund të marrësh id -në për secilin termostat duke shkuar te pulti i Nest, duke klikuar në Termostat, duke klikuar në ikonën e ingranazheve në të djathtën e sipërme dhe më pas duke kopjuar fushën "Nr serial".. Do të duket diçka si: 02XX01XX471XXX3S
Linja 90: ID e qytetit (udhëzimet shtesë në shkrimin mbi këtë rresht mund të jenë të dobishme.)
Për të gjetur ID -në e qytetit shkoni te "https://openweathermap.org/find?q=" kërkoni për qytetin tuaj, klikoni në lidhjen e qytetit dhe ID -ja do të jetë numri 7 shifror në URL
Linja 103: ID -ja e fletës së Google (udhëzimet shtesë në skriptin mbi këtë rresht mund të jenë të dobishme.)
Id -ja e Fletës mund të kapet nga URL -ja e shee Shikoni këtë model për vendndodhjen e Fletës në URL:
Hapi 6: Përfundoni Spreadsheet
Kaloni këtë hap nëse filluat me spreadsheet -in tim të përbashkët.
Këto dy rreshta duhet të jenë në spreadsheet që kodi të funksionojë.
Rreshti i parë (Rreshti i kokës): Hapësira ndan kolonat
Data/Koha Muaji Dita Viti Temp Lagështia Jashtë Temperatura Jashtë Lagështia Nxehtësia_Përdorimi AC_Përdorimi i motit AutoAway
Linja e dytë:
Shtoni datën e djeshme në kolonën e parë dhe zerot në kolonat e mbetura.
Kjo është ajo. Lëreni skenarin të funksionojë dhe duhet të shtojë një rresht në ditë dhe të pingon termostatin tuaj dhe motin lokal për të dhëna sipas frekuencës së shkyçjes që keni vendosur.
Nëse rishpërndani webapp -in, përdorni rishikimin e ri. Kisha probleme duke përdorur të njëjtat rishikime me skriptin që nuk funksiononte
Nëse skenari nuk po funksionon, kaloni përsëri hapat e mëparshëm dhe sigurohuni që e keni përditësuar skriptin siç sugjerohet nga këto hapa me saktësi. Ky është shkaku më i mundshëm i problemit me skriptin që nuk funksionon
Çështje të njohura (Nëse dikush e di rregullimin, ju lutemi përgjigjuni në pjesën e komenteve):
1) Skenari nuk arrin të marrë të dhëna nga foleja gjatë gjithë ditës. Unë kam këmbëzën time çdo 5 minuta, e cila duhet të rezultojë në gjithsej 288 lexim gjatë gjithë ditës. Unë marr 170 ~. Më e ulta që kisha marrë është 16 dhe më e larta është 264.