สารบัญ:
- ขั้นตอนที่ 1: การประกอบสโครลบอท
- ขั้นตอนที่ 2: ติดตั้งแพ็คเกจและ Codebase
- ขั้นตอนที่ 3: การกำหนดค่าอินสแตนซ์ Slack
- ขั้นตอนที่ 4: สร้าง Slack Channel และเชิญหุ่นยนต์ของคุณไปที่ Channel
- ขั้นตอนที่ 5: ดาวน์โหลดซอร์สโค้ด SlackPiBot & กำหนดค่า
- ขั้นตอนที่ 6: กำหนดค่า Crontabs ให้เริ่มทำงานโดยอัตโนมัติเมื่อบู๊ต:
- ขั้นตอนที่ 7: ตัวเลือกเสริม: เพิ่มเอาต์พุตลำโพง USB
- ขั้นตอนที่ 8: ตัวเลือกเสริม: เพิ่มปุ่มแบบมีสายให้กับ Robot เพื่อล้างข้อความ
- ขั้นตอนที่ 9: ดึงมันทั้งหมดเข้าด้วยกันและส่งผลลัพธ์ไปยัง Pi
- ขั้นตอนที่ 10: ตัวเลือก: การรวม IFTT
วีดีโอ: Raspberry Pi Slack Scroll Bot!: 10 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:06
โปรเจ็กต์นี้รวม Raspberry Pi เข้ากับชุด Pimoroni Scroll Bot (แก้ไขด้วยปุ่ม), Slack และ IFTT สำหรับการแจ้งเตือนด้วยภาพและเสียงเมื่อวิดีโอ youtube ถูกโพสต์ในการสมัครรับข้อมูล!
การปรับเปลี่ยนปุ่มในชุดเป็นตัวเลือกเสริม เช่นเดียวกับผู้พูดเพื่อประกาศการมาถึงของวิดีโอใหม่
คุณยังสามารถใช้ตัวเลือกนี้เพื่อส่งข้อความไปยังบอทผ่าน slack โดยใส่ "bot" ไว้ข้างหน้าข้อความ เช่น "bot hello world" "บอทเคลียร์" จะล้างหน้าจอ
ขั้นตอนที่ 1: การประกอบสโครลบอท
ปฏิบัติตามคำแนะนำในการประกอบ Pimoroni Scroll Bot:
learn.pimoroni.com/tutorial/sandyj/assembl…
ขั้นตอนที่ 2: ติดตั้งแพ็คเกจและ Codebase
ติดตั้งแพ็คเกจเสียง:
sudo apt-get update & sudo apt-get upgrade -y
sudo apt-get ติดตั้ง mpg123
ติดตั้งแพ็คเกจหลาม:
pip ติดตั้ง flask
pip ติดตั้ง psutil pip ติดตั้ง slackclient
ทำตามบทช่วยสอนที่ Pimoroni's สำหรับการเริ่มต้นใช้งาน Scroll Hat:
learn.pimoroni.com/tutorial/sandyj/getting…
ซึ่งรวมถึงการดาวน์โหลดซอร์สโค้ดตัวอย่างและทรัพยากร:
curl https://get.pimoroni.com/scrollphathd | ทุบตี
เนื่องจากหน้าจอถูกติดตั้งกลับหัวในชุดหุ่นยนต์ คุณต้องยกเลิกการใส่รหัสเพื่อหมุนหน้าจอ 180:
$ sed -i 's/#scrollphathd.rotate(degrees=180)/scrollphathd.rotate(degrees=180)/g' /home/pi/Pimoroni/scrollphathd/examples/web-api.py
ขั้นตอนที่ 3: การกำหนดค่าอินสแตนซ์ Slack
เพื่อให้สคริปต์สื่อสารกับ Slack คุณจะต้องมีคีย์ API ของบอท
เริ่มต้นด้วยการเข้าสู่หน้าเว็บทีม Slack ของคุณ (https://my.slack.com/services/new/bot) และเลือกชื่อผู้ใช้สำหรับบอทของคุณ จากนั้นคัดลอกโทเค็น API ที่ให้มา
ขั้นตอนที่ 4: สร้าง Slack Channel และเชิญหุ่นยนต์ของคุณไปที่ Channel
คุณสามารถใช้ช่องสัญญาณหย่อนทั่วไป หรือหากต้องการ คุณสามารถสร้างช่องสัญญาณหย่อนแยกต่างหากได้
ในกรณีของฉัน ฉันใช้ #robot-claire-control
คุณต้องเชิญหุ่นยนต์ของคุณเข้าสู่ช่อง มิฉะนั้นจะไม่เห็นข้อความที่ส่ง
ขั้นตอนที่ 5: ดาวน์โหลดซอร์สโค้ด SlackPiBot & กำหนดค่า
ดาวน์โหลดซอร์สโค้ด slackPiBot จาก git:
โคลน git
อัปเดตบรรทัดที่ 29 ด้วยคีย์ API ของคุณ:
slack_client = SlackClient("xoxb-YOUR-API-KEY-HERE")
อัปเดตบรรทัดที่ 34 ด้วยชื่อหุ่นยนต์ของคุณ:
ถ้า 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 จาก US Robotics ซึ่งมีจำหน่ายบน amazon หรือ ebay
หากใช้สิ่งที่คล้ายกัน คุณจะต้องเปลี่ยนอุปกรณ์เสียงเริ่มต้นของระบบโดยแก้ไขการกำหนดค่า alsa (/usr/share/alsa/alsa.conf) เปลี่ยนบรรทัดต่อไปนี้:
defaults.ctl.card 1defaults.pcm.card 1
1 เป็นดัชนีของอุปกรณ์ของคุณ หากต้องการค้นหา ID อุปกรณ์ของอุปกรณ์ USB ของคุณ ให้เรียกใช้ aplay -l และค้นหา ID การ์ด
ขั้นตอนที่ 8: ตัวเลือกเสริม: เพิ่มปุ่มแบบมีสายให้กับ Robot เพื่อล้างข้อความ
ขั้นตอนนี้เป็นทางเลือก แต่ขอแนะนำให้ล้างข้อความบนหน้าจอ
ฉันได้เพิ่มปุ่มกดสองปุ่มให้กับหุ่นยนต์ของฉัน แต่ในโครงการนี้ ฉันใช้ 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
สคริปต์ web-api จัดทำโดย Pimoroni และเป็นเว็บแอปพลิเคชันที่เรียบง่ายในการควบคุมหน้าจอด้วยคำสั่ง POST
สคริปต์หลาม check_button สำรวจพิน GPIO และเมื่อกดปุ่ม จะส่ง HTTP POST ไปยังสคริปต์ web-api.py
สคริปต์ forever.py เริ่มต้นสคริปต์ slackPiBot.py เพื่อให้แน่ใจว่าหากมีข้อผิดพลาดที่ไม่ถูกตรวจจับหรือยกเลิกการเชื่อมต่อจาก slack สคริปต์จะเริ่มต้นใหม่เพื่อหลีกเลี่ยงข้อความที่ขาดหายไป
สคริปต์ slackPiBot.py เชื่อมต่อกับ slack และตรวจสอบช่องสำหรับข้อความที่ขึ้นต้นด้วย "bot" หรือโพสต์จาก IFTT หากมีข้อมูลตรงกัน ระบบจะส่ง HTTP POST ไปยังสคริปต์ web-api.py และแสดงบนหน้าจอ
ขั้นตอนที่ 10: ตัวเลือก: การรวม IFTT
โปรเจ็กต์นี้ออกแบบมาเพื่อเตือนเด็กๆ ของฉันเกี่ยวกับวิดีโอที่โพสต์โดยคนที่พวกเขาติดตามบน youtube เนื่องจากพวกเขายังเด็กเกินไปที่จะมี iPhone หรือ iPad เป็นของตัวเอง ฉันทำได้โดยการสร้างสูตร IFTT ที่ส่งการแจ้งเตือนไปยังช่องควบคุมหย่อนเมื่อโพสต์วิดีโอแล้ว
วิกิที่สอนได้ทำให้สิ่งนี้ดูซับซ้อนในขั้นตอนเดียว แต่ภาพหน้าจอด้านบนแสดงผลลัพธ์สุดท้าย
แนะนำ:
Slack Status Updater ด้วย ESP8266: 5 ขั้นตอน (พร้อมรูปภาพ)
Slack Status Updater ด้วย ESP8266: โปรเจ็กต์นี้ช่วยให้วันของคุณง่ายขึ้นเล็กน้อย หากคุณเป็นคนทำงานระยะไกลโดยใช้ Slack ฉันจะแสดงวิธีสร้างโดยใช้บอร์ด wifi ของ ESP8266 อย่าพลาดวิดีโอด้านบนเพื่อดูภาพรวม ไม่ว่าคุณจะเพิ่งเริ่มใช้ Slack หรือเพิ่งใช้
Scroll Single LCD Line: 4 ขั้นตอน (พร้อมรูปภาพ)
Scroll Single LCD Line: Liquid Crystal Library มีฟังก์ชันที่มีประโยชน์สองอย่าง scrollDisplayLeft() และ scrollDisplayRight() ฟังก์ชันเหล่านี้จะเลื่อนหน้าจอทั้งหมด นั่นคือเลื่อนทั้งสองบรรทัดบน LCD 1602 และทั้งสี่บรรทัดบน LCD 2004 สิ่งที่เรามักต้องการคือ abi
สถานะ Kicker อย่างง่ายและระบบการจองพร้อม Slack Integration: 12 ขั้นตอน (พร้อมรูปภาพ)
สถานะ Kicker อย่างง่ายและระบบการจองพร้อม Slack Integration: ในบริษัทที่ฉันทำงานมีตารางนักเตะ บริษัทใช้พื้นที่หลายชั้น และพนักงานบางคนต้องใช้เวลาถึง 3 นาทีในการไปที่โต๊ะและ…เพื่อตระหนักว่าโต๊ะนั้นถูกครอบครองอยู่แล้ว ดังนั้นจึงมีแนวคิดในการสร้างคิ
Slack Integrated Coffeebot: 4 ขั้นตอน
Slack Integrated Coffeebot: คุณรู้สึกหงุดหงิดในที่ทำงานเมื่อไม่มีกาแฟสดในครัวเมื่อคุณมาถึงหรือไม่? ปัญหาสำนักงานทั่วไปนี้ต้องดำเนินการอย่างจริงจัง ด้วยคำแนะนำนี้ คุณสามารถสร้าง Coffeebot แบบบูรณาการ Slack สำหรับเครื่องชงกาแฟของคุณด้วย sma
Desktop Scroll Wheel และ Volume Control!: 8 ขั้นตอน (พร้อมรูปภาพ)
Desktop Scroll Wheel และ Volume Control!: สร้างโปรเจ็กต์สุดสัปดาห์ของนิตยสาร 3/4/09 พื้นหลังบางส่วนเมื่อเร็วๆ นี้ ฉันได้อ่านบล็อกต่างๆ มากมาย ในแต่ละวัน ฉันจะอ่านโพสต์ล่าสุดเกี่ยวกับ engadget, lifehacker, hackaday, BBG และบล็อก MAKE: ปัญหาสำหรับฉันเกิดขึ้นเมื่อฉันรู้ว่าโอ