Სარჩევი:

მიიღეთ ეკრანი თქვენი Google Home Raspberry Pi- სა და Dialogflow- ის გამოყენებით (Chromecast ალტერნატივა): 13 ნაბიჯი
მიიღეთ ეკრანი თქვენი Google Home Raspberry Pi- სა და Dialogflow- ის გამოყენებით (Chromecast ალტერნატივა): 13 ნაბიჯი

ვიდეო: მიიღეთ ეკრანი თქვენი Google Home Raspberry Pi- სა და Dialogflow- ის გამოყენებით (Chromecast ალტერნატივა): 13 ნაბიჯი

ვიდეო: მიიღეთ ეკრანი თქვენი Google Home Raspberry Pi- სა და Dialogflow- ის გამოყენებით (Chromecast ალტერნატივა): 13 ნაბიჯი
ვიდეო: 10 ჩვევა, რომ გახდეთ ბედნიერი 2024, ნოემბერი
Anonim
მიიღეთ ეკრანი თქვენი Google Home Raspberry Pi- სა და Dialogflow- ის გამოყენებით (Chromecast ალტერნატივა)
მიიღეთ ეკრანი თქვენი Google Home Raspberry Pi- სა და Dialogflow- ის გამოყენებით (Chromecast ალტერნატივა)

მას შემდეგ რაც შევიძინე ჩემი Google სახლი, მე მინდოდა ჩემი მოწყობილობების გაკონტროლება სახლში ხმოვანი ბრძანებების გამოყენებით. ის მშვენივრად მუშაობს ყოველმხრივ, მაგრამ მე ცუდად ვიგრძენი თავი მისი ვიდეო მახასიათებლის გამო. ჩვენ შეგვიძლია ვუყუროთ Youtube და Netflix მხოლოდ იმ შემთხვევაში, თუ ჩვენ გვაქვს Chromecast მოწყობილობა ან ტელევიზია ჩაშენებული Chromecast ფუნქციით. მე მყავს Raspberry Pi ჩემთან ერთად, ამიტომ ვიფიქრე, რომ გამოვიყენო ის ჩემი საყვარელი ვიდეოებისა და ფილმების ხმოვანი ბრძანებებით სათამაშოდ.

Ნაბიჯი 1:

Image
Image

ამისათვის გავაკეთე შემდეგი კონფიგურაცია

Google Home -> Dialogflow -> Rpi IP მისამართი მონაცემთა ბაზაზე -> Nodejs სერვერი -> URL მისამართების გასახსნელად

Dialogflow არის google– ის ადამიანისა და კომპიუტერის ურთიერთქმედების ტექნოლოგია, რომელიც დაფუძნებულია ბუნებრივ ენაზე საუბრებზე. ამის დახმარებით, ჩვენ შეგვიძლია განვავითაროთ ჩვენი საკუთარი საუბრები ან ამოცანები, რომლებიც Google Home- ისთვის შეტანილი იქნება. ეს მუშაობს შემდეგნაირად

განზრახვა [შეყვანა, შეკითხვა, საუბარი, ბრძანება….] -> Google Home -> მოქმედება [პასუხი]

აქ, პასუხი შეიძლება იყოს უბრალო საუბარი ან სხვა ვებგვერდიდან ამოღებული მონაცემები, რომელსაც ჩვენ ვაპირებთ Rpi სერვერის გამოყენებით. ასე რომ, გადადით Dialogflow ვებსაიტზე და შექმენით ანგარიში და ახალი აგენტი.

შემდეგ შექმენით ახალი განზრახვა …

ნაბიჯი 2:

გამოსახულება
გამოსახულება

შემდეგ შეიყვანეთ სასწავლო ფრაზები. ეს არის ის ბრძანებები, რომლებსაც მომხმარებლები ლაპარაკობენ, როდესაც ისინი ცდილობენ შევიდნენ Google Home– ის კონკრეტულ დავალებაზე.

ნაბიჯი 3:

აქ სიტყვა "ვებგვერდი" შეიძლება შეიცვალოს იუთუბზე, ნეტფლიქსზე, ამაზონ პრაიმზე და ა.შ … ასე რომ, ეს სიტყვა მოქმედებს როგორც ცვლადი და როდესაც შეარჩიეთ სიტყვა ვებგვერდი [მაუსის გამოყენებით] თქვენ მიიღებთ შემდეგს

ნაბიჯი 4:

გამოსახულება
გამოსახულება

ჩამოსაშლელი მენიუდან აირჩიეთ "@sys.any" და დააჭირეთ Enter.

ნაბიჯი 5:

გამოსახულება
გამოსახულება

შემდეგ შეიყვანეთ იგივე პარამეტრის სახელი ქმედებების განყოფილებაში. ამ ნაწილში ნახსენები მნიშვნელობები იგზავნება ვებჰუკზე, როგორც JSON ფაილი, რომელიც ჩვენ უნდა ვიპოვოთ სერვერზე, რათა ვიცოდეთ რომელ ვებსაიტზეა მომხმარებელმა მოწვეული.

ცვლადის მნიშვნელობა ამოღებულია "$ variable_name" - ის გამოყენებით

ნაბიჯი 6:

გამოსახულება
გამოსახულება

დაამატეთ პასუხი, რომელიც უნდა მოვისმინოთ Google Home- ში ბრძანების თქმის შემდეგ. შემდეგ შეინახეთ განზრახვა. საჭიროების შემთხვევაში დაასახელეთ ეს განზრახვა საუბრის დასასრულებლად.

ნაბიჯი 7:

ახლა ჩვენ შევქმნით ჩვენს უკანა სერვისს, რომ მივიღოთ შეკითხვები ვიდეოების და ვებ – გვერდების გახსნის მიზნით ჩვენს ჟოლოს პიზე.

დარჩენილი კონფიგურაცია

მონაცემთა სიმარტივე -> 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

შემდეგ შექმენით ახალი ფაილი

nano webserver.js

ნაბიჯი 8:

შემდეგ, ჩადეთ ქვემოთ მოცემული კოდი ფაილში

აქ, სადემონსტრაციოდ, მე ვიყენებ მხოლოდ ორ ვებსაიტს (google, youtube). შეგიძლიათ შეცვალოთ კოდი და შეცვალოთ შესაბამისად.

bodyParser = მოითხოვს ("body-parser"); var exec = მოითხოვს ("child_process"). 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 errror:" + error);}}); დაბრუნება res.end ();}); app. listenen (80);

ნაბიჯი 9:

გამოსახულება
გამოსახულება

ზემოთ მოყვანილი კოდი დაიწერა მხოლოდ კონცეფციის ახსნის მიზნით. მე გამოვიყენე Midori ბრაუზერი კოდში, რადგან ქრომი დისტანციურ ბრძანებებთან არ მუშაობს. ჩვენ ასევე შეგვიძლია გამოვიყენოთ Firefox. [ჩვენ უნდა დავაინსტალიროთ body-parser, express მოდულები npm– ის გამოყენებით კოდის დაწერამდე]

გახსოვდეთ, რომ ჩვენ მხოლოდ 80 პორტს უნდა მოვუსმინოთ, რადგან მონაცემთა სიმარტივეს შეუძლია ჟოლოს პი მხოლოდ 80 პორტის გადაგზავნა.

ახლა ჩვენ გვჭირდება მონაცემთა დაყენება

გადადით Dataplicity ვებსაიტზე და შექმენით თქვენი ანგარიში და მიჰყევით ინსტრუქციას ჟოლოს პი დაფის დასამატებლად.

ნაბიჯი 10:

გამოსახულება
გამოსახულება

ამის შემდეგ, გახსენით ჟოლოს pi მოწყობილობების სიიდან და შეარჩიეთ ჭიის ხვრელი, რომ მიიღოთ უნიკალური IP მისამართი ჟოლოს pi, რომელზეც ჩვენ შეგვიძლია განვათავსოთ ჩვენი კვანძის სერვერი.

დააკოპირეთ IP მისამართი ბუფერში.

ნაბიჯი 11:

გამოსახულება
გამოსახულება

ახლა გაუშვით კოდი ჟოლოს პი ტერმინალიდან

sudo კვანძის webserver.js

თუ ის აჩვენებს რაიმე შეცდომას ჩვენების ან პროტოკოლების შესახებ…. შეასრულოს

sudo xhost +

ახლა დაუბრუნდით დიალოგურ ნაკადს და დააწკაპუნეთ შესრულების განყოფილებაზე

ნაბიჯი 12:

გამოსახულება
გამოსახულება

შეიყვანეთ IP მისამართი ან URL მონაცემთა ნაკრებიდან ზემოთ მოცემულ სივრცეში.

ნაბიჯი 13:

გამოსახულება
გამოსახულება

დაბოლოს, გადადით მიზნების განყოფილებაში და ჩართეთ webhook ზარი შესრულების ჩანართიდან.

Ის არის! ახლა დაბრუნდით თქვენს Google სახლში და შეამოწმეთ როგორ მუშაობს!

მომავალ დრომდე, გილოცავთ ჰაკინგს:)

გირჩევთ: