Obsah:

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

Video: Raspberry Pi Slack Scroll Bot !: 10 krokov

Video: Raspberry Pi Slack Scroll Bot !: 10 krokov
Video: Leap Motion SDK 2024, November
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!

Tento projekt kombinuje Raspberry Pi so súpravou Pimoroni Scroll Bot (upravenou pomocou tlačidiel), Slack a IFTT a poskytuje vizuálne a zvukové upozornenia, keď sú videá z YouTube odoslané na predplatné!

Úpravy tlačidiel súpravy sú voliteľné, rovnako ako reproduktor na ohlásenie príchodu nového videa.

Môžete to tiež použiť na odoslanie akejkoľvek správy robotovi prostredníctvom služby Slack tak, že pred správu napíšete „bot“, napríklad „bot hello world“. „Bot clear“vyčistí obrazovku.

Krok 1: Scroll Bot Assembly

Dokončite pokyny na montáž posuvného robota Pimoroni:

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

Krok 2: Nainštalujte balíky a kódovú základňu

Inštalácia zvukových balíkov:

sudo apt-get update & sudo apt-get upgrade -y

sudo apt-get install mpg123

Nainštalujte balíky pythonu:

pip install bank

pip install psutil pip install slackclient

Postupujte podľa pokynov v Pimoroni's Začíname s Scroll Hat:

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

ktorá zahŕňa stiahnutie ukážkového zdrojového kódu a zdrojov:

zvinutie https://get.pimoroni.com/scrollphathd | bash

Pretože je obrazovka v súprave robotov namontovaná hore nohami, na otočenie obrazovky o 180 musíte odkomentovať kód:

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

Krok 3: Konfigurácia inštancie Slack

Konfigurácia inštancie Slack
Konfigurácia inštancie Slack
Konfigurácia inštancie Slack
Konfigurácia inštancie Slack

Aby skript komunikoval so Slackom, budete potrebovať bot API Key.

Začnite prihlásením sa na svoju tímovú webovú stránku Slack (https://my.slack.com/services/new/bot), zvoľte používateľské meno pre svojho robota a potom skopírujte poskytnutý token API.

Krok 4: Vytvorte uvoľnený kanál a pozvite svojho robota do kanála

Vytvorte kanál Slack a pozvite svojho robota na kanál
Vytvorte kanál Slack a pozvite svojho robota na kanál

Môžete použiť všeobecný uvoľnený kanál, alebo ak chcete, môžete vytvoriť samostatný uvoľnený kanál.

V mojom prípade som použil #robot-claire-control

Svojho robota musíte pozvať do kanála, inak sa mu odoslané správy nezobrazia.

Krok 5: Stiahnite si zdrojový kód SlackPiBot a nakonfigurujte ho

Stiahnite si zdrojový kód slackPiBot z git:

klon git

Aktualizujte riadok 29 pomocou kľúča API:

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

Aktualizujte riadok 34 menom svojho robota:

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

Krok 6: Konfigurujte Crontabs tak, aby sa automaticky spúšťali pri zavádzaní:

Nastavenie crontabs na automatické spustenie pri štarte:

crontab -e

Do spodnej časti crontabu pridajte nasledujúce:

@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

Krok 7: Voliteľné: Pridajte výstup reproduktora USB

Na tento projekt používam hlasitý odposluch USB od spoločnosti US Robotics - dostupný na amazone alebo ebay.

Ak používate niečo podobné, budete musieť zmeniť predvolené zvukové zariadenie systému úpravou konfigurácie alsa (/usr/share/alsa/alsa.conf). Zmeňte nasledujúce riadky:

defaults.ctl.card 1defaults.pcm.card 1

1 je indexom vášho zariadenia. Ak chcete nájsť ID zariadenia vášho USB zariadenia, spustite aplay -l a vyhľadajte ID karty.

Krok 8: Voliteľné: Pridajte do robota drôtové tlačidlá a vymažte správy

Voliteľné: Pridajte do robota drôtové tlačidlá a vymažte správy
Voliteľné: Pridajte do robota drôtové tlačidlá a vymažte správy
Voliteľné: Pridajte do robota drôtové tlačidlá a vymažte správy
Voliteľné: Pridajte do robota drôtové tlačidlá a vymažte správy

Tento krok je voliteľný, ale dôrazne sa odporúča vymazať správy na obrazovke.

Do svojho robota som pridal dve tlačidlá, ale v tomto projekte používam iba GPIO17.

Skript check_button.py, ktorý beží pri štarte, dotazuje GPIO17 každých niekoľko milisekúnd a ak je stlačený, odošle HTTP POST do skriptu ukážkovej obrazovky, aby obrazovku vyčistil.

Krok 9: Zoskupenie a odoslanie výstupu na Pi

Na tomto projekte spolupracujú 4 skripty:

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

Skript web-api poskytuje spoločnosť Pimoroni a je to jednoduchá webová aplikácia na ovládanie obrazovky pomocou príkazov POST.

Skript python check_button dotazuje piny GPIO a keď je tlačidlo stlačené, odošle HTTP POST do skriptu web-api.py.

Skript navždy.py spustí skript slackPiBot.py, aby sa ubezpečil, že ak dôjde k akýmkoľvek nechytaným chybám alebo sa odpojí od slacku, skript sa reštartuje, aby sa zabránilo zmeškaniu všetkých správ.

Skript slackPiBot.py sa pripája k serveru slack a monitoruje kanál pre správy začínajúce na „bot“alebo príspevky z IFTT. Ak dôjde k zhode, odošle HTTP POST do skriptu web-api.py a zobrazí sa na obrazovke.

Krok 10: Voliteľné: Integrácia IFTT

Voliteľné: Integrácia IFTT
Voliteľné: Integrácia IFTT
Voliteľné: Integrácia IFTT
Voliteľné: Integrácia IFTT
Voliteľné: Integrácia IFTT
Voliteľné: Integrácia IFTT

Tento projekt bol navrhnutý tak, aby upozornil moje deti na videá zverejnené ľuďmi, ktorých sledujú na youtube, pretože sú príliš malé na to, aby mali vlastný iPhone alebo iPad. Dosiahol som to vytvorením receptov IFTT, ktoré po uverejnení videa odošlú upozornenie na kanál kontroly uvoľnenia.

Wiki s pokynmi to sťažuje v jednom kroku, ale vyššie uvedené snímky obrazovky ukazujú konečný výsledok.

Odporúča: