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

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

ساخت ربات تلگرام به روش خیلی ساده توسط BotFather!

ساختن ربات تلگرام به روش خیلی ساده توسط BotFather!

در این آموزش یاد میگیریم:

  • چگونه یک ربات تلگرام بسازیم
  • نحوه ساخت ربات تلگرام جدید
  • وارد کردن توکن دسترسی برای ساخت ربات تلگرام
  • فعال کردن ربات

ساخت ربات تلگرام

  1. ربات “botfather” را در تلگرام جستجو کنید

راه اندازی ربات 2. برای دیدن تمامی دستورات این ربات /help را تایپ کنید

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

3. برای ساخت ربات تلگرام جدید روی /newbot کلیک کنید یا آنرا تایپ کنید

ساخت ربات تلگرام رایگان

یک اسم برای ربات خود در نظر بگیرید. اگر ربات را فقط جهت آزمایش ایجاد میکنید، میتوانید اسم خودتان را قبل از اسم ربات بیاورید (باید یک اسم منحصر بفرد باشد که تا حالا کسی انتخاب نکرده).

4. تبریک میگم! شما اولین ربات خود را بهمین راحتی ساختید. حالا باید توکن API خود را مشاهده کنید (برای مثال، در عکس قبلی میتوانید توکن ایجاد شده 270485614:AAHfiqksKZ8WmR2zSjiQ7_v4TMAKdiHm9T0 هست. حالا میتوانید ربات ایجاد شده خود را در تلگرام جستجو کنید.

آموزش ساخت ربات تلگرام

5. شروع کنید به چت کردن با ربات خودتان

آموزش رایگان ساخت ربات تلگرام

خب، خیلی نا امید کننده بنظر میرسه. بنظر میاد ربات ما خیلی کودنه، بخاطر اینکه در جواب ما هیچ پاسخی نداره. خوب اینکار را میتوانید با ساختن سرور بات که در پشت زمینه اجرا میشود انجام دهید.

راه اندازی سرور ربات

هر زمان که شما پیامی به ربات میدهید، ربات پیام را در قالب یک API به سرور انتقال میدهد. این سرور پیام ها را پردازش و به تمام پیام هایی که شما برایش ارسال کردید پاسخ میدهد.

دو روش برای اینکه بفهمیم کسی به ربات ما پیام داده است یا خیر وجود دارد

  1. واکشی بلند مدت (Long polling): بصورت دوره ای برای دریافت پیام ها جستجویی را انجام میدهیم. (این روش سفارش نمیشود.)
  2. از طریق وب هوک ها (Webhooks) : توسط این روش هر زمان که پیامی دریافت شد ربات از طریق API متوجه میشود. (این روش خیلی سریعتر و کاراتر است.)

ما برای این آموزش از Webhooks استفاده میکنیم. هر Webhook توسط یک بروزرسانی صدا زده میشود. بیایید با هم سرور خود را برای مدیریت این بروزرسانی ها راه اندازی کنیم.

ما سرور خودمان را با استفاده از node.js راه اندازی کردیم، اما شما میتوانید از هر گزینه ای که فکر میکنید برایتان مناسب تر است اسفاده کنید. وقتیکه node و npm نصب شد

ابتدا، پروژه خودتون رو راه اندازی کنید

## Create a new directory and enter it
mkdir my-telegram-bot
cd my-telegram-bot

## Initialize your npm project
npm init

بعد از اجرای این مراحل در آخر به یک فایل package.json میرسیم.

سپس، متعلقات مورد نیاز را با اجرای کد تکه کد زیر نصب کنید :

npm install --save express axios body-parser
  • express سرور اپلیکیشن ما
  • axios کلاینت http
  • body-parser به ما در تجزیه بدنه پاسخی که از هر درخواست دریافت شده کمک میکند

یک فایل جدید بنام index.js بسازید :

var express = require('express')
var app = express()
var bodyParser = require('body-parser')
const axios = require('axios')

app.use(bodyParser.json()) // for parsing application/json
app.use(
  bodyParser.urlencoded({
    extended: true
  })
) // for parsing application/x-www-form-urlencoded

//This is the route the API will call
app.post('/new-message', function(req, res) {
  const { message } = req.body

  //Each message contains "text" and a "chat" object, which has an "id" which is the chat id

  if (!message || message.text.toLowerCase().indexOf('marco') < 0) {
    // In case a message is not present, or if our message does not have the word marco in it, do nothing and return an empty response
    return res.end()
  }

  // If we've gotten this far, it means that we have received a message containing the word "marco".
  // Respond by hitting the telegram bot API and responding to the approprite chat_id with the word "Polo!!"
  // Remember to use your own API toked instead of the one below  "https://api.telegram.org/bot<your_api_token>/sendMessage"
  axios
    .post(
      'https://api.telegram.org/bot270485614:AAHfiqksKZ8WmR2zSjiQ7_v4TMAKdiHm9T0/sendMessage',
      {
        chat_id: message.chat.id,
        text: 'Polo!!'
      }
    )
    .then(response => {
      // We get here if the message was successfully posted
      console.log('Message posted')
      res.end('ok')
    })
    .catch(err => {
      // ...and here if it was not
      console.log('Error :', err)
      res.end('Error :' + err)
    })
})

// Finally, start our server
app.listen(3000, function() {
  console.log('Telegram app listening on port 3000!')
})

میتوانید این سرور را بر روی ماشین لوکال با اجرای کد node index.js اجرا کنید

اگر همه چیز را خوب پیش برده باشید، باید این پیام را در کنسول خود ببینید “Telegram app listening on port 3000!”

اما، این کار کافی نیست. وقتی که ربات را بر روی ماشین لوکال اجرا میکنید ربات نمیتواند API را صدا بزند. برای اینکار احتیاج به یک نام دامنه پابلیک دارید. این بدان معنیست که باید برنامه خود را بر روی سرور پیاده کنیم.

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

npm install -g now

اسکریپت start را به فایل package.json اضافه کنید.

فایل اصلی package.json من شبیه تکه کد زیر است :

{
"name": "telegram-bot",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "Soham Kamani <sohamkamani@gmail.com> (http://sohamkamani.com)",
"license": "ISC"
}

اسکریپت start را اضافه کنید تا کدی شبیه به کد زیر داشته باشید :

{
"name": "telegram-bot",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start" : "node index.js"
},
"author": "Soham Kamani <sohamkamani@gmail.com> (http://sohamkamani.com)",
"license": "ISC"
}

زمانیکه اسکریپت را اضافه کردید، دستور زیر را اجرا کنید :

now

نکته: بخاطر داشته باشید که اینکار را در روت فولدر پروژه خود انجام دهید، جاییکه فایل package.json قرار دارد.

اگر اولین بارتان است که از دستور “now” استفاده میکنید، دستور العملهایی را دریافت خواهید کرد، ولی پس از آن باید چیزی شبیه به پیام زیر را دریافت کنید :

نصب سرویس تلگرام

عالیست! این پیام بدین معنیست که سرور شما بر روی https://telegram-bot-zztjfeqtga.now.sh راه اندازی شده است (یا هر لینکی که بجای این لینک مشاهده میکنید)، و API شما باید در آدرس https://telegram-bot-zztjfeqtga.now.sh/new-message موجود باشد (همانطور که در index.js تعریف شده است)

حالا، تمام کاری که باید انجام دهیم اینست که باید به تلگرام بفهمانیم هر وقت که پیام جدیدی دریافت شد ربات ما باید با این آدرس تعامل داشته باشد. اینکار را از طریق API تلگرام انجام میدهیم. خط زیر را در ترمینال خود وارد کنید :
curl -F "url=https://telegram-bot-zztjfeqtga.now.sh/new-message" https://api.telegram.org/bot/setWebhook

و تقریبا کار تمام است! حالا دست بکار شوید و با ربات ساخته دست خودتان چت کنید تا ببینید چه اتفاقی می افتد!

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

روش دوم

آموزش ساخت ربات تلگرام رایگان

ساخت ربات تلگرام برای مقاصد مختلفی ممکن است مورد استفاده قرار گیرند

مثال های از موارد استفاده ساخت ربات تلگرام:

  • ساخت ربات های پشتیبانی
  • اتومات سازی کارها مثل چت زنده که نمونه آنرا در عکس زیر میتوانید مشاهده کنید:

how to make telegram bots tutorial

تلگرام با ماهانه 200,000,000 کاربر فعال و رشد سالیانه 50% جای مناسبی برای ربات های ارتباط با مشتری محسوب میشود. پلتفرمیست که مخاطبین شما در حال حاضر در حال استفاده از آن هستند بعلاوه اینکه ساخت ربات برای تلگرام بسیار آسان است.

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

نمونه رباتی که نوشته شده و شما میتوانید نمونه ای از آنرا در اینجا ببینید.

نمونه ربات تلگرام

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

ساخت ربات تلگرام

در این آموزش شما یاد میگیرید که:

  • چگونه ساخت ربات تلگرام را از صفر شروع کنید
  • چگونه دستورات جدیدی به واژگان ربات اضافه کنید
  • دستورات پایه ترمینال برای ایجاد فایل ها و حرکت بین پوشه ها
  • کمی در مورد برنامه نویسی Ruby
  • چگونه Ruby را با استفاده از gems گسترش دهیم
  • چند دستور ساده git برای مدیریت و انتقال فایل های کد
  • نحوه راه اندازی یک ربات روی سرور و اجرای 24 ساعته آن

 

قبل از شروع به موارد زیر احتیاج دارید:

  • terminal bash:  این بسته نصبی بهمراه سیستم عامل مک و لینوکس وجود دارد، اما اگر از سیستم عامل ویندوز استفاده میکنید میتوانید از شبیه ساز ها برای اینکار استفاده کنید که در زیر دو نمونه آموزش  و امولاتور را برای شما قرار دادم

دانلود امولاتور

آموزش اجرای امولاتور روی ویندوز

 

  • Ruby: برای آموزش مربوط به هر سیستم عامل به صفحه مستند سازی سایت روبی مراجعه کنید. من بشخصه از Homebrew در سیستم عامل مک استفاده میکنم، اما کاربران ویندوز میتوانند از این ابزار استفاده کنند.

 

  • Bundler : Bundler به مدیریت بهتر Ruby gems کمک میکند، که عملکرد بیشتری را به برنامه های شما میدهد. برای اضافه کردن یک رابط به API تلگرام برای ربات شماست. براحتی میتوانید با اجرای دستور gem install bundler در ترمینال باندلر را نصب کنید.

 

  • ادیتور متن : میتوانید از Notepad یا TextEdit استفاده کنید، اما پیشنهاد من برای اینکار  Atom هست، چون با این ادیتور خطاهای کدنویسی و خطاهای دستوری بهتر و راحتتر نمایان هستند.

 

حالا که تمامی این موارد را نصب و اجرا کردید، بریم سراغ مراحل

مرحله اولدانلود نرم افزار تلگرام برای دسکتاپ

تلگرام برای دسکتاپ

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

مرحله دوم : گرفتن کد API از BotFather

داخل تلگرام دسکتاپ Botfather رو سرچ کنید

چت با botfather

دستور /start را تایپ کنید

لیستی از دستوراتی میبینید که با استفاده از آنها میتوانید ویرایش و مدیریت ربات های خود را انجام دهید. از آنجایی که این بار اول شماست باید دستور /newbot را وارد کنید.
چت با botfather

در مقایسه با ساختن ربات توییتر، یا ربات Mastodon یا هر ربات دیگری، تلگرام مراحل راه اندازی اولیه ربات را برای ما خیلی راحت کرده. بی شک بهترین ابزار برای ساخت ربات میتواند تلگرام باشد!

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

چت با botfather برای گرفتن api

بعد از انجام این مراحل ربات شما یک API key دریافت میکند. API key چیزیست که تلگرام با آن کدهایی که شما برای ربات خود نوشتید را شناسایی و اجرا میکند. هر رباتی در API key مخصوص بخود را دارد، و اینکه این نکته را در نظر داشته باشید که نباید آنرا با شخص دیگری در میان بگذارید در غیر اینصورت بقیه براحتی میتوانند از ربات شما برای مقاصد و اهداف خود استفاده کنند.

مرحله سوم : راه اندازی bot’s gems و دایرکتوری

ترمینال را باز کنید و دستور mkdir telegram-bot را داخل آن وارد کنید. این دستور یک پوشه جدید برای فایل های ربات شما ایجاد میکند.

بهترین کار قرار دادن تمام فایل ها درون یک پوشه است تا بتوانید راحتتر به مدیریت فایل های ربات تلگرام خود بپردازید. با دستور cd telegram-bot به دایرکتوری مربوطه رفته و دستورات زیر را وارد کنید:

touch Gemfile
touch bot.rb
atom .

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

تنظیمات پوشه ربات

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

برچسب ها:

درج دیدگاه

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