آموزش مرحله به مرحله و ابتدایی ساخت ربات تلگرام

تلگرام که معرفی نمی خواد! اما ربات های تلگرام ابزارهایی هستند که توی تلگرام شما اجرا میشن و خیلی بهتون کمک میکنن. در کانال تلگرام سایت etuts ما سعی میکنیم ربات های کاربردی تلگرام رو معرفی کنیم. اما اگه میخواید خودتون ربات تلگرام بسازید، این مطلب رو ببینید. در این مطلب مرحله به مرحله، ساخت ربات تلگرام رو آموزش می دیم. ضمنا اگه برنامه نویسی بلد نیستید نگران نباشید باز هم این آموزش بدردتون میخوره.

خب ربات های تلگرام رو میشه بر اساس روشی که خدمات شونو ارائه می کنن، به دو دسته تقسیم کرد! دسته ی اول ربات هایی هستند که شما بهشون یه دستور میدید، و اون ربات با توجه به پیام شما، یه کاری رو انجام میده. مثلا ربات تلگرام برای مدیریت RSS، اینستاگرام، یوتیوب و توییتر + ارسال خودکار مطالب به کانال تلگرام

اما دسته ی دوم ربات هایی هستند که در واقع مثل کانال عمل می کنن! یعنی اصلا کاری به پیامی که شما وارد می کنید ندارند و فقط مطلب براتون می فرستند. که این ربات ها در واقع کاربرد خاصی ندارند و شاید بزرگترین کاربردشون این باشه که آخرین مطالب سایت رو داخل کانال هاتون منتشر کنن که به زودی یه مطلب در این زمینه خواهیم نوشت.

ربات های دسته ی دوم که گفتم رو میشه بدون دانش برنامه نویسی نوشت ولی خب همون طور که گفتم کاربردشون خیلی کمه. اما ربات های دسته ی اول حرفه ای تر هستند ولی لازمه که برنامه نویسی بلد باشید و سرور و… داشته باشید.

خب دیگه بریم ربات رو بسازیم.

مرحله ی اول: ساخت ربات در botFather

این مرحله خیلی ساده س. اول ربات @botFather رو در تلگرام تون باز کنین و:

  1. دستور /newbot رو بزنین
  2. اسم ربات رو انتخاب کنید. این اسمشه ها! آی دی ربات نیست. فقط یه اسم انتخاب کنید.
  3. آی دی ربات رو انتخاب کنید. آی دی ربات باید حتما آخرش کلمه ی bot وجود داشته باشه. در عکس زیر من اول آی دی testbot رو امتحان کردم اما پیام داد که این آی دی قبلا انتخاب شده در نتیجه mytest2testbot رو امتحان کردم ولی قبول کرد! 🙂

در آخرین پیامی که برای من فرستاده، اولش یه لینک هست که آبی رنگه و با انتخابش، رباتم باز میشه. آخرش هم نوشته Use this token to access HTTP API. کدی که بعد از این عبارت نوشته شده، بهش میگن توکِن و این توکن در واقع رمزی هست که به کسی نباید نشونش بدید.

خب کارهای ضروری با botfather تموم شد اما می تونین مثلا عکس و توضیحات ربات تون و یه سری تنظیمات رو توی همین ربات مشخص کنید.

خب هر موقع کارتون با botfather تموم شد، باید بریم سراغ کار با ربات. دو روش برای ارتباط با ربات وجود داره:

روش اول: استفاده از ربات به روش getUpdates

این روش خیلی ساده س اما در واقع ربات هایی که در دسته ی دوم قرار میگیرن (بالاتر توضیح دادم) از این روش استفاده می کنن. تو این روش شما به صورت دستی به ربات دستور می دید که چه کاری انجام بده و هیچ کاری به صورت خودکار نمیتونه انجام بشه.

خب به این شکل عمل می کنیم که اول آدرس زیر رو میسازیم!

https://api.telegram.org/bot<token>/

یعنی به جای <token> باید توکنی که بالا گرفتین رو بنویسید:

https://api.telegram.org/bot291144367:AAFO7Ml0f7JGvEbrISqZR9objFtUttVq1uA/

خب تا اینجا این آدرس رو توی مرورگر وارد میکنیم. حالا باید دستوری که میخوایم رو وارد کنیم. اولین دستورتون getupdates باید باشه:

می بینید که پیام ok:true اومده یعنی همه چیز اوکی و درسته! 🙂

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

با اون id که من مشخص کردم میتونید با اون فرد ارتباط برقرار کنید. مثلا با دستور sendmessage میتونید برای اون آی دی پیام بفرستید. همچنین شما می تونید رباتتون رو به عنوان مدیر، در کانال تون عضو کنید و بعد در آدرس زیر، بنویسید id=@channel_id . با اینکار پیام به اون کانال فرستاده میشه.

https://api.telegram.org/bot<token>/sendmessage?id=<id>&text=message

مثلا اگر بخوام پیامی رو برای کانال تلگرام etuts.ir بفرستم، لینک زیر رو در مرورگرم اجرا میکنم:

https://api.telegram.org/bot291144367:AAFO7Ml0f7JGvEbrISqZR9objFtUttVq1uA/sendmessage?id=@etuts&text=سلام به اعضای کانال

بقیه ی دستورها رو می تونید در صفحه ی API تلگرام ببینید.

روش دوم: استفاده از ربات به روش setWebhook

برای استفاده از روش setwebhook شما باید یک سرور، دامنه و یک گواهینامه ی SSL داشته باشید (که برای همه شون باید پول بدید :)) بعد از اینکه همه ی اینا رو خریدید و تنظیم کردید، کافیه آدرس زیر رو در مرورگرتون وارد کنید:

https://api.telegram.org/bot<token>/setwebhook?url=https://domain.com/path/to/yourfile.php

همون طور که میبینید باید در آدرس بالا، لینک شما https باشه یعنی همون گواهینامه ی SSL.

خب با اینکار، وقتی ربات شما پیامی دریافت میکنه، تلگرام اون پیام رو با یک درخواست POST برای فایلی که در بالا مشخص کردید میفرسته. دیگه شما باید کدهای php مورد نظرتون رو توی فایل بالا نوشته باشید تا هر موقع که پیامی دریافت کردید اجرا بشه و یه کاری رو انجام بده.

راستی اگه خواستید در مورد setWebhook بیشتر بدونید، لینک آموزش setwebhook تلگرام رو ببینید.

 

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

آموزش مرحله به مرحله و ابتدایی ساخت ربات تلگرام

کامنت ها

7 پاسخ به “آموزش مرحله به مرحله و ابتدایی ساخت ربات تلگرام”

  1. سلام خسته نباشید وقتی آدرس
    api.telegram.org/botوتوکن رباتم رو بهش میدم true نمیشه
    این پیام رو میده
    {“ok”:false,”error_code”:404,”description”:”Not Found: method not found”}
    میشه بگید مشکل از کجاست؟؟
    ممون از سایت خوبتون.

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

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد.

لطفا اگر سوالی خارج از موضوع این مطلب دارید آن را در فروم مطرح کنید.

<