ساخت اولین ربات تلگرام خود: راهنمای گام به گام

ساخت وبلاگ

Chatbots در نحوه تعامل مردم با فناوری متحول می شود. در سالهای اخیر ، سادگی و کم هزینه آنها به پیشبرد پذیرش در زمینه ها و صنایع مختلف کمک کرده است. در این مقاله ، علی عبدل آل ، توسعه دهنده پردازش زبان طبیعی TOPTAL نشان می دهد که چگونه می توانید در طی چند ساعت یک چت بابات تلگرام ایجاد و مستقر کنید.

علی چندین سیستم NLP ساخته است و در انواع ابزارهای یادگیری ماشین و همچنین کتابخانه های پایتون تجربه ای مفید دارد.

Chatbots اغلب به عنوان یک انقلاب در نحوه تعامل کاربران با فناوری و مشاغل مورد توجه قرار می گیرد. آنها در مقایسه با برنامه های سنتی یک رابط نسبتاً ساده دارند ، زیرا آنها فقط به کاربران نیاز دارند تا گپ بزنند ، و قرار است چت بابات حداقل هر کاری را که کاربر از آنها خواسته است ، درک کند و انجام دهد.

بسیاری از صنایع خدمات مشتری خود را به سیستم های Chatbot تغییر می دهند. این به دلیل افت زیاد هزینه در مقایسه با انسان های واقعی است ، و همچنین به دلیل استحکام و در دسترس بودن مداوم. Chatbots درجه ای از پشتیبانی کاربر را بدون هزینه اضافی قابل توجه ارائه می دهد.

امروزه از چت بابات در بسیاری از سناریوها استفاده می شود ، از وظایف مأموریت مانند نمایش داده های زمان و آب و هوا گرفته تا عملیات پیچیده تر مانند تشخیص پزشکی احتیاطی و ارتباطات/پشتیبانی مشتری. شما می توانید یک چت بابات را ابداع کنید که به مشتریان شما کمک کند وقتی سؤالات خاصی راجع به محصول شما بپرسند ، یا می توانید یک دستیار شخصی چت بابات تهیه کنید که بتواند کارهای اساسی را انجام دهد و به شما یادآوری کند که زمان آن رسیده است که به یک جلسه یا سالن ورزشی بروید.

گزینه های زیادی وجود دارد که می توانید در جایی که می توانید Chatbot خود را مستقر کنید ، و یکی از رایج ترین کاربردهای سیستم عامل های رسانه های اجتماعی است ، زیرا بیشتر افراد به طور منظم از آنها استفاده می کنند. در مورد برنامه های پیام رسانی فوری نیز می توان گفت ، اگرچه با برخی از احتیاط ها.

Telegram یکی از سیستم عامل های محبوب IM امروز است ، زیرا به شما امکان می دهد پیام ها را به جای فقط دستگاه خود در ابر ذخیره کنید و دارای پشتیبانی خوب چند پلتفرمی است ، زیرا می توانید در Android ، iOS ، Windows و تقریباً در مورد Telegram داشته باشیدهر بستر دیگری که بتواند از نسخه وب پشتیبانی کند. ساختن یک چت بابات در تلگرام نسبتاً ساده است و به چند مرحله نیاز دارد که زمان بسیار کمی برای تکمیل آن طول می کشد. chatbot می تواند در گروه های تلگرام و کانال ها ادغام شود و به تنهایی نیز کار می کند.

در این آموزش ، ما یک ربات تلگرام ایجاد خواهیم کرد که تصویری آواتار از آواتارهای شایان ستایش به شما می دهد. مثال ما شامل ساختن ربات با استفاده از فلاسک و استقرار آن بر روی سرور رایگان Heroku خواهد بود.

برای تکمیل این آموزش ، به Python 3 نصب شده بر روی سیستم خود و همچنین مهارت های برنامه نویسی پایتون نیاز خواهید داشت. همچنین ، درک خوبی از نحوه کار برنامه ها علاوه بر این ، اما ضرورت نیست ، زیرا ما بیشتر مواردی را که با جزئیات ارائه می دهیم ، طی خواهیم کرد. شما همچنین به Git نصب شده بر روی سیستم خود نیاز دارید.

البته این آموزش همچنین به یک حساب تلگرام نیاز دارد که رایگان است. شما می توانید اینجا ثبت نام کنید. یک حساب هروکو نیز لازم است ، و می توانید آن را به صورت رایگان در اینجا دریافت کنید.

ربات تلگرام خود را زنده کنید

برای ایجاد یک چت بابات در تلگرام ، باید با Botfather تماس بگیرید ، که در واقع یک ربات است که برای ایجاد ربات های دیگر استفاده می شود.

دستور مورد نیاز شما /NewBot است که به مراحل زیر برای ایجاد ربات شما منجر می شود:

ربات شما باید دو ویژگی داشته باشد: یک نام و نام کاربری. این نام برای ربات شما نشان داده می شود ، در حالی که از نام کاربری برای ذکر و اشتراک استفاده می شود.

پس از انتخاب نام ربات و نام کاربری خود - که باید با "ربات" به پایان برسد - شما پیامی را که حاوی نشانه دسترسی شما است دریافت می کنید ، و بدیهی است که باید بعد از آن به نشانه دسترسی و نام کاربری خود را ذخیره کنید ، زیرا به آنها احتیاج خواهید داشت.

منطق chatbot را کدگذاری کنید

ما در این آموزش از اوبونتو استفاده خواهیم کرد. برای کاربران ویندوز ، بیشتر دستورات در اینجا بدون هیچ مشکلی کار می کنند ، اما اگر در مورد تنظیم محیط مجازی با مشکلی روبرو هستید ، لطفاً با این لینک مشورت کنید. در مورد کاربران MAC ، این آموزش باید خوب کار کند.

اول ، بیایید یک محیط مجازی ایجاد کنیم. این به منزوی کردن نیازهای پروژه شما از محیط جهانی پایتون کمک می کند.

اکنون ما یک دایرکتوری BotenV/ Directory خواهیم داشت که شامل تمام کتابخانه های پایتون است که ما از آنها استفاده خواهیم کرد. پیش بروید و VirtualEnV را با استفاده از دستور زیر فعال کنید:

کتابخانه هایی که برای ربات ما نیاز داریم عبارتند از:

  • فلاسک: یک چارچوب وب میکرو ساخته شده در پایتون.
  • Python-Telegram-Bot: بسته بندی تلگرام در پایتون.
  • درخواست ها: یک کتابخانه محبوب HTTP Python.

شما می توانید آنها را در محیط مجازی با استفاده از دستور PIP به شرح زیر نصب کنید:

حالا بیایید فهرست پروژه خود را مرور کنیم.

در پرونده Credentials. py به سه متغیر نیاز خواهیم داشت:

اکنون بیایید به برنامه خود برگردیم و به مرحله به مرحله از کد بروید:

اکنون ما شیء BOT را داریم که برای هر عملی که برای انجام آن به ربات نیاز داریم استفاده می شود.

ما همچنین باید توابع را به مسیرهای خاص متصل کنیم. به عبارت دیگر ، ما باید به فلاسک بگوییم که هنگام فراخوانی یک آدرس خاص ، چه کاری انجام دهیم. اطلاعات دقیق تر در مورد فلاسک و مسیرها را می توان در اینجا یافت.

در مثال ما ، عملکرد مسیر به URL پاسخ می دهد که اساساً / ، و این تلگرام URL برای دریافت پاسخ برای پیام های ارسال شده به ربات تماس می گیرد.

روش بصری برای کار کردن این عملکرد این است که ما آن را هر ثانیه صدا خواهیم کرد ، به طوری که بررسی می کند که پیام جدیدی رسیده است ، اما ما این کار را نمی کنیم. درعوض ، ما از WebHook استفاده خواهیم کرد که راهی را برای ما فراهم می کند تا هر زمان که پیامی فراخوانده شود ، با سرور ما تماس بگیرد ، به طوری که نیازی نیست که سرور خود را در یک حلقه در حالی که منتظر پیام است ، رنج ببریم.

بنابراین ، ما عملکردی را ایجاد خواهیم کرد که خودمان برای فعال کردن وب سایت تلگرام ، با ما باید با ما تماس بگیریم ، اساساً به تلگرام می گوییم که هنگام ورود یک پیام جدید ، یک لینک خاص را فراخوانی کند. ما فقط یک بار با این عملکرد تماس خواهیم گرفت ، وقتی که ابتدا ربات را ایجاد می کنیم. اگر پیوند برنامه را تغییر دهید ، باید این عملکرد را دوباره با پیوند جدیدی که دارید اجرا کنید.

مسیر در اینجا می تواند هر چیزی باشد ؛شما کسی هستید که آن را صدا می کنید:

اکنون که همه چیز تنظیم شده است ، بگذارید فقط یک صفحه اصلی فانتزی بسازیم تا بدانیم که موتور به پایان رسیده است.

بیایید نگاهی به نسخه کامل App. py بیندازیم:

این آخرین کدی است که در آموزش ما می نویسید. اکنون می توانیم تا آخرین مرحله پیشرفت کنیم و برنامه خود را در Heroku راه اندازی کنیم.

برنامه ما را در Heroku راه اندازی کنید

ما قبل از اینکه برنامه خود را بسازیم به چند مورد نیاز داریم.

Heroku نمی تواند بداند که از چه کتابخانه هایی استفاده می کند ، بنابراین ما باید با استفاده از پرونده مورد نیاز آن را بگوییم. یک مشکل مشترک این است که شما نیازهای غلط را به شما نشان می دهد ، بنابراین مراقب باشید - برای تولید پرونده مورد نیاز با استفاده از PIP:

اکنون پرونده مورد نیاز خود را آماده کرده اید.

اکنون به Procfile نیاز دارید که به هروکو می گوید برنامه ما از کجا شروع می شود ، بنابراین یک فایل procfile ایجاد کنید و موارد زیر را اضافه کنید:

یک مرحله گزاف گویی: می توانید یک پرونده . gitignore را به پروژه خود اضافه کنید تا پرونده های بدون استفاده در مخزن بارگذاری نشوند.

از داشبورد Heroku خود ، یک برنامه جدید ایجاد کنید. پس از انجام این کار ، شما را به صفحه استقرار هدایت می کند. سپس برگه تنظیمات را در یک پنجره جدید باز کنید و دامنه برنامه را کپی کنید که چیزی مانند https://appname. herokuapp.com/ خواهد بود و آن را در متغیر URL در داخل Crectentials. py قرار دهید.

اکنون ، به برگه استقرار برگردید و مراحل را ادامه دهید:

توجه: کاربران ویندوز و MACOS می توانند مراحل توصیف شده در اینجا را دنبال کنند.

وارد هروکو شوید:

لطفاً توجه داشته باشید که این روش گاهی اوقات در انتظار ورود به سیستم گیر می کند ، اگر این اتفاق برای شما رخ می دهد ، سعی کنید با استفاده از وارد شوید:

یک مخزن GIT را در فهرست ما آغاز کنید:

در این مرحله ، پیشرفت ساختمان در ترمینال خود را مشاهده خواهید کرد. اگر همه چیز خوب پیش رفت ، چیزی شبیه به این را خواهید دید:

اکنون به صفحه برنامه (پیوند دامنه ای که قبلاً کپی کرده اید) بروید و به انتهای لینک/setWebHook اضافه کنید تا آدرس چیزی مانند https://appname. herokuapp.com/setwebhook باشد. اگر تنظیمات Webhook را خوب می بینید ، این بدان معنی است که شما آماده رفتن هستید!

حالا برو با ربات خود صحبت کن

یک نسخه زنده از ربات

پایان دادن به لمس ها ، نکات و ترفندها

اکنون شما بدون نیاز به مداخله خود ، ربات تلگرام خود را بالا و در حال اجرا دارید. شما می توانید هر منطق مورد نظر خود را به ربات اضافه کنید ، بنابراین ، به عنوان مثال ، می توانید با اضافه کردن وضعیت "تایپ" و ارسال وضعیت عکس به شرح زیر ، ربات خود را واقع بینانه تر کنید:

قطعه کد بعدی از عملکرد پاسخ ():

همانطور که در قطعه مشاهده می کنید ، وقتی می خواهیم اطلاعات مربوط به ربات را که در قالب متن است ، یک عمل تایپ را اضافه کنیم و وقتی می خواهیم یک عکس ارسال کنیم تا یک عکس را واقع بینانه تر کنیم ، یک عمل عکس بارگذاری اضافه کردیمواداقدامات بیشتری را می توان در اینجا یافت.

همچنین می توانید تصویر و توضیحات BOT را از کانال Botfather تغییر دهید تا آن را دوستانه تر کند.

بسیاری از نمونه های ساده تر از ربات های تلگرام را می توان در صفحه Python-Telegram-Bot در GitHub یافت.

شما می توانید بر روی ربات ما بنا کنید و آن را به عنوان ربات بعدی AI بعدی تبدیل کنید - تمام کاری که باید انجام دهید این است که منطق خود را در عملکرد پاسخ () ادغام کنید. به عنوان مثال ، منطق شما می تواند در یک ماژول جداگانه باشد و می تواند در داخل عملکرد پاسخ () مانند SA به نام باشد:

و در داخل Ai . py:

وارد کردن آن اکنون در برنامه . py:

سپس فقط آن را در داخل کد پاسخ () صدا کنید.

اکنون می توانید ربات خود را به روشی که می خواهید انجام دهید - پیش بروید و چیز بزرگ بعدی را ایجاد کنید!

امیدوارم از ساخت اولین ربات تلگرام خود لذت برده باشید.

منابع اضافی

درک اصول

ربات تلگرام چیست؟

یک ربات تلگرام نرم افزاری است که برای کمک به کاربر در پاسخگویی به نیازهای خود با حداقل تعامل با سیستم ایجاد شده و با درک آنچه کاربر می گوید بهترین نتیجه را ارائه می دهد.

آیا رباتهای تلگرام ایمن هستند؟

ربات های تلگرام با توجه به استفاده از رمزگذاری پایان به پایان ، برخی از موارد را دارند ، زیرا آنها از تکنیک رمزگذاری متفاوت نسبت به مورد استفاده در پیام های کاربر استفاده می کنند. این امر باعث می شود رباتها آسیب پذیر شوند و مهاجمان را به پیام های چت دسترسی پیدا می کنند ، بنابراین کاربران باید مراقب باشند.

استفاده از فلاسک چیست؟

Flask یک چارچوب وب میکرو است که در پایتون نوشته شده است. ما از آن برای ساختن سرور وب خود با حداقل تلاش استفاده کردیم.

هدف هروکو چیست؟

Heroku یک پلت فرم ابری به عنوان یک سرویس (PAAS) با پشتیبانی از چندین زبان برنامه نویسی است. در این آموزش ، ما از آن برای میزبانی منطق خود استفاده می کنیم و همیشه آن را ادامه می دهیم.

فارکس وکسب درامد...
ما را در سایت فارکس وکسب درامد دنبال می کنید

برچسب : نویسنده : احمد قانع پور بازدید : 47 تاريخ : چهارشنبه 27 ارديبهشت 1402 ساعت: :