Turinys:
- Prekės
- 1 veiksmas: sąranka
- 2 žingsnis: veidrodžio montavimas
- 3 žingsnis: konfigūravimas
- 4 žingsnis: API
- 5 veiksmas: kalendorius
- 6 veiksmas: „Google“API
- 7 žingsnis: veidrodžio dizainas
- 8 žingsnis: laidų sujungimas
- 9 veiksmas: kodo paleidimas
- 10 žingsnis: paleiskite veidrodį
Video: Kelių vartotojų išmanusis veidrodis su „Google“kalendoriumi: 10 žingsnių
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:46
Šioje instrukcijoje mes sukursime išmanųjį veidrodį, integruotą su „Google“kalendoriumi. Aš sukūriau šį projektą, nes man atrodo, kad išmanieji veidrodžiai yra tikrai šaunūs, jie yra dievobaimė ryte. Bet aš nusprendžiau padaryti vieną iš nulio, nes visi kiti turi 1 trūkumą. Jie per daug pažengę ir netvarkingi. Aš nusprendžiau išlaikyti tai paprasta.
Prekės
Prieš
pradėsime tai yra dalykai, kurių jums tikrai reikės norint sukurti tokį veidrodį kaip mano. Šios prekės kainuos apie 250–350 eurų, priklausomai nuo jūsų regiono ir dabartinių kainų.
Techninė įranga
Jutikliai
- Vieno laido temperatūros jutiklis
- RWCL 0516 (mikrobangų judesio jutiklis)
- Minkštas potenciometras (jutiklinė juosta iš „Sparkfun“)
Kompiuterija
ir IC
- Garsiakalbis (3,2 W esant 4Ω arba 1,8 W esant 8Ω)
- MCP3008
- Adafruit I2S 3W D klasės stiprintuvas Breakout - MAX98357A
- Raspberry Pi 3 B+
- SD kortelė (tinka 8 GB)
- Rezistorius 4,7K omų
Įvairūs
- Džemperiai
- Bandomoji Lenta
- Akrilo dviejų krypčių veidrodis (15% šviesos pralaidumas)
- IPS monitorius (dydis priklauso nuo to, kokio dydžio norite)
- HDMI kabelis
- Mediena
Programinė įranga
- PuTTY
- Kodo redaktorius (pakanka „Notepad ++“)
- „Win32“disko vaizdavimo priemonė
- Raspbian OS vaizdas
1 veiksmas: sąranka
Norėdami pradėti, pirmiausia turėsime nustatyti jūsų Pi pagal mano sukurtą kodą.
Jums reikės dviejų dalykų:
- „Win32 Disk Imager“iš
- Raspbian OS vaizdas iš
Atsisiųskite ZIP failą ir išskleiskite jį ten, kur norite.
Įrengimas
- Pasirinkite vaizdą naudodami aplanko piktogramą
- Išskleidžiamajame meniu pasirinkite SD kortelę
- Spustelėkite rašyti
Dabar turėsime šiek tiek papildomai atlikti tam tikrus nustatymus, kad galėtume pasiekti „Pi“.
- Eikite į SD kortelės įkrovos katalogą
- Atidarykite failą „cmdline.txt“
- Pridėkite ip = 169.254.10.1 Ilgos teksto eilutės pabaigoje, atskirtą tarpais (toje pačioje eilutėje).
- Išsaugokite failą.
- Tame pačiame kataloge sukurkite failą pavadinimu ssh be plėtinio
Dabar galite išimti SD kortelę ir įdėti ją į „Pi“.
Jungiamasi
Dabar turėsime nustatyti programinę įrangą.
Pirmiausia prijunkite LAN kabelį, vieną galą į darbalaukį/nešiojamąjį kompiuterį, o kitą - į „Pi“.
Dabar paleiskite „Raspberry Pi“.
- Įdiekite „Putty“iš
- IP laukelyje įveskite 169.254.10.1.
- Įsitikinkite, kad pasirinktas SSH ir užpildytas 22 prievadas.
- Spustelėkite atidaryti
- Įveskite vartotojo vardą: pi
- Įveskite slaptažodį: aviečių
Raspi-config
Atidarykite „Raspi-config“įrankį naudodami:
sudo raspi-config
Įjunkite šias sąsajų kategorijos parinktis
- 1 laidas
- SPI
Pasirinkite savo „WiFi“šalį per lokalizacijos kategoriją.
Tada išjunkite šias parinktis įkrovos parinkčių kategorijoje
Ekrano užsklanda
Galiausiai nustatykite darbalaukio/CLI nustatymą įkrovos parinkčių kategorijoje į „Desktop Autologin“.
Bevielis internetas
Norėdami veidrodžio, turime turėti „Wi -Fi“ryšį, todėl įsitikinkite, kad jūsų „Wi -Fi“prisijungimo duomenys yra uždaryti.
Eikite į šakninį režimą
sudo -i
Įklijuokite šią eilutę, tačiau įsitikinkite, kad abu SSID ir slaptažodis yra užpildyti
wpa_passphrase "SSID" "PASSWORD" >> /etc/wpa_supplicant/wpa_supplicant.conf
Įveskite WPA klientą.
wpa_cli
Pasirinkite sąsają
sąsaja wlan0
Iš naujo įkelti konfigūraciją
perkonfigūruoti
Įveskite, kad įsitikintumėte, jog prisijungėte teisingai …
ip a
… ir pamatyti, ar turite IP WLAN0 sąsajose.
Paketai
Dabar, kai esame prisijungę prie interneto, turėsime įdiegti kai kuriuos paketus.
Pirmiausia turime atnaujinti naujausių paketų sąrašus.
sudo apt atnaujinimas
Python
Mes priversime „Raspbian“naudoti „Python 3“
update-alternatives-install/usr/bin/python python /usr/bin/python2.7 1
atnaujinimo alternatyvos-įdiegti/usr/bin/python python/usr/bin/python3 2
MariaDB
Norėdami įdiegti duomenų bazę, įklijuokite šią eilutę.
sudo apt įdiegti mariadb-server
Tada turėsime apsaugoti savo diegimą.
mysql_secure_installation
Jis paprašys mūsų dabartinio pagrindinio slaptažodžio, nes jo neturime, tiesiog paspauskite „Enter“.
Toliau klausiama, ar norime įvesti pagrindinio slaptažodžio tipą y, nes mes jo norime.
Norėdami gauti kitų klausimų, tiesiog įveskite Y.
Galiausiai sukursime naudotoją, kurį galėsime naudoti veidrodžiui.
Įveskite „mysql“apvalkalą atlikdami šiuos veiksmus:
Pakelkime save į šaknis
sudo -i
Įveskite „mysql“apvalkalą
mysql
Pakeiskite savo vartotojo vardu ir tą patį su
suteikti visas privilegijas veidrodžiui.* iki ''@'%' pažymėtas '';
Dabar mes išplauname leidimų lentelę.
PLŪŠIMO PRIVILEGIJOS;
„Apache“žiniatinklio serveris
Norėdami įdiegti tinklalapio serverį, vykdykite žemiau esančią eilutę.
sudo apt įdiegti apache2 -y
Python paketai
Mes ketiname įdiegti šiuos paketus
- Kolba
- Kolbos-kamšteliai
- Kolba-MySQL
- Kolba-lizdasIO
- „PyMySQL“
- Kolbinis-talismanas
- Geventas
- Gevent-websocket
- „Google-api-python-client“
- „Google“aut
- „Google-auth-httplib2“
- „Google-auth-oauthlib“
- Httplib2
- Icalendar
- Icalevents
- Oauthlib
- „Python-socketio“
- Prašymai
- Wsaccel
- Ujsonas
Darant
pip install Flask Flask-Cors Flask-MySQL Flask-SocketIO PyMySQL kolba-talismanas gevent gevent-websocket google-api-python-client google-auth google-auth-httplib2 google-auth-oauthlib httplib2 icalendar icalevents oauthlib užklausos
Garsiakalbių sąranka
curl -sS https://raw.githubusercontent.com/adafruit/Raspberry-Pi-Installer-Scripts/master/i2samp.sh | mušti
Dabar turime paleisti iš naujo, todėl paspauskite y.
Pakartokite scenarijų
curl -sS https://raw.githubusercontent.com/adafruit/Raspberry-Pi-Installer-Scripts/master/i2samp.sh | mušti
Dabar turime iš naujo paleisti antrą kartą
sudo perkraukite
Ekranas (monitorius)
Priklausomai nuo to, kaip norite ekrano išdėstymo, galite pasukti ekraną.
Norėdami pasukti ekraną, turime pasiekti įkrovos parinktis atlikdami šiuos veiksmus:
sudo nano /boot/config.txt
Tada įklijuokite vieną iš šių eilučių konfigūracijos faile:
rodymo_sukimas = 0
rodymo_sukimas = 1
rodymo_sukimas = 2
rodymo_sukimas = 3
Pirmasis, 0, yra įprasta konfigūracija. 1 Bus 90 laipsnių, 2 yra 180 laipsnių, o paskutinis bus 270 laipsnių.
Tada paleiskite iš naujo.
sudo perkraukite
2 žingsnis: veidrodžio montavimas
Dabar sukursime vietą, kur atsisiųsti mano kodą.
cd/home/pi/
git klonas https://github.com/nielsdewulf/Mirror MirrorProject cd MirrorProject
Dabar nukopijuosime kai kuriuos aplankus į teisingą paskirties vietą
sudo cp -R frontend/mirror//var/www/html/mirror/
sudo cp -R frontend/prietaisų skydelis//var/www/html/Sudo cp -R backend//home/pi/Mirror/
Duomenų bazės įdiegimas yra būtinas žingsnis kuriant projektą.
sudo mysql -u root -p << CREATEDATABASE.sql
3 žingsnis: konfigūravimas
Konfigūracijos failas yra:
sudo nano /home/pi/Mirror/resources/config.ini
Įveskite MYSQL vartotoją ir slaptažodį.
Tai turi būti ką tik sukurtas „mysql“vartotojas.
Kiti nustatymai, kuriuos vėliau apžvelgsime, yra instrukcija.
4 žingsnis: API
Dabar baigėme „Pi“diegimą, apimsime keletą temų, kurias galbūt norėsite padaryti.
Tamsus dangus
Sukurkite „Darsky“API raktą per
Kai užsiregistruosite, prietaisų skydelyje pamatysite savo API raktą.
Įveskite šį raktą prieš tai įdiegto veidrodinio projekto konfigūracijos faile.
Kalendorius
Pagal numatytuosius nustatymus kalendoriui peržiūrėti galėsite naudoti tik URL. Tačiau ši dalis bus apie tai, kaip susieti veidrodį su „Google“ekosistema. Paprastai tai ilgesnis ir skausmingesnis procesas.
Dalykai, kurių jums tikrai reikės
Domeno vardas
Tai yra dalykai, kuriuos nustatysime šios dalies metu
- „CloudFlare“paskyra
- „Google“kūrėjo paskyra
- „Google“kūrėjų projektas
- Nustatykite kalendoriaus API
5 veiksmas: kalendorius
„Cloudflare“
Nustatykite „cloudflare“paskyrą iš https://cloudflare.com ir vykdykite vedlį, kad perkeltumėte savo domeno vardą į „Cloudflare“DNS.
Nereikia patiems susikurti A įrašo, rodančio į aviečių pi. Mano veidrodinis kodas tai padarys už jus. Kadangi daugelyje namų ūkių „Wi -Fi“IP nėra statiški, todėl iš naujo paleidus jis gali nebeveikti. Kad mano kodas automatiškai atnaujintų IP, jums reikės paskyros API rakto.
- Dešinėje pusėje esančiame prietaisų skydelyje spustelėkite mygtuką Gauti API raktą. [1 nuotrauka]
- Slinkite žemyn ir peržiūrėkite „Global API“raktą. [2 nuotrauka]
Įveskite šį raktą prieš tai įdiegto veidrodinio projekto konfigūracijos faile.
SSL sertifikato kūrimas
„Google“reikalauja, kad turėtume SSL ryšį. Norėdami pradėti šį skyrių, įsitikinkite, kad teisingai nustatėte „Cloudflare“DNS.
Pirmiausia pridėkite saugyklą.
sudo add-apt-saugykla ppa: certbot/certbot
Atnaujinkite paketų sąrašą.
sudo apt-get atnaujinimas
Įdiekite „CertBot“
sudo apt įdiegti python-certbot-apache
Pradėkite kurti sertifikatą. Dar kartą turėsite užpildyti teisingą domeno pavadinimą.
sudo certbot --apache -d example.com -d www.example.com
Po sukūrimo jis paklaus, ar jis turėtų peradresuoti visus ryšius į SSL. Pasirinkite peradresavimą.
Dabar jis jums pasakys, kad sėkmingai sukūrė jūsų domeno sertifikatą. Būtinai išsaugokite 2 jo pateiktus kelius.
- /etc/letsencrypt/live/example.com/cert.pem
- /etc/letsencrypt/live/example.com/privkey.pem
Dabar eikite į aplanką su sertifikatais:
Būtinai pakeiskite example.com į tinkamą prieglobą.
cd /etc/letsencrypt/live/example.com/
Dabar nukopijuokime šį turinį į mūsų projekto aplanką.
cp cert.pem /home/pi/Mirror/resources/certs/cert.pem
Ir
cp privkey.pem /home/pi/Mirror/resources/certs/privkey.pem
Prijunkite „Apache“prie savo domeno
Norėdami teisingai sukonfigūruoti „Apache“su savo domenu, turėsime sukurti konfigūracijos failą. Būtinai įveskite savo domeno pavadinimą, pavyzdžiui, funergydev.com.
sudo nano /etc/apache2/sites-enabled/example.com.conf
Tada įklijuokite jį į failą. Pakeiskite example.com savo domeno pavadinimu.
Įsitikinkite, kad sertifikatas ir privatus raktas yra teisingas kelias. Nustatykite juos tuo keliu, kurį išsaugojote anksčiau, kai kūrėme, tada naudodami „certbot“.
DocumentRoot "/var/www/html/" SSLEngine on SSLCertificateFile /home/pi/Mirror/resources/certs/cert.pem SSLCertificateKeyFile /home/pi/Mirror/resources/certs/privkey.pem # Kitos direktyvos čia Parinktys Indeksai SekiteSymLink AllowOver Visi Reikalauti viską
Dabar turime įjungti kai kuriuos pakeitimus ir priversti „Apache“iš naujo įkelti konfigūraciją atlikdami šiuos veiksmus:
sudo a2enmod ssl
sudo a2enmod perrašyti
sudo systemctl iš naujo įkelti apache2
Dabar turėtumėte turėti galimybę per savo domeno pavadinimą pereiti prie savo pi ir pamatyti numatytąjį apache puslapį.
6 veiksmas: „Google“API
Eikite į kūrėjų pultą apsilankę
1 dalis
Sukurkite savo pirmąjį projektą spustelėdami šalia „Google“API logotipo ir spustelėdami mygtuką NAUJAS PROJEKTAS. Įveskite tinkamą projekto pavadinimą ir spustelėkite mygtuką „Sukurti“. [1 nuotrauka]
2 dalis
Dabar pateksite į šį puslapį. Spustelėkite bibliotekos mygtuką. [2 nuotrauka]
Tai didelis sąrašas visų API, kurias galėtumėte naudoti, bet mes ieškosime „Google“kalendoriaus API. Spustelėkite jį ir paspauskite ĮJUNGTI. [3 nuotrauka]
Tada pasieksite kalendoriaus API apžvalgą. Spustelėkite „Google“API logotipą, kad grįžtumėte prie savo projekto. [4 nuotrauka]
3 dalis
Norėdami viską teisingai nustatyti, spustelėkite įgaliojimų kategoriją ir pasirinkite skirtuką Domeno patvirtinimas.
Čia turėsite patvirtinti savo domeno vardą.
- Spustelėkite PRIDĖTI DOMENĄ
- Užpildykite savo domeną
- Tada jis paprašys patvirtinti jūsų domeną. Spustelėkite tęsti.
- Pasirinkite savo domeno vardo teikėją. [5 nuotrauka]
- Sekite procesą
- Dabar jį galėsite pridėti prie „Google“API pulto domeno patvirtinimo sąrašo. Įsitikinkite, kad jūsų domenas yra patikrintas. [6 nuotrauka]
4 dalis
Dabar pasirinkite „OAuth“sutikimo ekrano skirtuką. [7 nuotrauka]
Užpildykite programos pavadinimą
Toliau prie sutikimo ekrano pridėsime apimtis. Tai reiškia, kad sutikimo ekrane paklausime vartotojo, ar jis nori bendrinti savo kalendoriaus informaciją su veidrodžiu.
- Spustelėkite pridėti apimtį ir ieškokite kalendoriaus.
- Tik patikrinkite../auth/calendar.readonly ir paspauskite add. [8 nuotrauka]
Užpildykite įgaliotą domeną. Tai turėtų būti domenas, kurį ką tik patvirtinote. [9 nuotrauka]
Dabar spustelėkite didelį išsaugojimo mygtuką po forma.
5 dalis
Galiausiai turime sukurti įgaliojimus. Kadangi paspaudėme išsaugojimo mygtuką, buvome peradresuoti į kredencialų skirtuką. Spustelėkite sukurti prisijungimo duomenis ir pasirinkite „OAuth“kliento ID. [10 nuotrauka]
Pasirinkite Programos tipas: žiniatinklio programa ir suteikite jai pavadinimą.
Įgaliotame peradresavimo URI įveskite šią nuorodą ir užpildykite teisingą domeną.
example.com:5000/api/v1/setup/calendar/response
Spustelėkite sukurti. Tai parodys iššokantįjį langą, tiesiog spustelėkite Gerai. Dabar paspauskite ką tik atliktų įgaliojimų atsisiuntimo mygtuką
6 dalis
Dabar atidarykite JSON failą ir nukopijuokite turinį.
sudo nano /home/pi/Mirror/resources/credentials/credentials.json
Įklijuokite juos čia.
7 dalis
Dabar turime apibrėžti savo domeną konfigūracijoje atlikdami šiuos veiksmus:
sudo nano /home/pi/Mirror/resources/config.ini
7 žingsnis: veidrodžio dizainas
Veidrodžio dizainas priklauso nuo to, kaip norite. Atlikite tikslius LCD matavimus ir palikite 2 centimetrų tarpą vienoje veidrodžio pusėje, nes ten sėdės mikrobangų judesio jutiklis. Jis negali būti už jokio metalo.
Sujungiau 4 medines lentas. Jie buvo sumalti, kad veidrodžio priekis būtų gražus. Viršuje taip pat išgręžiau keletą skylių, kad garsiakalbio garsas skleistųsi. Priešingoje veidrodžio pusėje, apačioje, supjaustiau mažą stačiakampį, kad galėčiau lengvai atlikti elektros instaliaciją. [1 nuotrauka]
Tai yra 2 pigios medienos gabalai, kuriuose bus įjungtas monitorius. Kadangi sakiau, kad mums reikės maždaug 2 centimetrų tarpo tarp veidrodžio ir korpuso. Aš taip pat pridėjau 3 mažus medžio gabalus ir prisukiau juos prie tų poilsio dalių. Taigi monitorius liktų vietoje. [2 nuotrauka]
Galų gale tai atrodė taip. Aš turėjau apie 3 mm tarpą tarp tų poilsio dalių ir veidrodžio korpuso priekio. Tik tiek, kad galėčiau įdėti 3 mm storio dvipusį veidrodį. [Nuotrauka3]
8 žingsnis: laidų sujungimas
Būtinai laikykitės vienos iš šių schemų.
Atlikęs laidus, priklijavau jį ekrano gale dvipuse juosta. Kadangi, jei kada norėčiau išardyti veidrodį ir panaudoti jį kitiems projektams, galėčiau jį lengvai nuimti. Jei esate tikri, galite naudoti karšto klijų pistoletą ir priklijuoti jį prie veidrodžio galo.
9 veiksmas: kodo paleidimas
LXSesija
Pirmiausia sukurkime porą aplankų
mkdir -p /home/pi/.config/lxsession/LXDE-pi/
Dabar sukursime failą, kuriame nurodysime kelis paleidimo parametrus/komandas.
sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart
Į failą įklijuokite šiuos duomenis.
@lxpanel-profilis LXDE-pi
@pcmanfm --desktop --profile LXDE-pi @xscreensaver -no-splash @point-rpi @sh /home/pi/Mirror/init_mirror.sh @xset s noblank @xset s off @xset -dpms
Atnaujinsime pradžios veidrodžio ekrano scenarijų, kad jis atitiktų mūsų šeimininką.
sudo nano /home/pi/Mirror/init_mirror.sh
Pasirinkite „localhost“, jei nenaudojate „Google“kalendoriaus ir domeno.
#!/bin/bash
miego 15 chromium naršyklė-inkognito --kiosk https:// localhost/mirror
Jei jį naudojate, užpildykite savo prieglobą.
#!/bin/bash
miego 15 chromium naršyklė-inkognito --kiosk
Paslauga
Dabar nustatysime, kad veidrodinis kodas būtų paleistas automatiškai.
Mes sukursime paslaugą, kuri automatiškai paleidžia kodą.
Eiti į:
sudo nano /etc/systemd/system/mirror.service
Ir įklijuokite tai į failą
[Vienetas]
Aprašymas = Veidrodinė vidinė programa po = network.target mariadb.service [Paslauga] Tipas = paprastas Vartotojas = root ExecStart =/bin/sh /home/pi/Mirror/init.sh [Įdiegti] WantedBy = multi-user.target
Dabar turėsime iš naujo įkelti sisteminį demoną atlikdami šiuos veiksmus:
sudo systemctl demonas iš naujo
Taip pat įgalinsime paslaugą automatiškai paleisti paleidus.
sudo systemctl įjungti veidrodį
Dabar mes išjungsime energiją.
sudo išjungimas
Galutiniai nustatymai
Galiausiai turime pašalinti savo APIPA ip, kad jis veiktų tik naudojant „WiFi“.
- Eikite į SD kortelės įkrovos katalogą savo kompiuteryje.
- Atidarykite failą „cmdline.txt“
- Pašalinkite ip = 169.254.10.1 Ilgos teksto eilutės pabaigoje.
10 žingsnis: paleiskite veidrodį
Apsilankykite veidrodiniame ekrane esančiame IP arba, jei nustatėte „Google“kalendorių, užpildykite domeno pavadinimą.
Dabar galėsite nustatyti veidrodį!
Jei veidrodyje rodoma SSL klaida, galbūt norėsite pridėti sertifikatus prie „Chromium“sertifikatų saugyklos.
Rekomenduojamas:
Išmanusis žadintuvas: išmanusis žadintuvas, pagamintas naudojant „Raspberry Pi“: 10 žingsnių (su nuotraukomis)
Išmanusis žadintuvas: išmanusis žadintuvas, pagamintas naudojant „Raspberry Pi“: ar kada nors norėjote išmaniojo laikrodžio? Jei taip, tai yra sprendimas jums! Aš sukūriau išmanųjį žadintuvą, tai laikrodis, kuriuo galite pakeisti žadintuvo laiką pagal svetainę. Kai žadintuvas išsijungs, pasigirs garsas (švilpukas) ir 2 lemputės
Išmanusis veidrodis: 10 žingsnių
Išmanusis veidrodis: visi žinome, kai esate vonios kambaryje, ir prarandame valandą. Arba nežinai, koks šiandien oras … ir pan. Išmanusis veidrodis gali padėti. Savo projektui padariau mažesnę išmaniojo veidrodžio versiją, kad sutaupyčiau vietos vonios kambaryje
Tvarkykite 100 „Ubidots“programų, organizacijų, vaidmenų ir vartotojų įrenginių: 11 žingsnių
Tvarkykite 100 „Ubidots“programų, organizacijų, vaidmenų ir naudotojų įrenginių: pasinaudodama šia galimybe nusprendžiau išbandyti „Ubunots“„IoT“platformos praktiškumą, skirtą naudotojams valdyti, jei ji turi daug įrenginių kelioms organizacijoms ar įmonėms pagal tą patį „Ubidots“platforma. Informacija apie merą:
„Arduino Outlet Box“valdymo centras su „Google“kalendoriumi: 4 žingsniai
„Arduino Outlet Box“valdymo centras su „Google“kalendoriumi: Šioje instrukcijoje sužinosite, kaip sukurti savo namų valdymo centrą naudojant „Adafruit Power Relay Module 4-Outlet“. Jums reikės „Arduino“plokštės su „Wi -Fi“moduliu, pvz., „Adafruit Feather Huzzah“ir „Adafruit Power Relay Module 4“
Mano išmanusis veidrodis: 15 žingsnių (su nuotraukomis)
Mano išmanusis veidrodis: laikas ryte gali būti ribotas. Turi ruoštis darbui, mokyklai, … Žiūrėti į orą atima tam tikrą ribotą laiką. Išmanusis veidrodis pašalina laiką, kurio reikia norint atidaryti telefoną ar kompiuterį ir ieškoti oro sąlygų. Šiame