Innholdsfortegnelse:
- Trinn 1:
- Steg 2:
- Trinn 3:
- Trinn 4:
- Trinn 5:
- Trinn 6:
- Trinn 7:
- Trinn 8:
- Trinn 9:
- Trinn 10:
- Trinn 11:
- Trinn 12:
- Trinn 13:
Video: Få en skjerm for Google -hjemmet ditt ved hjelp av Raspberry Pi og Dialogflow (Chromecast -alternativ): 13 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:24
Helt siden jeg kjøpte Google -hjemmet mitt, har jeg ønsket å kontrollere enhetene mine hjemme ved hjelp av talekommandoer. Det fungerer fantastisk på alle måter, men jeg følte meg dårlig for videofunksjonen. Vi kan bare se Youtube og Netflix hvis vi har en Chromecast -enhet eller TV med innebygd Chromecast -funksjon. Jeg har med meg en Raspberry Pi, så jeg tenkte å bruke den til å spille av mine favorittvideoer og filmer med talekommandoer.
Trinn 1:
For dette gjorde jeg følgende oppsett
Google Home -> Dialogflow -> Rpi IP -adresse på Dataplicity -> Nodejs Server -> Kode for å åpne nettadresser
Dialogflow er en Googles interaksjonsteknologi mellom mennesker og datamaskiner basert på samtaler på naturlig språk. Ved hjelp av dette kan vi utvikle våre egne samtaler eller oppgaver å gi som innspill til Google home. Dette fungerer som følger
Intensjon [Inndata, spørsmål, samtale, kommando …] -> Google Home -> handling [svar]
Her kan svaret enten være en enkel samtale eller data hentet fra en webhook, som vi skal lage ved hjelp av Rpi -server. Så gå til Dialogflow -nettstedet og opprett en konto og en ny agent.
Lag deretter en ny intensjon ….
Steg 2:
Skriv deretter inn treningsfrasene. Dette er kommandoene som brukerne snakker når de prøver å få tilgang til en bestemt oppgave fra Google Home.
Trinn 3:
Her kan ordet "nettsted" endres til alt som youtube, Netflix, amazon prime osv … Så dette ordet fungerer som en variabel, og når du velger ordet nettsted [ved hjelp av mus] får du følgende
Trinn 4:
Fra rullegardinmenyen, velg ‘@sys.any’ og trykk enter.
Trinn 5:
Skriv deretter inn det samme parameternavnet i handlingsdelen. Verdiene nevnt i denne delen sendes til webhook som en JSON -fil, som vi må hente på serveren for å vite hvilket nettsted brukeren har påkalt.
Verdien av en variabel hentes ved hjelp av '$ variable_name'
Trinn 6:
Legg til svaret vi trenger å høre etter å ha sagt kommandoen til Google Home. Lagre deretter intensjonen. Sett om nødvendig denne intensjonen som slutten på samtalen.
Trinn 7:
Nå vil vi sette opp vår backend-tjeneste for å få disse spørsmålene til å åpne videoer og nettsteder på bringebær-pi.
Det gjenværende oppsettet
Dataplicity -> Nodejs server -> kode
Hvorfor trenger vi dataplicity? fordi Google Home kobles til webhooks som er tilgjengelige på internett. Selv om GHome er koblet til det lokale nettverket, kommer spørringene fra Googles skytjeneste, og derfor er det behov for å portere serveren vår til internett. I stedet for den hodepinen kan vi enkelt bruke dataplicity -tjenester for å plassere bringebær -pi på internett.
Koble først til bringebær pi [direkte med HDMI eller til og med med SSh] Få den siste nodejs-kjøretiden fra følgende kommando i terminalen.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
Installer den deretter med
sudo apt -get install -y nodejs
Lag deretter en ny fil
nano webserver.js
Trinn 8:
Sett deretter inn koden nedenfor i filen
Her, for demonstrasjon, bruker jeg bare to nettsteder (google, youtube). Man kan redigere koden og endre deretter.
bodyParser = require (‘body-parser’); var exec = require (‘child_process’). exec; var express = require (‘express’); var app = express (); 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);}}); returnere res.end ();}); app.listen (80);
Trinn 9:
Koden ovenfor ble skrevet bare for å forklare konseptet. Jeg brukte Midori -nettleseren i koden, da krom ikke fungerer med eksterne kommandoer. Vi kan også bruke Firefox. [Vi må installere body-parser, express-moduler ved hjelp av npm før vi skriver koden]
Husk at vi bare bør lytte på port 80 da dataplicity bare kan videresende port 80 av bringebærpi.
Nå må vi sette opp Dataplicity
Gå til Dataplicity -nettstedet og opprett kontoen din, og følg instruksjonene for å legge bringebær -pi til dashbordet.
Trinn 10:
Etter det åpner du bringebær pi fra enhetslisten og velger ormhull for å få en unik IP -adresse for bringebærpi som vi kan distribuere nodeserveren til.
Kopier IP -adressen til utklippstavlen.
Trinn 11:
Kjør nå koden fra bringebær pi -terminalen
sudo node webserver.js
Hvis det viser noen feil om display eller protokoller …. henrette
sudo xhost +
Gå nå tilbake til dialogflyten, og klikk på oppfyllingsdelen
Trinn 12:
Skriv inn IP -adressen eller nettadressen fra dataplicity i området ovenfor.
Trinn 13:
Til slutt går du til intents -delen og aktiverer webhook -anropet fra oppfyllingsfanen.
Det er det! Gå tilbake til Google -hjemmet ditt og sjekk hvordan det fungerer!
Til neste gang, Happy Hacking:)
Anbefalt:
Sett opp Raspberry Pi 4 gjennom bærbar PC/pc ved hjelp av Ethernet-kabel (ingen skjerm, ingen Wi-Fi): 8 trinn
Sett opp Raspberry Pi 4 gjennom bærbar PC/pc ved hjelp av Ethernet-kabel (ingen skjerm, ingen Wi-Fi): I dette skal vi jobbe med Raspberry Pi 4 Model-B med 1 GB RAM for oppsettet. Raspberry-Pi er en enkelt brettcomputer som brukes til utdanningsformål og gjør-det-selv-prosjekter til en rimelig pris, krever en strømforsyning på 5V 3A
DIY -- Hvordan lage en edderkopprobot som kan kontrolleres ved hjelp av smarttelefon ved hjelp av Arduino Uno: 6 trinn
DIY || Hvordan lage en edderkopprobot som kan kontrolleres ved hjelp av smarttelefon ved hjelp av Arduino Uno: Mens du lager en edderkopprobot, kan du lære så mange ting om robotikk. Som å lage roboter er både underholdende og utfordrende. I denne videoen skal vi vise deg hvordan du lager en Spider -robot, som vi kan bruke ved hjelp av smarttelefonen vår (Androi
Hvordan lage en drone ved hjelp av Arduino UNO - Lag en quadcopter ved hjelp av mikrokontroller: 8 trinn (med bilder)
Hvordan lage en drone ved hjelp av Arduino UNO | Lag en Quadcopter ved hjelp av mikrokontroller: Introduksjon Besøk min Youtube -kanal En Drone er en veldig dyr gadget (produkt) å kjøpe. I dette innlegget skal jeg diskutere hvordan jeg får det billig? Og hvordan kan du lage din egen slik til en billig pris … Vel, i India er alle materialer (motorer, ESCer
Grafikk på en SSD1306 I2C OLED 128x64 -skjerm med CircuitPython ved hjelp av en Itsybitsy M4 Express: 13 trinn (med bilder)
Grafikk på en SSD1306 I2C OLED 128x64 -skjerm med CircuitPython ved hjelp av en Itsybitsy M4 Express: SSD1306 OLED -skjermen er en liten (0,96 "), billig, allment tilgjengelig, I2C, monokrom grafisk skjerm med 128x64 piksler, som er lett tilkoblet (bare 4 ledninger) til mikroprosessorutviklingskort som en Raspberry Pi, Arduino eller
Hvordan lage sanntidsklokke ved hjelp av Arduino og TFT -skjerm - Arduino Mega RTC med 3,5 tommers TFT -skjerm: 4 trinn
Hvordan lage sanntidsklokke ved hjelp av Arduino og TFT-skjerm | Arduino Mega RTC med 3,5 tommers TFT-skjerm: Besøk min Youtube-kanal. Introduksjon:- I dette innlegget skal jeg lage “Real time Clock” ved å bruke 3,5 tommers TFT touch LCD, Arduino Mega 2560 og DS3231 RTC-modul …. Før du starter … sjekk videoen fra YouTube-kanalen min..Merk:- Hvis du bruker Arduin