Სარჩევი:

Raspberry Pi Slack Scroll Bot!: 10 ნაბიჯი
Raspberry Pi Slack Scroll Bot!: 10 ნაბიჯი

ვიდეო: Raspberry Pi Slack Scroll Bot!: 10 ნაბიჯი

ვიდეო: Raspberry Pi Slack Scroll Bot!: 10 ნაბიჯი
ვიდეო: Slack Pi Bot 2024, ივლისი
Anonim
Raspberry Pi Slack Scroll Bot!
Raspberry Pi Slack Scroll Bot!
Raspberry Pi Slack Scroll Bot!
Raspberry Pi Slack Scroll Bot!
Raspberry Pi Slack Scroll Bot!
Raspberry Pi Slack Scroll Bot!

ეს პროექტი აერთიანებს Raspberry Pi- ს Pimoroni Scroll Bot ნაკრებთან (შეცვლილია ღილაკებით), Slack და IFTT ვიზუალური და ხმოვანი შეტყობინებებისათვის, როდესაც YouTube ვიდეოები გამოქვეყნდება გამოწერაზე!

ნაკრების ღილაკის ცვლილებები არჩევითია, ასევე სპიკერი აცხადებს ახალი ვიდეოს ჩამოსვლას.

თქვენ ასევე შეგიძლიათ გამოიყენოთ ეს ნებისმიერი შეტყობინების გაგზავნა ბოტთან slack– ით, წინასწარ გაგზავნით „ბოტს“შეტყობინების წინა ნაწილში, როგორიცაა „bot hello world“. "bot clear" გაასუფთავებს ეკრანს.

ნაბიჯი 1: გადახვევის ბოტის შეკრება

შეავსეთ Pimoroni Scroll Bot- ის შეკრების ინსტრუქცია:

learn.pimoroni.com/tutorial/sandyj/assembl…

ნაბიჯი 2: დააინსტალირეთ პაკეტები და Codebase

დააინსტალირეთ აუდიო პაკეტები:

sudo apt-get განახლება & sudo apt-get განახლება -y

sudo apt-get დააინსტალირეთ mpg123

დააინსტალირეთ პითონის პაკეტები:

პიპის დაყენების კოლბა

pip install psutil პიპ დააინსტალირეთ slackclient

მიჰყევით სახელმძღვანელოს Pimoroni's– ში Scroll Hat– ით დასაწყებად:

learn.pimoroni.com/tutorial/sandyj/getting…

რომელიც მოიცავს ნიმუშის კოდის და რესურსების გადმოტვირთვას:

დახვევა https://get.pimoroni.com/scrollphathd | ბაშო

მას შემდეგ, რაც ეკრანი თავდაყირაა დამონტაჟებული რობოტის ნაკრებში, თქვენ უნდა დააკოპიროთ კოდი ეკრანის 180 -ის დასატრიალებლად:

$ sed -i's/#scrollphathd.rotate (გრადუსი = 180) /scrollphathd.rotate (გრადუსი = 180)/g '/home/pi/Pimoroni/scrollphathd/examples/web-api.py

ნაბიჯი 3: Slack Instance- ის კონფიგურაცია

Slack ინსტანციის კონფიგურაცია
Slack ინსტანციის კონფიგურაცია
Slack ინსტანციის კონფიგურაცია
Slack ინსტანციის კონფიგურაცია

იმისათვის, რომ სკრიპტი დაუკავშირდეს Slack– ს, დაგჭირდებათ ბოტის API გასაღები.

დაიწყეთ თქვენი Slack გუნდის ვებგვერდზე (https://my.slack.com/services/new/bot) შესვლით და შეარჩიეთ მომხმარებლის სახელი თქვენი ბოტისთვის, შემდეგ დააკოპირეთ მოწოდებული API ნიშანი.

ნაბიჯი 4: შექმენით Slack არხი და მოიწვიეთ თქვენი რობოტი არხზე

შექმენით სუსტი არხი და მოიწვიეთ თქვენი რობოტი არხზე
შექმენით სუსტი არხი და მოიწვიეთ თქვენი რობოტი არხზე

თქვენ შეგიძლიათ გამოიყენოთ ზოგადი slack არხი, ან თუ გსურთ შეგიძლიათ შექმნათ ცალკე slack არხი.

ჩემს შემთხვევაში მე გამოვიყენე #robot-claire-control

თქვენ უნდა მოიწვიოთ თქვენი რობოტი არხში, წინააღმდეგ შემთხვევაში ის ვერ იხილავს გაგზავნილ შეტყობინებებს.

ნაბიჯი 5: ჩამოტვირთეთ SlackPiBot წყაროს კოდი და კონფიგურაცია

ჩამოტვირთეთ slackPiBot წყაროს კოდი git– დან:

git კლონი

განაახლეთ ხაზი 29 თქვენი API გასაღებით:

slack_client = SlackClient ("xoxb-YOUR-API-KEY-HERE")

განაახლეთ 34 ხაზი თქვენი რობოტის სახელით:

if user.get ('name') == "robot-claire":

ნაბიჯი 6: დააინსტალირეთ Crontabs ჩატვირთვისას ავტომატურად დაწყების მიზნით:

Crontabs- ის დაყენება ჩატვირთვისას ავტომატურად დასაწყებად:

crontab -e

დაამატეთ შემდეგი თქვენი crontab ბოლოში:

@reboot python /home/pi/Pimoroni/scrollphathd/examples/web-api.py@reboot python /home/pi/slackPiBot/check_button.py @reboot python /home/pi/slackPiBot/forever.py/home/pi/ slackPiBot/slackPiBot.py >> /home/pi/slackPiBot/outputLog.txt 2> & 1

ნაბიჯი 7: სურვილისამებრ: დაამატეთ USB სპიკერის გამომავალი

ამ პროექტისთვის მე ვიყენებ USB სპიკერს აშშ Robotics– დან - ხელმისაწვდომია ამაზონზე ან ebay– ზე.

თუ იყენებთ მსგავს რამეს, თქვენ უნდა შეცვალოთ ნაგულისხმევი სისტემის ხმის მოწყობილობა alsa კონფიგურაციის (/usr/share/alsa/alsa.conf) რედაქტირებით. შეცვალეთ შემდეგი ხაზები:

ნაგულისხმევი.ctl.card 1defaults.pcm.card 1

1 არის თქვენი მოწყობილობის ინდექსი. თქვენი USB მოწყობილობის მოწყობილობის ID- ს მოსაძებნად, გაუშვით aplay -l და მოძებნეთ ბარათის ID.

ნაბიჯი 8: სურვილისამებრ: დაამატეთ სადენიანი ღილაკები რობოტს, რომ გაასუფთაოთ შეტყობინებები

სურვილისამებრ: დაამატეთ სადენიანი ღილაკები რობოტს, რომ გაასუფთაოთ შეტყობინებები
სურვილისამებრ: დაამატეთ სადენიანი ღილაკები რობოტს, რომ გაასუფთაოთ შეტყობინებები
სურვილისამებრ: დაამატეთ სადენიანი ღილაკები რობოტს, რომ გაასუფთაოთ შეტყობინებები
სურვილისამებრ: დაამატეთ სადენიანი ღილაკები რობოტს, რომ გაასუფთაოთ შეტყობინებები

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

ჩემს რობოტს დავამატე ორი ღილაკი, მაგრამ ამ პროექტში მე მხოლოდ GPIO17- ს ვიყენებ.

სკრიპტი check_button.py რომელიც მუშაობს ჩატვირთვის გამოკითხვაზე GPIO17 ყოველ რამდენიმე მილიწამში და დეპრესიის შემთხვევაში აგზავნის HTTP POST- ს ეკრანის ნიმუშზე ეკრანის გასასუფთავებლად.

ნაბიჯი 9: გაიყვანეთ ეს ყველაფერი ერთად და გამოაგზავნეთ შედეგი Pi- ზე

არსებობს 4 სკრიპტი, რომლებიც ერთად მუშაობენ ამ პროექტისთვის:

/home/pi/Pimoroni/scrollphathd/examples/web-api.py/home/pi/slackPiBot/check_button.py/home/pi/slackPiBot/forever.py /home/pi/slackPiBot/slackPiBot.py

ვებ – აპი სკრიპტი უზრუნველყოფილია Pimoroni– ს მიერ და წარმოადგენს მარტივ ვებ პროგრამას ეკრანის გასაკონტროლებლად POST ბრძანებებით.

Check_button პითონის სკრიპტი გამოკითხავს GPIO ქინძისთავებს და როდესაც ღილაკი დეპრესიაშია აგზავნის HTTP POST- ს web-api.py სკრიპტში.

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

SlackPiBot.py სკრიპტი უკავშირდება slack- ს და მონიტორინგს უწევს არხს შეტყობინებებისათვის, რომელიც იწყება "bot" - ით ან IFTT- ის პოსტებით. თუ არსებობს შესატყვისი, ის გამოგიგზავნით HTTP POST- ს web-api.py სკრიპტზე და გამოჩნდება ეკრანზე.

ნაბიჯი 10: სურვილისამებრ: IFTT ინტეგრაცია

სურვილისამებრ: IFTT ინტეგრაცია
სურვილისამებრ: IFTT ინტეგრაცია
სურვილისამებრ: IFTT ინტეგრაცია
სურვილისამებრ: IFTT ინტეგრაცია
სურვილისამებრ: IFTT ინტეგრაცია
სურვილისამებრ: IFTT ინტეგრაცია

ეს პროექტი შექმნილია იმისთვის, რომ ჩემი შვილები გავაფრთხილო იმ ადამიანების მიერ გამოქვეყნებული ვიდეოების შესახებ, რომლებსაც ისინი ადევნებენ თვალყურს YouTube– ზე, რადგან ისინი ძალიან პატარები არიან იმისათვის, რომ ჰქონდეთ საკუთარი iPhone ან iPads. მე ეს შევძელი IFTT რეცეპტების შექმნით, რომლებიც აგზავნიან შეტყობინებას slack საკონტროლო არხზე ვიდეოს განთავსების შემდეგ.

ინსტრუქციული ვიკი ართულებს ამის დანახვას ერთ ნაბიჯში, მაგრამ ზემოთ მოცემული ეკრანის სურათები აჩვენებს საბოლოო შედეგს.

გირჩევთ: