Агуулгын хүснэгт:

Raspberry Pi болон Dialogflow ашиглан Chromecast -ийн өөр хувилбарыг ашиглан Google гэрийнхээ дэлгэцийг аваарай: 13 алхам
Raspberry Pi болон Dialogflow ашиглан Chromecast -ийн өөр хувилбарыг ашиглан Google гэрийнхээ дэлгэцийг аваарай: 13 алхам
Anonim
Raspberry Pi болон Dialogflow ашиглан Chromecast -ийн өөр хувилбарыг ашиглан Google гэрийнхээ дэлгэцийг аваарай
Raspberry Pi болон Dialogflow ашиглан Chromecast -ийн өөр хувилбарыг ашиглан Google гэрийнхээ дэлгэцийг аваарай

Би Google гэрээ худалдаж авснаас хойш гэртээ төхөөрөмжөө дуут командын тусламжтайгаар удирдахыг хүсч байсан. Энэ нь бүх талаараа гайхалтай ажилладаг, гэхдээ би түүний видео функцэд муухай санагдсан. Бид зөвхөн Chromecast төхөөрөмж эсвэл Chromecast -ийн онцлогтой зурагттай бол Youtube, Netflix -ийг үзэх боломжтой. Надтай хамт Raspberry Pi байдаг тул үүнийг ашиглан дуртай видео, киногоо дуут команд ашиглан тоглуулахыг бодсон.

1-р алхам:

Image
Image

Үүний тулд би дараах тохиргоог хийсэн

Google Home -> Dialogflow -> Dataplicity дээрх Rpi IP хаяг -> Nodejs Server -> URL нээх код

Dialogflow бол google-ийн хүн ба компьютер хоорондын харилцан үйлчлэлийн технологи бөгөөд байгалийн хэлээр ярьдаг. Үүний тусламжтайгаар бид Google -ийн гэрт оруулах хувийн яриа эсвэл даалгавраа боловсруулж чадна. Энэ нь дараах байдлаар ажилладаг

Зорилго [Оруулах, асуулт, яриа, тушаал….] -> Google Home -> үйлдэл [хариулах]

Энд хариулт нь энгийн яриа эсвэл өөр вэбсайтаас авсан өгөгдөл байж болох бөгөөд үүнийг бид Rpi сервер ашиглан хийх болно. Тиймээс, Dialogflow вэбсайт руу ороод данс, шинэ төлөөлөгч үүсгээрэй.

Дараа нь шинэ зорилго бий болго.…

Алхам 2:

Зураг
Зураг

Дараа нь сургалтын хэллэгийг оруулна уу. Эдгээр нь хэрэглэгчид Google Home -ээс тодорхой даалгаварт хандахыг оролдох үед хэлдэг командууд юм.

Алхам 3:

Энд "вэбсайт" гэдэг үгийг youtube, Netflix, amazon prime гэх мэт болгон өөрчилж болно. Тиймээс энэ үг хувьсагчийн үүрэг гүйцэтгэдэг бөгөөд вэбсайт гэсэн үгийг сонгохдоо [хулгана ашиглан] дараах зүйлийг олж авна.

Алхам 4:

Зураг
Зураг

Унтраах цэснээс "@sys.any" -ийг сонгоод enter дарна уу.

Алхам 5:

Зураг
Зураг

Дараа нь ижил параметрийн нэрийг үйлдэл хэсэгт оруулна уу. Энэ хэсэгт дурдсан утгуудыг вэб хуук руу JSON файл хэлбэрээр илгээдэг бөгөөд хэрэглэгч ямар вэбсайтыг дуудаж байгааг мэдэхийн тулд серверээс татаж авах шаардлагатай байдаг.

Хувьсагчийн утгыг ‘$ variable_name’ ашиглан авдаг.

Алхам 6:

Зураг
Зураг

Google Home -д тушаалыг хэлсний дараа бидний сонсох ёстой хариултыг нэмнэ үү. Дараа нь зорилгоо хадгал. Шаардлагатай бол энэ зорилгоо ярианы төгсгөл болгоно.

Алхам 7:

Одоо бид бөөрөлзгөнө pi дээрээ видеонууд болон вэбсайтуудыг нээх эдгээр асуултуудыг авахын тулд бид өөрсдийн эцсийн үйлчилгээг тохируулах болно.

Үлдсэн тохиргоо

Мэдээллийн чадвар -> Nodejs сервер -> код

Бидэнд өгөгдлийн тохиргоо яагаад хэрэгтэй байна вэ? Учир нь Google Home нь интернетээр нэвтрэх боломжтой вэб дэгээтэй холбогддог. Манай GHome нь дотоод сүлжээнд холбогдсон байсан ч гэсэн Google -ийн үүл үйлчилгээнээс асууж байгаа тул манай серверийг интернетэд байршуулах шаардлагатай байна. Толгой өвдөхийн оронд бид өгөгдөл дамжуулах үйлчилгээг ашиглан бөөрөлзгөнө пи -ээ интернетэд хялбархан байрлуулж болно.

Нэгдүгээрт, бөөрөлзгөнө pi-тэй холбогдоорой [шууд HDMI эсвэл бүр SSh-ээр] Терминал дээрх дараах тушаалаас хамгийн сүүлийн үеийн nodejs-ийн ажиллах хугацааг олж аваарай.

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

Дараа нь ашиглан суулгана уу

sudo apt -get install -y nodejs

Дараа нь шинэ файл үүсгэнэ үү

нано вэб сервер.js

Алхам 8:

Дараа нь доорх кодыг файлд оруулна уу

Энд үзүүлэх зорилгоор би зөвхөн хоёр вэбсайт (google, youtube) ашиглаж байна. Та кодыг засварлаж, үүний дагуу өөрчлөх боломжтой.

bodyParser = шаарддаг ("биеийн задлагч"); var exec = шаарддаг ("хүүхдийн_ процесс"). exec; var express = шаардлагатай (‘илэрхийлэх’); var app = express (); app.use (bodyParser.json ()); app.post ('/', функц (req, res) {let variable = req.body.queryResult.parameters.website; exec ("midori www."+хувьсагч+". com", функц (алдаа, stdout, stderr) {console.log ("stdout:" + stdout); console.log ("stderr:" + stderr); if (error! == null) {console.log ("exec error:" + error);}}); буцах res.end ();}); app.listen (80);

Алхам 9:

Зураг
Зураг

Дээрх кодыг зөвхөн үзэл баримтлалыг тайлбарлахын тулд бичсэн болно. Chromium нь алсын тушаалаар ажилладаггүй тул би Midori хөтөчийг кодонд ашигласан. Бид Firefox -ийг бас ашиглаж болно. [Кодыг бичихийн өмнө бид npm-ийн тусламжтайгаар body-parser, express модулиудыг суулгах ёстой]

Өгөгдөл дамжуулах чадвар нь зөвхөн бөөрөлзгөнө pi -ийн 80 -р портыг дамжуулж чаддаг тул бид зөвхөн 80 -р порт дээр сонсох ёстой гэдгийг санаарай.

Одоо бид Dataplicity -ийг тохируулах хэрэгтэй

Dataplicity вэбсайт руу ороод дансаа үүсгээд зааврын дагуу бөөрөлзгөнө pi -ийг хяналтын самбарт нэмээрэй.

Алхам 10:

Зураг
Зураг

Үүний дараа төхөөрөмжүүдийн жагсаалтаас бөөрөлзгөнө pi -г нээж, өтний нүхийг сонгоод бөөрөлзгөнө pi -ийн өвөрмөц IP хаягийг авах боломжтой бөгөөд бид зангилааны серверээ байрлуулж болно.

IP хаягийг түр санах ой руу хуулах.

Алхам 11:

Зураг
Зураг

Одоо кодыг бөөрөлзгөнө pi терминалаас ажиллуулна уу

sudo node вэб сервер.js

Хэрэв дэлгэц эсвэл протоколын талаар ямар нэгэн алдаа гарсан бол. гүйцэтгэх

sudo xhost +

Одоо харилцах урсгал руу буцаж, биелүүлэх хэсгийг дарна уу

Алхам 12:

Зураг
Зураг

Дээрх орон зайд өгөгдлийн тохиргооноос IP хаяг эсвэл URL оруулна уу.

Алхам 13:

Зураг
Зураг

Эцэст нь, зорилго хэсэгт очиж, биелэлтийн таб дээрээс webhook дуудлагыг идэвхжүүлнэ үү.

Ингээд л боллоо! Одоо Google -ийнхээ гэр рүү буцаж очоод хэрхэн ажилладагийг шалгаарай!

Дараагийн удаа хүртэл Happy Hacking:)

Зөвлөмж болгож буй: