Nest Thermostat tarixi ma'lumot yozuvchisi: 6 qadam (rasmlar bilan)
Nest Thermostat tarixi ma'lumot yozuvchisi: 6 qadam (rasmlar bilan)
Anonim
Nest Thermostat tarixi ma'lumot yozuvchisi
Nest Thermostat tarixi ma'lumot yozuvchisi

Nest termostati harorat, namlik va o'choq/AC ishlatilishini kuzatadi va foydalanuvchilar tarixiy ma'lumotlarni faqat 10 kun davomida ko'rishlari mumkin. Men tarixiy ma'lumotlarni to'plashni xohladim (> 10 kun) va google elektron jadvallar skriptiga duch keldim, u har bir vaqtda joylashadi va mahalliy ob -havo ma'lumotlarini openweathermap.org saytidan oladi va elektron jadvalda saqlaydi.

Bir yil davomida hammasi yaxshi ketayotgan edi va skript birdaniga ma'lumotlarni yig'ishni to'xtatdi. Google qidiruvidan so'ng, Google elektron jadvalining har 5 daqiqada bitta qatori Google elektron jadvalining joylashishi mumkin bo'lgan kataklarning maksimal chegarasiga to'g'ri kelishini tushunib etdim. Men asl skriptni Nest -ni har 5 daqiqada yangilash uchun yangiladim, lekin kuniga 1 qatorda ma'lumotlarni to'pladim. Skript oxirgi qatorni tekshiradi va agar u o'sha kuni bo'lsa, u yangi qator qo'shish o'rniga ma'lumotlarni bir qatorga qo'shadi.

Asl skript uchun kredit. Men o'z ehtiyojlarimga mos ravishda bir nechta tahrir qildim.

// Michael-Pesce ishi: https://gist.github.com/michael-pesce/a4ba55d4fc4…// BEEZLY ishi:

Kalit so'zlar: Nest Thermostat tarixi, Nest Heat, Nest Temperature History, Nest Thermostat Hack, Nest Thermostat Maslahatlari, Nest Energy History, Nest Daily Use, Nest Daily Use, Nest Termostat ma'lumotlarini yuklab olish

1 -qadam: Yangi Google varag'ini yarating (Mening umumiy elektron jadvalimni saqlang)

Yangi Google varag'i yarating (Mening umumiy elektron jadvalimni saqlang)
Yangi Google varag'i yarating (Mening umumiy elektron jadvalimni saqlang)

Quyida bog'langan umumiy Google varag'imdan boshlang (faylni oching va Fayl -ni bosing, keyin "nusxasini oling" va Google diskingizga saqlang).

P. S: Sizdan ushbu faylni tahrirlashga ruxsat berishimni so'ramang. O'zgartirishlar kiritishdan oldin, siz qila olmaysiz, chunki men buni faqat elektron jadval sifatida baham ko'rdim, o'zingizning Google diskingizda "nusxasini oling" va keyin tahrir qilishni davom eting.

docs.google.com/spreadsheets/d/1zTHUfiltWomhPYmfD3TYRRoJZsgcjrQ_A2xHSTK5_dE/edit?usp=sharing

Avtorizatsiya bilan bog'liq muammolarga duch kelganlarga: Quyidagi fayldagi skriptni sinab ko'ring. U Nest -ning yangi 2.0 avtorizatsiya protokollari bilan bog'liq qo'shimcha funktsiyalarga ega. Men buni sinab ko'rmadim, shuning uchun agar sizda biron bir savol yoki muammo bo'lsa, sharhlar bo'limiga yozing. Mcr2582 kredit.

www.dropbox.com/s/8rbtg7pb0xl9n9x/nest%20t…

Coder56 skriptining yana bir o'zgarishi: Sharhlar bo'limida qo'shimcha tafsilotlar. Men buni sinab ko'rmadim, lekin skript juda yaxshi tashkil etilgan va u ko'p foydalanuvchilar uchun yaxshi ishlayotganga o'xshaydi.

docs.google.com/spreadsheets/d/15bTn9_Cv9I…

2 -qadam: skriptni nusxalash

Agar siz Google -ning umumiy sahifasida nusxasini saqlagan bo'lsangiz, bu bosqichni o'tkazib yuboring.

  • Menyu satrida Skript muharririni ochish uchun Asboblar -> Skript muharriri … ni bosing (yangi oyna)
  • Skript muharririda barcha standart skriptlar/fayllarni o'chirib tashlang va yangisini yarating (men uni "NestScript.gs" deb ataganman)
  • To'liq matnni biriktirilgan fayldagi NestScript.gs -ga joylashtiring, so'ng Skriptni saqlang (bu qadam uchun, iltimos, 1 -qadamda baham ko'rgan google varag'idagi skriptdan foydalaning, agar siz bu faylga nusxasini saqlagan bo'lsangiz, siz Agar sizda bu fayl ochilgan bo'lsa, skript bo'limiga o'ting va matndan nusxa ko'chiring. Men bu bosqichga biriktirilgan skript matnli faylini o'chirib tashladim, chunki u eskirgan bo'lishi mumkin..).

3 -qadam: Veb -ilova sifatida joylashtiring

Veb -ilova sifatida joylashtiring
Veb -ilova sifatida joylashtiring
Veb -ilova sifatida joylashtiring
Veb -ilova sifatida joylashtiring
  • Menyu satrida Skript muharririni ochish uchun Asboblar -> Skript muharriri … ni bosing (yangi oyna)
  • Menyu satrida Nashr qilish -> Veb -ilova sifatida joylashtirish -ni bosing
  • "Ilovani men kabi ishga tushirish" -ni tanlang.
  • Ilovaga kim kirishi mumkinligini tanlang: "Hamma, hatto anonim"
  • Yangi veb -ilovangizga havolani hozircha nusxa ko'chiring/e'tiborga oling va u keyingi bosqichlarda quyida keltirilgan runDataCollection dasturiga (birinchi kod) qo'shiladi.

4 -qadam: Triggerlar

Triggerlar
Triggerlar
Triggerlar
Triggerlar
Triggerlar
Triggerlar

Bu erda siz tez -tez ma'lumotlarni to'plashni aniqlaysiz.

  • Menyu satrida "Hozirgi loyiha tetiklari" ni bosing
  • Yangi tetik qo'shish -ni bosing
  • Run uchun RunDataCollection, Events funktsiyasini tanlang: vaqtga bog'liq va qolganini xohlaganingizga qarab tanlang (men har 5 daqiqada qilaman)

5 -qadam: Qo'shimcha ma'lumotlar skriptda

Qo'shimcha ma'lumotlar skriptda
Qo'shimcha ma'lumotlar skriptda
Qo'shimcha ma'lumotlar skriptda
Qo'shimcha ma'lumotlar skriptda
Qo'shimcha ma'lumotlar skriptda
Qo'shimcha ma'lumotlar skriptda

Keling, skriptni sizning maxsus termostatingizga, shahar va google sahifangizga o'zgartiring.

Har bir o'zgarish skriptning qator raqami bilan ro'yxatga olinadi. Siz skriptda o'sha satrga o'tishingiz va quyida ko'rsatilgandek yangilanishingiz kerak bo'ladi. (40 -qator "runDataCollection () …" bo'lsa, qator raqamlari to'g'ri bo'lishi kerak).

  • 45 -qator: runDataCollection marshrutiga webapp havolasini qo'shing (Bu avvalgi qadamlardan birida siz qayd etgan)
  • 53 -qator: Foydalanuvchi nomi va parolni joylashtiring
  • 77 -qator: Termostatni qurilma identifikatori

Siz har bir termostatni identifikatorini Nest boshqaruv paneliga o'tish, Termostatni bosish, o'ng yuqori qismdagi tishli belgini bosish va "Seriya raqami" maydonini nusxalash orqali olishingiz mumkin. U shunday bo'ladi: 02XX01XX471XXX3S

90 -qator: Shahar identifikatori (bu satr ustidagi skriptdagi qo'shimcha ko'rsatmalar foydali bo'lishi mumkin.)

Shahar identifikatorini topish uchun "https://openweathermap.org/find?q=" manziliga o'ting va o'z shahringizni qidiring, shahar havolasini bosing va identifikator URL manzilidagi 7 xonali raqam bo'ladi.

103 -qator: Google varaq identifikatori (bu satr ustidagi skriptdagi qo'shimcha ko'rsatmalar foydali bo'lishi mumkin.)

Veb -sahifa identifikatorini URL manzilidan olish mumkin. Bu varaqdagi manzil identifikatorining manzilini ko'ring:

6 -qadam: Elektron jadvalni yakunlang

Agar siz mening umumiy jadvalimdan boshlagan bo'lsangiz, bu bosqichni o'tkazib yuboring.

Kodning ishlashi uchun bu ikki satr elektron jadvalda bo'lishi kerak.

Birinchi qator (Sarlavha qatori): Bo'shliq ustunlarni ajratadi

Sana/Vaqt Oy Kunduzi Yil Harorat Namlik Tashqarida Namlik Issiqlik_Usage AC_Usage Ob -havo AutoAway

Ikkinchi qator:

Birinchi ustunga kechagi sanani, qolgan ustunlarga nolni qo'shing.

Bu hammasi. Skriptni ishga tushiring va u kuniga bir qatorni qo'shishi va siz o'rnatgan tetik chastotasi bo'yicha ma'lumot uchun termostatni va mahalliy ob -havoni pinglashi kerak.

Agar veb -ilovani qayta joylashtirsangiz, yangi versiyadan foydalaning. Men skript ishlamayotgani bilan bir xil versiyalarni ishlatishda muammolarga duch keldim

Agar skript ishlamayotgan bo'lsa, avvalgi qadamlarni qayta ko'rib chiqing va skriptni ushbu qadamlar taklif qilganidek aniq yangilaganingizga ishonch hosil qiling. Bu skript ishlamayotganligi bilan bog'liq muammolarning eng katta sababi

Ma'lum muammolar (agar kimdir tuzatishni bilsa, sharhlar bo'limida javob bering):

1) Skript kun bo'yi uyadan ma'lumotlarni ololmaydi. Menda har 5 daqiqada mening tetikim bor, natijada kun davomida 288 marta o'qiladi. Men ~ 170 olaman. Men olgan eng past ko'rsatkich - 16, eng yuqori - 264.