ساخت ربات تلگرام (با 4 روش ساده تر)
تلگرام یک برنامه پیام رسان مانند واتساپ یا فیسبوک مسنجر است اما عملکردهای بیشتری مانند ربات دارد که ایجاد آن ها در سایر برنامه های پیام رسان آسان نیست. این ویژگی تلگرام یک بستر عالی برای جوامع خاص می باشد.
ربات های تلگرام با جاوا اسکریپت در Node ساخته می شوند و دارای عملکردهای گسترده ای هستند، از ایجاد نظرسنجی گرفته تا پیگیری حملات در بازی پوکمون گو. امروز قصد داریم نحوه ایجاد چند ربات تلگرام را به شما بیاموزیم.
ثبت ربات (این مرحله باید در هر روشی انجام شود)
ربات تلگرام باید ثبت شود. با ارسال پیام به ربات BotFather (کلیک کنید-وی پی ان یا پروکسی باید روشن باشن) در تلگرام، ربات مورد نظر را ثبت کنید. مراقب حساب های جعلی باشید: BotFather اصلی دارای تیک تأیید است.
برای شروع کار پیام “/newbot” را به BotFather ارسال کنید تا شما را در این پروسه آسان راهنمایی کند. شما یک کد HTTP API دریافت خواهید کرد که می توانید آن را در جایی امن ذخیره کنید. از این کد برای اتصال ربات به API استفاده می شود.
روش اول: آموزش ویدیویی
روش دوم: آموزش ویدیویی یک روش دیگر
روش سوم: انواع ربات با مثال های برنامه نویسی
ربات ساده
برای ایجاد ربات جدید، ابتدا باید NPM یا Yarn را راه اندازی کنیم و پکیج node-telegram-bot-api را نصب کنیم. این کار را با اجرای دو دستور زیر در ترمینال انجام می دهیم:
npm init -y
npm i node-telegram-bot-api
سپس می توانیم index.js ایجاد کنیم که در آن کد مورد نظر ربات را می نویسیم و پروژه را با استفاده از node index.js در ترمینال اجرا می کنیم.
const Bot = require(‘node-telegram-bot-api’)
const API_KEY = ‘YOUR API KEY’
const bot = new Bot(API_KEY, { polling: true })
bot.onText(/\/print (.+)/, (msg, match) => {
const chatId = msg.chat.id
const response = match[1]
bot.sendMessage(chatId, response)
})
ربات فقط در ده خط کد، با وارد کردن پکیج مناسب مقداردهی اولیه و با استفاده از کلید API راه اندازی می شود. تابع bot.onText تمام پیام های ارسال شده به آن را که با print/ شروع می شوند، می خواند و متنی را که بعد از دستور وجود دارد تکرار می کند.
شما همیشه می توانید فرمان مورد نیاز خود را تغییر دهید، زیرا فقط از یک رشته REGEX معمولی استفاده می کند. همچنین می توانید با استفاده از bot.on(‘message’) به هر پیامی که از REGEX پیروی می کند پاسخ دهید.
ربات نظرسنجی
یکی دیگر از ویژگی های معروف تلگرام، ایجاد نظرسنجی است. تلگرام این کار را با استفاده از تابع ()bot.sendPoll بسیار آسان می کند، که chatId، رشته و مجموعه ای از گزینه ها را به عنوان پارامتر می گیرد.
const Bot = require(‘node-telegram-bot-api’)
const API_KEY = ‘YOUR API KEY’
const bot = new Bot(API_KEY, { polling: true })
bot.onText(/\/yesOrNo (.+)/, (msg, match) => {
const chatId = msg.chat.id
const text = match[1]
bot.sendPoll(chatId, text, [‘yes’, ‘no’])
})
وقتی بیشتر با آن آشنا شدید، می توانید ربات های پیچیده تری ایجاد کنید، اما این خلاصه اصلی آن است. در کل ساخت ربات تلگرام بسیار آسان است.
روش چهارم: ساخت ربات تلگرام با Voiceflow
تلگرام امروزه به یکی از مهمترین برنامه های پیام رسانی در جهان تبدیل شده است. نرم افزار پیام رسانی فوری رایگان و منبع باز ویژگی های مفید زیادی را ارائه می دهد که آن را برای پیاده سازی ربات های پیچیده مناسب می کند. از ابتدای راه اندازی آن، راه های مختلفی برای توسعه ربات ها برای تلگرام وجود داشته است. با API Dialog Manager جدید Voiceflow ، بستر طراحی مکالمه بهترین انتخاب برای طراحی، توسعه و ادغام یک chatbot تلگرام است.
پیش نیازها
در زیر مواردی که برای ایجاد ربات تلگرام با استفاده از Voiceflow نیاز دارید ذکر شده است:
1. اکانت تلگرام
2. حساب Voiceflow
3. کد ویژوال استودیو
معماری
در این مثال قصد داریم از کتابخانه Telegraf برای پروژه های NodeJS برای تعامل با ربات تلگرام خود استفاده کنیم. همانطور که در بالا ذکر شد هرگونه تعامل کاربر در ربات تلگرام با استفاده از Dialog Manager API به Voiceflow ارسال می شود.
با BotFather ربات خود را ایجاد کنید
اول باید از Botfather برای ایجاد ربات خودمان در داخل تلگرام استفاده کنیم. BotFather به شما امکان می دهد حساب های ربات جدیدی ایجاد کرده و حساب های موجود را با چند کلیک ساده مدیریت کنید. برای شروع روند ایجاد ربات، فقط باید با BotFather صحبت کنید و مراحل زیر را دنبال کنید.
برای باز کردن چت با BotFather، روی دکمه “start” کلیک کنید.
با کلیک بر روی دستور newbot/ یک ربات جدید ایجاد کنید. در مرحله بعد می توانید ربات خود را نامگذاری کنید. در این مثال، نام را “bot Voiceflow” گذاشتم.
به همین راحتی راه اندازی تلگرام کامل شد! یادتان باشد که توکن تلگرام خود را به .env file خود در ویژگی TELEGRAM_TOKEN. اضافه کنید
راه اندازی پروژه
پروژه را نصب و اجرا کنید:
1. مخزن را کپی کنید:
git clone
2. تعلقات را نصب کنید:
yarn install
3. پروژه را راه اندازی کنید:
yarn start
نوشتن کد ربات
راه اندازی Telegraf
می توانیم با کد زیر ربات ایجاد کنیم:
راه اندازی Voiceflow
نکته: توجه به این نکته ضروری است که برای پیاده سازی ربات باید یک General Project در Voiceflow ایجاد کنید.
اکنون بیایید سرویس گیرنده Voiceflow را برای کار با ابر Voiceflow با استفاده از Dialog Manager API پیاده سازی کنیم.
تابع getclient ()، DialogManagerApi.getInstance را به عنوان سرویس گیرنده REST API فرا می خواند که مستقیماً با Dialog Manager API تعامل کند.
همانطور که می بینید مقادیری وجود دارد که به .env file اضافه می شوند. بیایید نحوه بدست آوردن آن متغیرها را توضیح دهیم.
1. VersionID
برای به دست آوردن VersionID خود باید به Voiceflow Project بروید:
سپس VOICEFLOW_VERSION_ID را از نشانی اینترنتی موجود در نوار آدرس خود کپی کنید. وقتی داخل پروژه Voiceflow هستید، نوار آدرس شما باید دارای URL فرم باشد:
https://creator.voiceflow.com/project/ {VOICEFLOW_VERSION_ID}/…
2. APIKEY
برای به دست آوردن Key API باید به workspace بروید که در آن General Project خود را ایجاد کرده اید. پس از این، به تنظیمات workspace بروید و روی تب developer کلیک کنید.
سپس باید روی دکمه Create new API Key کلیک کنید تا یک کلید جدید ایجاد شود:
در آنجا باید نامی برای Key API جدید انتخاب کنید، به عنوان مثال، telegram-bot. پس از انتخاب نام، روی دکمه Confirm کلیک کنید:
در نهایت باید این متغیرها را به .env file نهایی خود اضافه کنیم. مانند شکل زیر:
همه چیز آماده است. بیایید با کد ربات تلگرام ادامه دهیم. start را با کد زیر جایگزین کنیم و پاسخ را از Voiceflow دریافت کنیم:
سپس عبارت hi را برای regex با (+.) جایگزین می کنیم. این بدان معناست که ربات همه چیز را می شنود. تمام متن دریافتی ما مستقیماً به Voiceflow منتقل می شود و وضعیت مکالمه را مدیریت می کنیم: اگر به پایان رسیده یا هنوز به پایان نرسیده است:
متد response وظیفه ارسال ورودی کاربر در تلگرام به Voiceflow را با استفاده از سرویس گیرنده SDK زمان اجرا، بر عهده دارد. این متد امکان پردازش پاسخ را فراهم می کند:
در مثال بالا متوجه انواع مختلفی از پاسخ ها از جمله SPEAK ، VISUAL و AUDIO خواهید شد.
اجرای ربات تلگرام
نتیجه گیری
همانطور که مشاهده می کنید، تنها با 60 خط کد می توانید تجربیات چت خود را به سرعت زنده کنید. امیدواریم این امر به شما درک بهتری از نحوه استفاده از Voiceflow برای آوردن تجربیات مکالمه در اینترفیس ها و محصولات شما بدهد.
با این اپلیکیشن ساده، هر زبانی رو فقط با روزانه 5 دقیقه گوش دادن، توی 80 روز مثل بلبل حرف بزن! بهترین متد روز، همزمان تقویت حافظه، آموزش تصویری با کمترین قیمت ممکن!