میخواهیم از طریق یک روبات در تلگرام یک عکس را توسط دوربین raspberry pi گرفته و ارسال کنیم خب ابتدا باید فایل مورد نیاز را روی raspberry pi نصب کنیم. نحوه نصب telepot :
- محیط ترمینال را باز کرده و خطوط زیر را می نویسیم:
1 2 |
sudo apt-get install python-pip sudo pip install teleport |
بعد از نصب باید در تلگرام یک ربات بسازیم پس مراحل زیر را انجام میدیم :
1.در قسمت search عبارت botfather را سرچ کنید و ان را لمس کنید
عبارت /newbot را بنویسید
یک ID برای ربات خود بگذارید
اگر علمیات ها موفق بود به شما پیامی میفرستد که بخشی از ان حاوی عبارتی مانند این است:
273667621:AAEW2fCUbywfss83SwhRc7XwAw9_jZDGekU
به این عبارت token می گویند این عبارت را ذخیره کنید . و لینک اول لینک ربات شما است روی ان کلیک کنید تا به صفحه ربات دسترسی پیدا کنید فراموش نکنید تا دوربین raspberry pi را حتما به برد وصل کرده باشید !!
حال به raspberry pi بروید وروی صفحه راست کلیک کنید و در بخش creatnew گزینه emptyfile را انتخاب کنید و در کادر باز شده عبارت زیر را بنویسید :
Code.py
سپس وارد ان بشوید و کد زیر را در ان بنویسید:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
import teleport import time from picamera import PiCamera def handle(msg): chat_id = msg['chat']['id'] command = msg['text'] print(msg['chat']['username']) print('Got command: %s' % command) if command == '/start': bot.sendMessage(chat_id, 'program successfully started') if command == '/photo': camera.capture('/home/pi/Desktop/1.jpg') bot.sendPhoto(chat_id,open('/home/pi/Desktop/1.jpg','rb')) camera=PiCamera() bot = telepot.Bot('273667621:AAEW2fCUbywfss83SwhRc7XwAw9_jZDGekU')#کدی را که قبلا کپی کردید را اینجا وارد کنید bot.message_loop(handle) print('The code is running') while 1: time.sleep(1) |
سپس اجرا کنید
چنین صفحه ای ظاهر خواهد شد :
در تلگرام به صفحه ربات بروید و دکمه start را بزنید :
سپس کلمه /photo را بفرستید و منتظر بمانید تا عکس ارسال شود .
و
نویسنده: شهاب نیکخو منبع: eca.ir
سلام
خطای زیر ظاهر می شود
ImportError: no module named ‘telepot’
در حالی که در قسمت اول telepot به صورت succesfull نصب میشه
لطفا بفرمایید ایراد از کجاست؟
سلام
راه حل مشکل را خودم یافتم.
از دستورات زیر استفاده کردم
sudo apt-get install python3-pip
sudo pip3 install telepot
با سپاس.
سلام
من یک پروژه رو با رسپبری انجام دادم می خواستم بدونم برای ارائه به استادم باید لپ تاپم رو هم ببرم؟ چون من رسپبری رو که رو شن می کنم و روی دسکتاپ لپ تاپم نشون داده می شه از اون طریق می تونم سنسور رو راه اندازی کنم حالا سوالم اینه که می شه یه جوری به جز نیاز به لپ تاپ اون رو پروگرام کنم یا اینکه برای ارائه هر پروژه ای با رسپبری بایستی لپ تاپ هم ببرم؟
سلام
ممنون از مطالب خوبتون، من طبق مراحلی که گفتید عمل کردم. اما وقتی برنامه را Run میکنم خطا میده:
Traceback (most recent call last):
File “/home/pi/Desktop/code.py”, line 24, in
bot = teleport.Bot(‘3718363###########IwKpDhIK9BjtikZCSt93k’)
AttributeError: ‘module’ object has no attribute ‘Bot’
سلام
برنامه شما ماژول bot را نشناخته.
از نصب کامل telebot مطمئن شوید و کد تعریف ماژول را بررسی کنید.
در ضمن برادر من! شما با قرار دادن توکن روبوت خودتون توی این تاپیک به همه اجازه داده اید که به روبوت شما دسترسی داشته باشند!!!!
ممنون از راهنمایی تون من توکن ایشون هم ویرایش کردم تا مشکلی براشون پیش نیاد
سلام کد هاتون غلط املایی دارن مثلا برای pip
اشتباها نوشتید teleport که در واقع telepot درسته
ممنون که خبر دادید اصلاح میکنم
سلام
همین کار رو میشه با اورنج وان انجام داد ؟
لطفا راهنمایی کنید
بله هیچ فرقی نداره اصولا
با سلام و تشکر فراوان .ایا موتونیم بجای عکس فرستادن فیلم بفرستیم؟(مثلا تغییر دادن photo به vidioو تغییر دادن (camera.capture)بهstart_recording
عالی بود مطلب