ساخت بات تلگرام نیازمند استفاده از ای پی آی این پلتفرم پیام رسانی است. در این مطلب قصد داریم به آموزش استفاده از api تلگرام به منظور ساخت ربات برای آن بپردازیم.
تلگرام یک پلتفرم پیام رسانی تحت موبایل با قابلیتهای فوقالعاده است. ویژگیهای این اپلیکیشن در مقایسه با دیگر نرم افزارهای پیام رسان موبایل سبب شده بسیاری از آن به عنوان یک شبکه اجتماعی یاد کنند. در این بستر، دست کاربران و توسعهدهندگان به منظور افزودن قابلیتهای جدید به وسیله ایجاد ربات، باز گذاشته شده است. اما به این منظور نیازمند یادگیری استفاده از api تلگرام هستیم.
با استفاده از api تلگرام ، توسعهدهندگان میتوانند به قابلیتهای موجود این پیام رسان دسترسی پیدا کرده و آنها را با برنامههای کاربردی دیگر یکپارچهسازی کنند. به عنوان نمونه ممکن است نرم افزار کاربردی یک توسعهدهنده، به خاطر نیاز به دسترسی به شماره تلفنها، ارسال و دریافت پیام یا ویرایش فایلهای چند رسانهای، ناچار به استفاده از api تلگرام باشد. ای پی آی بات تلگرام (Telegram Bot API) به توسعهدهنده اجازه میدهد برنامه کاربردی (ربات) خود را از طریق ارسال درخواستهای HTTPS کنترل کند.
بعد از فراهم شدن امکان استفاده از api تلگرام و در ادامه آن ساخت ربات برای اولین مرتبه، نسخه دوم، سوم و چهارم آن نیز عرضه شد. هر یک از آنها بیش از پیش دست توسعهدهنده را به منظور ساخت برنامههای کاربردیتر باز گذاشت.
دلیل نیاز به استفاده از api تلگرام
باتها یا همان رباتهای تلگرام، برنامههای کاربردی جانبی هستند که داخل پلتفرم تلگرام اجرا شده و قابلیتهایی بیش از آن چه به صورت پیشفرض درون این اپلیکیشن پیام رسان وجود دارند را فراهم میکنند. کاربران میتوانند به وسیله ارسال پیام به باتها، با آنها ارتباط برقرار کرده و خدمات دریافت کنند. توسعهدهندگان برای کنترل نرم افزارهای خود در این پیام رسان موبایل محبوب، نیازمند استفاده از api تلگرام و ارسال درخواستهای HTTPS هستند. به عبارت دیگر، ای پی آی تلگرام (Bot API)، یک رابط مبتنی بر HTTPS است که امکان ایجاد ابزارهای جانبی را فراهم میکند.
در ادامه، استفاده از api تلگرام را در قالب نحوه ساخت یک بات جدید دنبال میکنیم. برای این کار نیازمند کدنویسی نبوده و حتی اجباری به استفاده از یک سیستم کامپیوتری نیز وجود ندارد. ابتدا آیدی botfarther@ را در قسمت جستجوی اپلیکیشن وارد کرده و بات پدر را پیدا کنید. این آیدی در واقع مربوط به ربات اصلی (پدر) تلگرام بوده و ساخت دیگر باتها با استفاده از آن امکانپذیر میشود.
عبارت help/ را تایپ کرده و برای ربات پدر ارسال کنید. در ادامه لیستی از تمامی اعمالی که botfarther قادر به انجام آن است را مشاهده خواهید کرد.
برای ایجاد ربات جدید، عبارت newbot/ را تایپ کرده و سپس ارسال کنید. میتوانید داخل لیست نمایش داده شده نیز روی همین عبارت ضربه بزنید. ربات پدر کار ساخت بات جدید را راحت کرده است، چرا که بسته به عمل مورد نظر، به صورت مرحله به مرحله اعمالی که میبایست انجام بدهید را اعلام میکند.
اولین قدم، انتخاب یک اسم مناسب و منحصربهفرد برای ربات است. اگر تصمیم دارید باز هم باتهایی تحت تلگرام برای خود ایجاد کنید، بهتر است یک سیستم نامگذاری مشخص داشته باشید. به این ترتیب کاربران در صورت مواجهه با رباتهای شما متوجه خواهند شد سازنده آنها چه فردی است. در انتها یک api در اختیارتان قرار میگیرد که میبایست آن را درون پلاگین خود قرار بدهید. برای استفاده از api تلگرام نیازمند داشتن اطلاعات کافی در زمینه برنامهنویسی هستید.
هر بات، بعد از ایجاد شدن، یک توکن احراز هویت منحصربهفرد در اختیار سازنده قرار میدهد که ساختاری شبیه به “123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11” دارد. در ادامه برای سادگی در آموزش نحوه استفاده از api تلگرام ، به جای این کد عبارت <token> را قرار میدهیم.
همچنین بخوانید:
ایجاد درخواست در بات تلگرام
همه کوئریهای ارسالی به Telegram Bot API میبایست مبتنی بر پروتکل HTTPS باشند. این دستورها باید در قالب ساختار “https://api.telegram.org/bot<token>/METHOD_NAME” ارسال شوند. در این کد، <token> همان ای پی آی دریافت شده بعد از اتمام ساخت ربات از طریق بات پدر است. پس کوئری در نهایت به شکل “https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11/getMe” ارسال خواهد شد.
برای استفاده از api تلگرام میتوانیم از بین دو متد GET و POST یکی را برگزینیم. تلگرام اعلام کرده در پلتفرم خود، از چهار روش به منظور ارسال پارامترها در Bot API پشتیبانی میکند:
- رشته کوئری URL
- application/x-www-form-urlencoded
- application/json
- multipart/form-data
پاسخ درخواست، شامل یک شی جیسون (JSON) است که همیشه درونش یک فیلد از نوع بولین (Boolean) با نام “ok” وجود دارد. ممکن است در این شی JSON، یک فیلد از نوع رشته (String) دلخواه با نام “description” نیز وجود داشته باشد. درون آن یک متن برای ارائه توضیحات کافی درباره نتیجه برگردانده شده به توسعهدهنده نمایش داده میشود. در واقع برای استفاده از api تلگرام اجباری به وجود این فیلد نبوده و محتوای آن صرفا جهت اطلاع توسعهدهنده (نه برای استفاده نرم افزار) ارائه میشود.
اگر محتوای فیلد بولی ok برابر صحیح (true) باشد، نتیجه موفقیتآمیز بوده و میتوان حاصل را در فیلد “result” کوئری پیدا کرد. در غیر این صورت فیلد ok با محتوای ناصحیح (false) بارگردانده شده و دلیل ارور داخل فیلد description ارائه خواهد شد. داخل کوئری یک فیلد از نوع عددی با نام “error_code” نیز بازگردانده میشود. برخلاف فیلدهای پیشین، محتوای error_code در آینده تغییر پیدا خواهد کرد. در برخی ارورها، فیلدی با نام “parameters” از نوع ResponseParameters نیز وجود دارد که کاربرد آن، رفع خودکار ارور پدید آمده است.
همچنین بخوانید:
این آموزش استفاده از api تلگرام بیشتر برای کاربرانی بود که با نحوه ساخت ربات در این پیام رسان آشنا بوده و به همین دلیل میبایست نحوه کار با رابط کاربردی برنامهنویسی (api) آن را نیز یاد میگرفتند. در مطالب آتی، به طور مفصل نحوه ایجاد بات تلگرامی را آموزش خواهیم داد. بهتر است تا آن زمان، کمی سواد برنامهنویسی خود را بیشتر کنید.