Përmbajtje:

Raspberry Pi Slack Scroll Bot !: 10 hapa
Raspberry Pi Slack Scroll Bot !: 10 hapa

Video: Raspberry Pi Slack Scroll Bot !: 10 hapa

Video: Raspberry Pi Slack Scroll Bot !: 10 hapa
Video: BTT SKR2 -Klipper Firmware Install 2024, Nëntor
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!

Ky projekt kombinon një Raspberry Pi me një komplet Pimoroni Scroll Bot (i modifikuar me butona), Slack dhe IFTT për njoftime vizuale dhe të dëgjueshme kur videot e youtube postohen në një pajtim!

Ndryshimet e butonave në komplet janë opsionale, si dhe altoparlanti për të njoftuar ardhjen e një videoje të re.

Ju gjithashtu mund ta përdorni këtë për të dërguar ndonjë mesazh në bot përmes slack duke paralajmëruar "bot" në pjesën e përparme të mesazhit, siç është "bot hello world". "bot clear" do të pastrojë ekranin.

Hapi 1: Asambleja e Botimit të Lundrueshëm

Plotësoni udhëzimet për montimin e Botit të Pimoroni Scroll:

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

Hapi 2: Instaloni Pakot dhe Codebase

Instaloni paketat audio:

sudo apt-merrni përditësim & sudo apt-merrni përmirësim -y

sudo apt-get install mpg123

Instaloni paketat python:

balona për instalimin e pipit

pip install psutil pip install slackclient

Ndiqni mësimin në Pimoroni's për Fillimin me Scroll Hat:

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

i cili përfshin shkarkimin e mostrës së kodit burimor dhe burimeve:

kaçurrela https://get.pimoroni.com/scrollphathd | bash

Meqenëse ekrani është montuar me kokë poshtë në kompletin e robotëve, duhet të mos komentoni kodin për të rrotulluar ekranin 180:

$ sed -i 's/#scrollphathd.rotate (gradë = 180) /scrollphathd.rotate (gradë = 180)/g' /home/pi/Pimoroni/scrollphathd/examples/web-api.py

Hapi 3: Konfigurimi i Slack Instance

Konfigurimi i Slack Instance
Konfigurimi i Slack Instance
Konfigurimi i Slack Instance
Konfigurimi i Slack Instance

Që skenari të komunikojë me Slack, do t'ju duhet një çelës API bot.

Filloni duke hyrë në faqen tuaj të internetit të ekipit Slack (https://my.slack.com/services/new/bot) dhe zgjidhni një emër përdoruesi për botin tuaj, pastaj kopjoni shenjën API të dhënë.

Hapi 4: Krijoni një kanal të ngadaltë dhe ftoni robotin tuaj në kanal

Krijoni një kanal të ngadaltë dhe ftoni robotin tuaj në kanal
Krijoni një kanal të ngadaltë dhe ftoni robotin tuaj në kanal

Ju mund të përdorni kanalin e përgjithshëm të plogështisë, ose nëse preferoni mund të krijoni një kanal të veçantë të zbehjes.

Në rastin tim kam përdorur #robot-claire-control

Ju duhet të ftoni robotin tuaj në kanal, përndryshe ai nuk do të shohë mesazhet që dërgohen.

Hapi 5: Shkarkoni dhe konfiguroni kodin burimor SlackPiBot

Shkarkoni kodin burimor slackPiBot nga git:

git klon

Përditësoni rreshtin 29 me çelësin tuaj API:

slack_client = SlackClient ("xoxb-API-TUAJ-ÇELEYS-KERTU")

Përditësoni rreshtin 34 me emrin tuaj të robotit:

nëse user.get ('emri') == "robot-claire":

Hapi 6: Konfiguroni Crontabs për të filluar automatikisht në boot:

Vendosja e crontabs për të filluar automatikisht në nisje:

crontab -e

Shtoni sa vijon në fund të crontab tuaj:

@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

Hapi 7: Opsional: Shtoni një dalje të altoparlantit USB

Për këtë projekt, unë jam duke përdorur një altoparlant USB nga US Robotics - i disponueshëm në amazon ose ebay.

Nëse përdorni diçka të ngjashme, do t'ju duhet të ndryshoni pajisjen e paracaktuar të zërit të sistemit duke redaktuar konfigurimin alsa (/usr/share/alsa/alsa.conf). Ndryshoni rreshtat e mëposhtëm:

parazgjedhje.ctl.kartë 1defaults.pcm.kartë 1

1 është indeksi i pajisjes tuaj. Për të gjetur ID -në e pajisjes së pajisjes tuaj USB, ekzekutoni aplay -l dhe kërkoni ID -në e kartës.

Hapi 8: Opsional: Shtoni butona me tela te Roboti për të pastruar mesazhet

Opsionale: Shtoni butona me tela në robot për të pastruar mesazhet
Opsionale: Shtoni butona me tela në robot për të pastruar mesazhet
Opsionale: Shtoni butona me tela te Roboti për të pastruar mesazhet
Opsionale: Shtoni butona me tela te Roboti për të pastruar mesazhet

Ky hap është opsional, por rekomandohet shumë për të pastruar mesazhet në ekran.

I kam shtuar dy butona shtypi robotit tim, por në këtë projekt unë jam duke përdorur vetëm GPIO17.

Skripti check_button.py që funksionon në sondazhet e nisjes GPIO17 çdo disa milisekonda dhe nëse është në depresion dërgon një HTTP POST në skriptin e mostrës të ekranit për të pastruar ekranin.

Hapi 9: Tërheqja e të gjitha së bashku dhe dërgimi i prodhimit në Pi

Janë 4 skriptet që punojnë së bashku për këtë projekt:

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

Skenari web-api ofrohet nga Pimoroni dhe është një aplikacion i thjeshtë në internet për të kontrolluar ekranin me komandat POST.

Skripti python check_button anketon kunjat e GPIO dhe kur butoni është i shtypur dërgon një HTTP POST në skenarin web-api.py.

Skripti ever.py fillon skriptin slackPiBot.py për të siguruar që nëse ka ndonjë gabim të pazbuluar ose shkëputet nga slack, skripti riniset për të shmangur humbjen e ndonjë mesazhi.

Skripti slackPiBot.py lidhet me slack dhe monitoron kanalin për mesazhe që fillojnë me "bot" ose postime nga IFTT. Nëse ka një ndeshje, ai do të dërgojë një HTTP POST në skenarin web-api.py dhe do të shfaqet në ekran.

Hapi 10: Opsionale: Integrimi IFTT

Opsionale: Integrimi IFTT
Opsionale: Integrimi IFTT
Opsionale: Integrimi IFTT
Opsionale: Integrimi IFTT
Opsionale: Integrimi IFTT
Opsionale: Integrimi IFTT

Ky projekt u krijua për të paralajmëruar fëmijët e mi për videot e postuara nga njerëzit që ata ndjekin në youtube, pasi ata janë shumë të vegjël për të pasur iPhone ose iPad -et e tyre. Unë e arrita këtë duke krijuar receta IFTT që dërgojnë një njoftim në kanalin e kontrollit të ngadaltë pasi të jetë postuar një video.

Wiki udhëzues e bën këtë të komplikuar për tu parë në një hap, por pamjet e mësipërme tregojnë rezultatin përfundimtar.

Recommended: