خب سلام بچه ها الان میخوایم بدونیم که ربات بله چطور ساخته میشه
برای ساخت ربات بله از پایتون استفاده میکنم خودم. چرا؟ چون یه ماژول وجود داره به اسم balethon که بهمون کمک میکنه برای ساختنش
خب پس اول چک میکنیم ببینیم پایتون رو سیستممون نصبه یا نه اگه نداریمش نصب میکنیم و حالا یه فولدر میسازیم برای پروژمون و تو ترمینال از دستور
pip install balethonاستفاده میکنیم تا بلتون برامون نصب شه
اول از همه از ۲ خط کد استفاده میکنیم
from balethon import Client
bot = Client('توکن رباتمون')
برای اینکه مشخص کنیم که این کدایی که مینویسیم برای کدوم ربات استفاده شه
وقتی از ربات بات فادر ربات میسازین بهتون یه توکنی میده که باید از اون توکن تو این قسمت استفاده کنین
حالا آماده ایم بخوایم دولوپ رو شروع کنیم میخوایم بگیم وقتی کامند /start فرستاده شد یه پیام به یوزر بده
@bot.on_message(command(name="start"))async def start_handler(message): await message.reply("به ربات چت و گفت و گوی ناشناس خوش آمدید! یکی را انتخاب کنید:" )
جای start میتونین از هر کامند دیگه ای که رباتتون پشتیبانی میکنه استفاده کنین
حالا بیاین فرض کنیم میخوایم ازش یه سوال بپرسیم و باید منتظر جواب یوزر بمونیم و بعد با توجه به پاسخ یوزر یه کاری رو انجام بدیم پس باید برای ربات تعریف کنیم که الان در فلان حالت هستیم و هر پاسخی از یوزر میگیریم مربوط به اون حالت میشه بریم یه مثال ببینیم
@bot.on_message(command(name="start"))async def start_handler(message): await message.reply("سلام خوشاومدی، اسمت چیه؟") message.author.set_state('NAME')
@bot.on_message(at_state('NAME'))async def name_state(message): name = message.text await message.reply( f"خوشحال شدم دیدمت {name}" ) message.author.del_state()
اینجا دو قسمت رو داریم: اولی برای زمانیه که کاربر استارت رو میزنه و ما ازش یه سوالی میپرسیم برای اون یه حالت تعریف میکنیم مثلا به اسم NAME ، شما هر اسمی رو میتونین براش در نظر بگیرین ولی خب بهتره که اسمایی که تعریف میکنن معنا دار باشن
و بعد یه قسمت دیگه ای رو میایم تعریف میکنیم برای حالت NAME که میگیم متنی که یوزر فرستاد رو بگیره که طبیعتا باید اسم یوزر باشه چون ازش اسمشو خواستیم
و بعد بیاد از اسمش استفاده بکنه برای خوش آمد گویی.
و در نهایت برای اینکه یوزر رو از اون حالت NAME بیاریم بیرون از message.author.del_state()استفاده میکنیم
البته شما اگه بخواین سنش رو بپرسین میتونین جای
message.author.del_state()
از
message.author.set_state('AGE')
استفاده کنین و بعد یه فانکشن هم برای حالت AGE تعریف کنین
خب قسمت اول تموم شد فعلا خیلی ساده در نظر گرفتمش اگه شما ربات خاصی مد نظرتونه بهم بگین آموزش مخصوص اون رو براتون میذارم
#python #balethon #bale #bot #ربات
@devologist </>
برای ساخت ربات بله از پایتون استفاده میکنم خودم. چرا؟ چون یه ماژول وجود داره به اسم balethon که بهمون کمک میکنه برای ساختنش
خب پس اول چک میکنیم ببینیم پایتون رو سیستممون نصبه یا نه اگه نداریمش نصب میکنیم و حالا یه فولدر میسازیم برای پروژمون و تو ترمینال از دستور
pip install balethonاستفاده میکنیم تا بلتون برامون نصب شه
اول از همه از ۲ خط کد استفاده میکنیم
from balethon import Client
bot = Client('توکن رباتمون')
برای اینکه مشخص کنیم که این کدایی که مینویسیم برای کدوم ربات استفاده شه
وقتی از ربات بات فادر ربات میسازین بهتون یه توکنی میده که باید از اون توکن تو این قسمت استفاده کنین
حالا آماده ایم بخوایم دولوپ رو شروع کنیم میخوایم بگیم وقتی کامند /start فرستاده شد یه پیام به یوزر بده
@bot.on_message(command(name="start"))async def start_handler(message): await message.reply("به ربات چت و گفت و گوی ناشناس خوش آمدید! یکی را انتخاب کنید:" )
جای start میتونین از هر کامند دیگه ای که رباتتون پشتیبانی میکنه استفاده کنین
حالا بیاین فرض کنیم میخوایم ازش یه سوال بپرسیم و باید منتظر جواب یوزر بمونیم و بعد با توجه به پاسخ یوزر یه کاری رو انجام بدیم پس باید برای ربات تعریف کنیم که الان در فلان حالت هستیم و هر پاسخی از یوزر میگیریم مربوط به اون حالت میشه بریم یه مثال ببینیم
@bot.on_message(command(name="start"))async def start_handler(message): await message.reply("سلام خوشاومدی، اسمت چیه؟") message.author.set_state('NAME')
@bot.on_message(at_state('NAME'))async def name_state(message): name = message.text await message.reply( f"خوشحال شدم دیدمت {name}" ) message.author.del_state()
اینجا دو قسمت رو داریم: اولی برای زمانیه که کاربر استارت رو میزنه و ما ازش یه سوالی میپرسیم برای اون یه حالت تعریف میکنیم مثلا به اسم NAME ، شما هر اسمی رو میتونین براش در نظر بگیرین ولی خب بهتره که اسمایی که تعریف میکنن معنا دار باشن
و بعد یه قسمت دیگه ای رو میایم تعریف میکنیم برای حالت NAME که میگیم متنی که یوزر فرستاد رو بگیره که طبیعتا باید اسم یوزر باشه چون ازش اسمشو خواستیم
و بعد بیاد از اسمش استفاده بکنه برای خوش آمد گویی.
و در نهایت برای اینکه یوزر رو از اون حالت NAME بیاریم بیرون از message.author.del_state()استفاده میکنیم
البته شما اگه بخواین سنش رو بپرسین میتونین جای
message.author.del_state()
از
message.author.set_state('AGE')
استفاده کنین و بعد یه فانکشن هم برای حالت AGE تعریف کنین
خب قسمت اول تموم شد فعلا خیلی ساده در نظر گرفتمش اگه شما ربات خاصی مد نظرتونه بهم بگین آموزش مخصوص اون رو براتون میذارم
#python #balethon #bale #bot #ربات
@devologist </>
۹۵
۹:۳۱