Talaan ng mga Nilalaman:

Kumuha ng isang Screen para sa Iyong Google Home Paggamit ng Raspberry Pi at Dialogflow (Alternatibong Chromecast): 13 Mga Hakbang
Kumuha ng isang Screen para sa Iyong Google Home Paggamit ng Raspberry Pi at Dialogflow (Alternatibong Chromecast): 13 Mga Hakbang

Video: Kumuha ng isang Screen para sa Iyong Google Home Paggamit ng Raspberry Pi at Dialogflow (Alternatibong Chromecast): 13 Mga Hakbang

Video: Kumuha ng isang Screen para sa Iyong Google Home Paggamit ng Raspberry Pi at Dialogflow (Alternatibong Chromecast): 13 Mga Hakbang
Video: 🔵HOW TO PUT APPS OR ICONS ON LAPTOP SCREEN/ PAANO MAG DOWNLOAD NG APPS SA LAPTOP/ TAGALOG 2024, Hulyo
Anonim
Kumuha ng isang Screen para sa Iyong Google Home Paggamit ng Raspberry Pi at Dialogflow (Alternatibong Chromecast)
Kumuha ng isang Screen para sa Iyong Google Home Paggamit ng Raspberry Pi at Dialogflow (Alternatibong Chromecast)

Mula nang binili ko ang aking Google home ay nais kong makontrol ang aking mga aparato sa bahay gamit ang mga utos ng boses. Gumagana ito ng mahusay sa lahat ng paraan, ngunit masama ang pakiramdam ko para sa tampok na video. Mapapanood lamang namin ang Youtube at Netflix kung mayroon kaming isang Chromecast aparato o TV na may built na tampok na Chromecast. Mayroon akong isang Raspberry Pi na kasama ko, kaya naisip kong gamitin ito upang i-play ang aking mga paboritong video at pelikula na may mga utos ng boses.

Hakbang 1:

Image
Image

Para sa mga ito, ginawa ko ang sumusunod na pag-set up

Google Home -> Dialogflow -> Rpi IP address sa Dataplicity -> Nodejs Server -> Code upang buksan ang mga URL

Ang Dialogflow ay isang teknolohiya ng pakikipag-ugnayan ng tao-computer ng google batay sa mga pag-uusap na natural na wika. Sa tulong nito, makakabuo kami ng aming sariling mga pag-uusap o gawain na ibibigay bilang isang input sa Google home. Gumagawa ito tulad ng sumusunod

Layunin [Input, tanong, pag-uusap, utos….] -> Google Home -> aksyon [tugon]

Dito, ang tugon ay maaaring maging isang simpleng pag-uusap o iba pang data na nakuha mula sa isang webhook, na gagawin namin gamit ang Rpi server. Kaya, pumunta sa website ng Dialogflow at lumikha ng isang account at isang bagong ahente.

Pagkatapos ay lumikha ng isang bagong hangarin ….

Hakbang 2:

Larawan
Larawan

Pagkatapos ay ipasok ang mga parirala sa pagsasanay. Ito ang mga utos na sinasalita ng mga gumagamit kapag sinubukan nilang mag-access sa isang tukoy na gawain mula sa Google Home.

Hakbang 3:

Dito, ang salitang 'website' ay maaaring mabago sa anumang kagaya ng youtube, Netflix, amazon prime atbp … Kaya, ang salitang ito ay kumikilos bilang isang variable at kapag pinili mo ang salitang website [gamit ang mouse] makukuha mo ang sumusunod

Hakbang 4:

Larawan
Larawan

Mula sa, drop-down na menu, piliin ang '@ sys.any' at pindutin ang enter.

Hakbang 5:

Larawan
Larawan

Pagkatapos ay ipasok ang parehong pangalan ng parameter sa seksyon ng mga aksyon. Ang mga halagang binanggit sa seksyong ito ay ipinadala sa webhook bilang isang JSON file, na kailangan naming kunin sa server upang malaman kung aling website ang tinawag ng gumagamit.

Ang halaga ng isang variable ay nakuha gamit ang '$ variable_name'

Hakbang 6:

Larawan
Larawan

Idagdag ang tugon na kailangan nating marinig matapos sabihin ang utos sa Google Home. Pagkatapos ay i-save ang hangarin. Kung kinakailangan itakda ang hangarin na ito bilang pagtatapos ng pag-uusap.

Hakbang 7:

Ngayon ay ise-set up namin ang aming back-end na serbisyo upang makuha ang mga query na iyon upang buksan ang mga video at website sa aming raspberry pi.

Ang natitirang pag-set up

Dataplicity -> Nodejs server -> code

Bakit kailangan natin ng dataplicity? dahil kumokonekta ang Google Home sa mga webhook na naa-access sa internet. Kahit na ang aming GHome ay konektado sa lokal na network, ang mga query ay nagmumula sa serbisyong cloud ng Google at samakatuwid, mayroong pangangailangan para sa pag-port sa aming server sa internet. Sa halip na sakit ng ulo na iyon, maaari naming gamitin ang mga serbisyo ng dataplicity upang ilagay ang aming raspberry pi sa internet nang madali.

Una, kumonekta sa raspberry pi [direkta sa HDMI o kahit na sa SSh] Kunin ang pinakabagong run-time na nodejs mula sa sumusunod na utos sa terminal.

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -

Pagkatapos i-install ito gamit ang

sudo apt-get install -y nodejs

Pagkatapos ay lumikha ng isang bagong file

nano webserver.js

Hakbang 8:

Pagkatapos, ipasok ang code sa ibaba sa file

Dito, para sa pagpapakita, gumagamit lamang ako ng dalawang mga website (google, youtube). Maaaring i-edit ng isa ang code at baguhin nang naaayon.

bodyParser = nangangailangan ('body-parser'); var exec = nangangailangan ('child_process'). exec; var express = nangangailangan ('express'); var app = express (); app.use (bodyParser.json ()); app.post ('/', function (req, res) {let variable = req.body.queryResult.parameter.website; exec ("midori www." + variable + ". com", function (error, stdout, stderr) {console.log (“stdout:“+ stdout); console.log (“stderr:“+ stderr); kung (error! == null) {console.log (“exec error:“+ error);}}); return res.end ();}); app.listen (80);

Hakbang 9:

Larawan
Larawan

Ang code sa itaas ay isinulat lamang upang ipaliwanag ang konsepto. Gumamit ako ng Midori browser sa code dahil ang chromium ay hindi gumagana sa mga remote na utos. Maaari din tayong gumamit ng Firefox. [Kailangan naming mag-install ng body-parser, ipahayag ang mga module na may tulong ng npm bago isulat ang code]

Tandaan na dapat lamang tayo makinig sa port 80 dahil ang dataplicity ay maaaring magpasa lamang ng port 80 ng raspberry pi.

Ngayon kailangan naming i-set up ang Dataplicity

Pumunta sa website ng Dataplicity at likhain ang iyong account at sundin ang mga tagubilin upang idagdag ang raspberry pi sa dashboard.

Hakbang 10:

Larawan
Larawan

Pagkatapos nito, buksan ang raspberry pi mula sa listahan ng mga aparato at piliin ang wormhole upang makakuha ng isang natatanging IP Address para sa raspberry pi kung saan maaari naming mai-deploy ang aming node server.

Kopyahin ang IP Address sa clipboard.

Hakbang 11:

Larawan
Larawan

Patakbuhin ngayon ang code mula sa terminal ng raspberry pi

sudo node webserver.js

Kung nagpapakita ito ng anumang error tungkol sa pagpapakita o tungkol sa mga protocol …. magpatupad

sudo xhost +

Bumalik ngayon sa dialogflow, at mag-click sa seksyon ng katuparan

Hakbang 12:

Larawan
Larawan

Ipasok ang IP Address o ang URL mula sa dataplicity sa itaas na espasyo.

Hakbang 13:

Larawan
Larawan

Panghuli, pumunta sa seksyon ng mga hangarin at paganahin ang tawag sa webhook mula sa tab na katuparan.

Ayan yun! Ngayon bumalik sa iyong google home at suriin kung paano ito gumagana!

Hanggang sa susunod, Maligayang Pag-hack:)

Inirerekumendang: