فصل ۶: کار با دستورات (Commands) در ربات تلگرام با پایتون

مقدمه
دستورات یا «کامندها» (Commands) یکی از مهمترین اجزای ربات تلگرام هستند که تعامل کاربر با ربات را ساده، سریع و قابل درک میکنند. دستوراتی مثل /start، /help یا هر دستور سفارشی، ربات را حرفهایتر و برای کاربر جذابتر میسازد.
۱. تعریف دستور (Command) چیست؟
- Command پیامی است که با کاراکتر
/شروع میشود و ربات آن را به عنوان یک رویداد خاص تشخیص میدهد. - دستورات متداول:
/start— شروع و معرفی ربات/help— راهنمایی/about— معرفی سازنده یا هدف ربات- همچنین میتوانید دستورات دلخواه ایجاد کنید.
۲. ساختار استفاده از CommandHandler
در کتابخانه python-telegram-bot، برای گرفتن و مدیریت کامندها از کلاس CommandHandler استفاده میشود.
مثال ساده:
from telegram.ext import Updater, CommandHandler
TOKEN = 'توکن_ربات_خود_را_اینجا_قرار_دهید'
def start(update, context):
update.message.reply_text('سلام! خوش آمدید به ربات ما :)')
def help_command(update, context):
update.message.reply_text('برای راهنمایی، با ما تماس بگیرید.')
def main():
updater = Updater(TOKEN, use_context=True)
dp = updater.dispatcher
dp.add_handler(CommandHandler('start', start))
dp.add_handler(CommandHandler('help', help_command))
updater.start_polling()
updater.idle()
if __name__ == '__main__':
main()
۳. ایجاد دستورات سفارشی
میتوانید هر تعداد دستور دلخواه اضافه کنید، مانند /about:
def about(update, context):
update.message.reply_text('این ربات برای آموزش ساخته شده و توسط [نام شما] توسعه یافته است.')
dp.add_handler(CommandHandler('about', about))
۴. منوی دستورها در تلگرام
برای اینکه کاربران راحتتر دستورهای ربات را ببینند، میتوانید فهرست کامندها را به ربات معرفی کنید. کافی است به BotFather دستور /setcommands را داده و برای رباتتان دامنه دستورها بنویسید:
مثال لیست دستورات:
start - شروع ربات
help - دریافت راهنمایی
about - درباره ربات
این کار در محیط تلگرام، به کاربران نمایش راهنمای دستورات را آسانتر میکند.
۵. نکات حرفهای
- معمولاً بهترین نقطه شروع ربات همین دستور
/startاست. - برای هر دستور راهنمایی کوتاه قرار دهید.
- اگر دستورهای زیادی دارید، با
/helpلیست آنها را نمایش دهید. - کامندها فقط یک پیام کوتاه نیستند؛ امکان اجرای منطق پیچیده براساس هر کامند وجود دارد (دریافت اطلاعات، پرسش و پاسخ و …).
نکته هوش مصنوعی (AI Tip)
اگر قصد دارید به سرعت دستورات جدید بسازید یا کد آماده تولید کنید، شرح دستور و عملکرد مورد انتظار را به ChatGPT بدهید تا کد پایه و حتی توضیحات را به شما پیشنهاد دهد!
جمعبندی
در این فصل با مفهوم “کامند” در تلگرام و نحوه پیادهسازی آن در پایتون آشنا شدید. از اینجا به بعد میتوانید با استفاده از CommandHandler، رباتتان را حرفهایتر کنید و هر عملکردی را به شکل یک فرمان اضافه نمایید.