Obsah:
- Krok 1:
- Krok 2:
- Krok 3:
- Krok 4:
- Krok 5:
- Krok 6:
- Krok 7:
- Krok 8:
- Krok 9:
- Krok 10:
- Krok 11:
- Krok 12:
- Krok 13:
Video: Získajte obrazovku pre svoj domov Google pomocou Raspberry Pi a Dialogflow (alternatíva Chromecastu): 13 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 12:00
Odkedy som si kúpil svoj dom Google, túžim ovládať svoje zariadenia doma pomocou hlasových príkazov. Funguje to úžasne vo všetkých smeroch, ale cítil som zlý pocit z jeho funkcie videa. Youtube a Netflix môžeme sledovať iba vtedy, ak máme zariadenie alebo televízor Chromecast so vstavanou funkciou Chromecast. Mám so sebou Raspberry Pi, a tak ma napadlo využiť ho na prehrávanie obľúbených videí a filmov pomocou hlasových povelov.
Krok 1:
Za týmto účelom som urobil nasledujúce nastavenie
Domovská stránka Google -> Dialogflow -> IP adresa Rpi na serveri Dataplicity -> Server Nodejs -> Kód na otváranie adries URL
Dialogflow je technológia interakcie človeka s počítačom spoločnosti Google založená na konverzáciách v prirodzenom jazyku. S pomocou toho môžeme rozvíjať svoje vlastné konverzácie alebo úlohy, ktoré by mohli slúžiť ako vstup do domova Google. Funguje to nasledovne
Zámer [Vstup, otázka, konverzácia, príkaz….] -> Domovská stránka Google -> akcia [odpoveď]
Tu môže byť odpoveďou buď jednoduchá konverzácia, alebo iné údaje získané z webhooku, ktorý vytvoríme pomocou servera Rpi. Prejdite na webovú stránku Dialogflow a vytvorte si účet a nového agenta.
Potom vytvorte nový zámer …
Krok 2:
Potom zadajte cvičné frázy. Toto sú príkazy, ktoré používatelia vyslovujú pri pokuse o prístup k konkrétnej úlohe z domova Google.
Krok 3:
Tu je možné slovo „webová stránka“zmeniť na čokoľvek ako youtube, Netflix, amazon prime atď … Toto slovo teda funguje ako premenná a keď vyberiete slovo webová stránka [pomocou myši], získate nasledujúce
Krok 4:
V rozbaľovacej ponuke vyberte možnosť „@sys.any“a stlačte kláves Enter.
Krok 5:
Potom zadajte rovnaký názov parametra do sekcie akcií. Hodnoty uvedené v tejto časti sú odoslané do webhooku ako súbor JSON, ktorý musíme načítať na serveri, aby sme vedeli, na ktoré webové stránky sa používateľ odvolal.
Hodnota premennej sa získa pomocou „$ variable_name“
Krok 6:
Pridajte odpoveď, ktorú musíme počuť po vyslovení príkazu domovskej stránke Google. Potom uložte zámer. V prípade potreby nastavte tento zámer ako koniec konverzácie.
Krok 7:
Teraz nastavíme našu službu typu back-end, aby sme mohli tieto dotazy otvárať videá a webové stránky na našom Raspberry Pi.
Zostávajúce nastavenie
Dataplicity -> Server Nodejs -> kód
Prečo potrebujeme dátovú jednoduchosť? pretože Google Home sa pripája k webhookom, ktoré sú prístupné cez internet. Aj keď je náš GHome pripojený k lokálnej sieti, dotazy pochádzajú z cloudovej služby Google, a preto je potrebné portovať náš server na internet. Namiesto tejto bolesti hlavy môžeme použiť služby dataplicity a ľahko umiestniť naše malinové pi na internet.
Najprv sa pripojte k malinovému pi [priamo pomocou HDMI alebo dokonca pomocou SSh] Získajte najnovšiu dobu behu nodejs z nasledujúceho príkazu v termináli.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
Potom ho nainštalujte pomocou
sudo apt -get install -y nodejs
Potom vytvorte nový súbor
nano webserver.js
Krok 8:
Potom vložte do súboru nasledujúci kód
Tu na ukážku používam iba dva webové stránky (google, youtube). Kód je možné upraviť a podľa toho zmeniť.
bodyParser = require ('body-parser'); var exec = require ('child_process'). exec; var expres = vyžadovať („expres“); var aplikácia = expres (); app.use (bodyParser.json ()); app.post ('/', function (req, res) {let variable = req.body.queryResult.parameters.website; exec (“midori www.”+variable+”. com”, function (error, stdout, stderr) {console.log (“stdout:“+ stdout); console.log („stderr:“+ stderr); if (error! == null) {console.log („exec errror:“+ error);}})); vrátiť res.end ();}); app.listen (80);
Krok 9:
Vyššie uvedený kód bol napísaný iba na vysvetlenie konceptu. V kóde som použil prehliadač Midori, pretože chróm nefunguje so vzdialenými príkazmi. Môžeme použiť aj Firefox. [Pred napísaním kódu musíme nainštalovať body-parser, expresné moduly pomocou NPM]
Pamätajte si, že by sme mali počúvať iba na porte 80, pretože dataplicity môže posielať iba port 80 malinového pi.
Teraz musíme nastaviť Dataplicity
Prejdite na webovú stránku Dataplicity, vytvorte si účet a podľa pokynov pridajte malinový pi na hlavný panel.
Krok 10:
Potom otvorte Raspberry pi zo zoznamu zariadení a vyberte červiu dieru, aby ste získali jedinečnú IP adresu pre Raspberry Pi, na ktorú môžeme nasadiť náš uzlový server.
Skopírujte IP adresu do schránky.
Krok 11:
Teraz spustite kód z terminálu malinového pi
sudo node webserver.js
Ak zobrazuje akúkoľvek chybu o displeji alebo o protokoloch…. popraviť
sudo xhost +
Teraz sa vráťte do dialógového okna a kliknite na sekciu plnenia
Krok 12:
Do vyššie uvedeného priestoru zadajte IP adresu alebo URL z údajov.
Krok 13:
Nakoniec prejdite do sekcie zámerov a povoľte volanie webhooku z karty plnenia.
To je všetko! Teraz sa vráťte do svojho domova Google a skontrolujte, ako funguje!
Do nabudúce Šťastné hackovanie:)
Odporúča:
Integrácia Arduino a Apple HomeKit - ovládajte svoj domov zo Siri! IoT je tu: 6 krokov
Integrácia Arduino a Apple HomeKit - ovládajte svoj domov zo Siri! IoT je tu: Tento návod vám poskytne rýchly a ľahký spôsob pridania arduino dosky do Apple HomeKit na zariadení iOS. Otvára všetky možnosti vrátane skriptov spustených na serveri v kombinácii s programom Apples HomeKit „Scény“, ktoré
Oživte svoj domov pomocou Sonoffa a stykača: 3 kroky
Urobte svoj domov inteligentným pomocou Sonoffa a stykača: Urobte si svoj domov inteligentnými pomocou Sonoffa a stýkača
Získajte závesný snímač hmotnosti z váhy pre svoj projekt Arduino: 4 kroky
Získajte závesný snímač hmotnosti z batožinovej váhy pre svoj projekt Arduino: V tomto tutoriále vám ukážem, ako získať závesný snímač hmotnosti pre projekt Arduino z lacnej, bežnej váhy pre rybolov/rybolov a často používaného modulu ADC HX711. Pozadie: Na projekt som potreboval senzor na meranie určitej hmotnosti, ktorá je
Raspberry Pi ako alternatíva k Chromecastu (Raspicast): 10 krokov (s obrázkami)
Raspberry Pi ako alternatíva k Chromecastu (Raspicast): V tomto návode vám ukážem, ako používať malinu pi 3 ako alternatívu k Chromecastu. Za zmienku tiež stojí, že nejde o priamy klon do zariadenia Chromecast a že existujú obmedzenia. Táto metóda nepodporuje tlačidlo prenášania, ale
Získajte klasickú prihlasovaciu obrazovku v systéme Windows Vista: 4 kroky
Získajte klasickú prihlasovaciu obrazovku v systéme Windows Vista: Uvítacia obrazovka, ktorá zobrazuje všetkých používateľov, bola v systéme Windows XP predstavená kvôli pohodliu používateľov. Možnosť zmeniť to späť na bezpečnejšiu, klasickú prihlasovaciu obrazovku bola možná z ovládacieho panela. To bolo odstránené z možností systému Vista, ale