گائیڈ: پروگرامنگ میں ایک ابتدائی کے لیے جے ایس میں ایک سادہ ٹیلیگرام بوٹ کیسے بنایا جائے۔

میں نے صرف تین ہفتے پہلے خود کو IT کی دنیا میں غرق کرنا شروع کیا تھا۔ سنجیدگی سے، تین ہفتے پہلے میں HTML نحو کو بھی نہیں سمجھتا تھا، اور پروگرامنگ زبانوں سے میرا تعارف 10 سال پہلے پاسکل پر اسکول کے نصاب کے ساتھ ختم ہوا۔ تاہم، میں نے آئی ٹی کیمپ میں جانے کا فیصلہ کیا، جہاں بچوں کے لیے بوٹ بنانا اچھا ہوگا۔ میں نے فیصلہ کیا کہ یہ شاید ہی اتنا مشکل تھا۔

اس نے ایک طویل سفر شروع کیا جس میں میں:

  • Ubuntu کے ساتھ کلاؤڈ سرور تعینات کیا،
  • GitHub پر رجسٹرڈ،
  • بنیادی جاوا اسکرپٹ نحو سیکھا،
  • انگریزی اور روسی میں ایک ٹن مضامین پڑھیں،
  • آخر کار بوٹ بنایا،
  • میں نے آخر میں یہ مضمون لکھا۔

حتمی نتیجہ کچھ اس طرح نظر آیا:

گائیڈ: پروگرامنگ میں ایک ابتدائی کے لیے جے ایس میں ایک سادہ ٹیلیگرام بوٹ کیسے بنایا جائے۔

میں ابھی کہوں گا کہ یہ ایک مضمون ہے ابتدائیوں کے لیے - صرف یہ سمجھنے کے لیے کہ بنیادی چیزیں شروع سے کیسے کی جائیں۔

اور یہ بھی - اعلی درجے کے پروگرامرز کے لیے - صرف انہیں تھوڑا ہنسانے کے لیے۔

1. جے ایس میں کوڈ کیسے لکھیں؟

میں سمجھ گیا کہ کم از کم پہلے زبان کے نحو کو سمجھ لینا قابل قدر ہے۔ انتخاب جاوا اسکرپٹ پر پڑا، صرف اس لیے کہ میرے لیے اگلا مرحلہ ReactNative میں ایک ایپلیکیشن بنانا تھا۔ میں نے شروع کیا۔ کورس Codecademy پر اور بہت خوش تھا۔ پہلے 7 دن مفت ہیں۔ حقیقی منصوبے۔ میں تجویز کرتا ہوں۔ اسے مکمل کرنے میں تقریباً 25 گھنٹے لگے۔ اصل میں، یہ سب مفید نہیں تھا. کورس کی ساخت اور تفصیل سے پہلا بلاک ایسا لگتا ہے۔

گائیڈ: پروگرامنگ میں ایک ابتدائی کے لیے جے ایس میں ایک سادہ ٹیلیگرام بوٹ کیسے بنایا جائے۔

2. بوٹ کو کیسے رجسٹر کریں؟

اس سے مجھے شروع میں بہت مدد ملی اس مضمون ایک مخصوص آرکاکوف کے بلاگ سے۔ وہ شروع ہی کو چباتا ہے۔ لیکن سب سے اہم چیز یہ ہے کہ بوٹ کو رجسٹر کرنے کی ہدایات ہیں۔ میں اسے بہتر نہیں لکھ سکتا، اور چونکہ یہ سب سے آسان حصہ ہے، میں صرف خلاصہ لکھوں گا۔ آپ کو ایک بوٹ بنانے اور اس کا API حاصل کرنے کی ضرورت ہے۔ یہ ایک اور بوٹ - @BotFather کے ذریعے کیا جاتا ہے۔ اسے ٹیلیگرام پر ڈھونڈیں، اسے لکھیں، آسان راستے پر چلیں اور ایک API کلید حاصل کریں (محفوظ کریں!) (یہ اعداد اور حروف کا مجموعہ ہے)۔ یہ بعد میں کام آیا۔

گائیڈ: پروگرامنگ میں ایک ابتدائی کے لیے جے ایس میں ایک سادہ ٹیلیگرام بوٹ کیسے بنایا جائے۔

3. بوٹ کوڈ کیسا لگتا ہے؟

طویل عرصے تک مضامین کا مطالعہ کرنے کے بعد، میں نے محسوس کیا کہ یہ کسی قسم کی لائبریری (ماڈیول کی شکل میں تھرڈ پارٹی کوڈ) استعمال کرنے کے قابل ہے تاکہ ٹیلیگرام API کا مطالعہ کرنے اور شروع سے کوڈ کے بڑے ٹکڑے بنانے کی فکر نہ ہو۔ مجھے فریم ورک مل گیا۔ ٹیلی گراف، جسے npm یا دھاگے کا استعمال کرتے ہوئے کسی نہ کسی طرح کسی چیز سے جوڑنے کی ضرورت تھی۔ تقریباً اس طرح میں سمجھ گیا کہ بوٹ کی تعیناتی میں کیا شامل ہے۔ یہاں ہنسو۔ میں ناراض نہیں ہوں گا۔ صفحہ کے نیچے دی گئی مثالوں نے بوٹ کے بعد کی تخلیق کے دوران میری سب سے زیادہ مدد کی:

گائیڈ: پروگرامنگ میں ایک ابتدائی کے لیے جے ایس میں ایک سادہ ٹیلیگرام بوٹ کیسے بنایا جائے۔

3. 100 روبل میں اپنا کلاؤڈ سرور کیسے بنائیں

کافی تلاش کے بعد میں نے محسوس کیا کہ اوپر دی گئی تصویر میں 'npm' کمانڈ سے مراد کمانڈ لائن ہے۔ کمانڈ لائن ہر جگہ ہے، لیکن اس پر عمل درآمد کرنے کے لیے، آپ کو NodePackageManager انسٹال کرنے کی ضرورت ہے۔ مسئلہ یہ تھا کہ میں ChromeOS کے ساتھ PixelBook پر پروگرام کر رہا تھا۔ میں یہاں ایک بڑے بلاک کو چھوڑ دوں گا کہ میں نے لینکس کیسے سیکھا - زیادہ تر کے لیے یہ خالی اور غیر ضروری ہے۔ اگر آپ کے پاس ونڈوز یا میک بک ہے، تو آپ کے پاس پہلے سے ہی کنسول موجود ہے۔

مختصراً، میں نے کرسٹینی کے ذریعے لینکس انسٹال کیا۔

تاہم، اس عمل میں، میں نے محسوس کیا کہ بوٹ کے مسلسل کام کرنے کے لیے (اور صرف اس وقت نہیں جب میرا کمپیوٹر آن ہو)، مجھے کلاؤڈ سرور کی ضرورت ہے۔ میں نے انتخاب کیا۔ vscale.io میں نے 100 روبل خرچ کیے اور سب سے سستا اوبنٹو سرور خریدا (تصویر دیکھیں)۔

گائیڈ: پروگرامنگ میں ایک ابتدائی کے لیے جے ایس میں ایک سادہ ٹیلیگرام بوٹ کیسے بنایا جائے۔

4. بوٹ چلانے کے لیے سرور کیسے تیار کریں۔

اس کے بعد، میں نے محسوس کیا کہ مجھے سرور پر کسی قسم کا فولڈر بنانے کی ضرورت ہے جس میں میں فائل کو کوڈ ٹیکسٹ کے ساتھ رکھوں گا۔ ایسا کرنے کے لیے، کنسول میں (براہ راست ویب سائٹ پر "اوپن کنسول" بٹن کے ذریعے چلائیں)، میں نے داخل کیا

mkdir bot

bot - یہ میرے فولڈر کا نام بن گیا۔ اس کے بعد، میں نے npm اور Node.js انسٹال کیا، جو مجھے *.js ریزولوشن والی فائلوں سے کوڈ چلانے کی اجازت دے گا۔

sudo apt update
sudo apt install nodejs
sudo apt install npm

میں اس مرحلے پر آپ کے کنسول کے ذریعے سرور سے کنکشن قائم کرنے کی انتہائی سفارش کرتا ہوں۔ یہاں ہدایات یہ آپ کو اپنے کمپیوٹر کے کنسول کے ذریعے براہ راست سرور کے ساتھ کام کرنے کی اجازت دے گا۔

5. اپنے پہلے بوٹ کے لیے کوڈ کیسے لکھیں۔

لیکن اب یہ میرے لیے صرف ایک دریافت ہے۔ کوئی بھی پروگرام صرف متن کی لائنیں ہیں۔ انہیں کہیں بھی داخل کیا جا سکتا ہے، مطلوبہ توسیع کے ساتھ محفوظ کیا جا سکتا ہے، اور بس۔ آپ خوبصورت ہو. میں نے استعمال کیا ایٹم، لیکن حقیقت میں، آپ صرف ایک معیاری نوٹ پیڈ میں لکھ سکتے ہیں۔ اہم چیز فائل کو بعد میں مطلوبہ ایکسٹینشن میں محفوظ کرنا ہے۔ یہ ورڈ میں متن لکھنے اور اسے محفوظ کرنے کی طرح ہے۔

میں نے ایک نئی فائل بنائی، جس میں میں نے ٹیلی گراف کے صفحے پر دی گئی مثال سے کوڈ ڈالا اور اسے index.js فائل میں محفوظ کر لیا (عام طور پر فائل کا نام اس طرح رکھنا ضروری نہیں ہے، لیکن یہ رواج ہے)۔ اہم - BOT_TOKEN کے بجائے، دوسرے پیراگراف سے اپنی API کلید داخل کریں۔

const Telegraf = require('telegraf')

const bot = new Telegraf(process.env.BOT_TOKEN)
bot.start((ctx) => ctx.reply('Welcome!'))
bot.help((ctx) => ctx.reply('Send me a sticker'))
bot.on('sticker', (ctx) => ctx.reply(''))
bot.hears('hi', (ctx) => ctx.reply('Hey there'))
bot.launch()

6. گیتھب کے ذریعے سرور پر کوڈ کیسے اپ لوڈ کریں۔

اب مجھے کسی طرح اس کوڈ کو سرور پر اپ لوڈ کرنے اور اسے چلانے کی ضرورت تھی۔ یہ میرے لیے ایک چیلنج بن گیا۔ نتیجے کے طور پر، کافی آزمائش کے بعد، میں نے محسوس کیا کہ گیتھب پر ایک فائل بنانا آسان ہوگا جو آپ کو کنسول میں کمانڈ کا استعمال کرتے ہوئے کوڈ کو اپ ڈیٹ کرنے کی اجازت دیتا ہے۔ میں نے ایک اکاؤنٹ رجسٹرڈ کرایا گاٹہوب اور کیا نیا کامجہاں میں نے فائل اپ لوڈ کی تھی۔ اس کے بعد، مجھے یہ جاننے کی ضرورت تھی کہ بوٹ فولڈر میں سرور پر اپنے اکاؤنٹ (کھولے!) سے فائلوں کو اپ لوڈ کرنے کا طریقہ کیسے ترتیب دیا جائے (اگر آپ نے اسے اچانک چھوڑ دیا تو صرف cd bot لکھیں)۔

7. گیتھب پارٹ 2 کے ذریعے فائلوں کو سرور پر اپ لوڈ کرنے کا طریقہ

مجھے سرور پر ایک پروگرام انسٹال کرنے کی ضرورت تھی جو گٹ سے فائلیں ڈاؤن لوڈ کرے۔ میں نے کنسول میں ٹائپ کرکے سرور پر گٹ انسٹال کیا۔

apt-get install git

اس کے بعد مجھے فائل اپ لوڈ کو کنفیگر کرنے کی ضرورت تھی۔ ایسا کرنے کے لیے، میں نے کمانڈ لائن میں ٹائپ کیا۔

git clone git://github.com/b0tank/bot.git bot

نتیجے کے طور پر، پروجیکٹ سے سب کچھ سرور پر اپ لوڈ کیا گیا تھا. اس مرحلے پر غلطی یہ تھی کہ میں نے پہلے سے موجود بوٹ فولڈر کے اندر بنیادی طور پر دوسرا فولڈر بنایا تھا۔ فائل کا پتہ */bot/bot/index.js جیسا لگتا تھا۔

میں نے اس مسئلے کو نظر انداز کرنے کا فیصلہ کیا۔

اور ٹیلی گراف لائبریری کو لوڈ کرنے کے لیے، جس کی ہم کوڈ کی پہلی لائن میں درخواست کرتے ہیں، کنسول میں کمانڈ ٹائپ کریں۔

npm install telegraf

8. بوٹ کیسے لانچ کریں۔

ایسا کرنے کے لیے، فائل کے ساتھ فولڈر میں رہتے ہوئے (کنسول کے ذریعے فولڈر سے فولڈر میں جانے کے لیے، فارمیٹ کمانڈ چلائیں۔ cd bot یہ یقینی بنانے کے لیے کہ آپ وہیں ہیں جہاں آپ کو ہونا چاہیے، آپ ایک کمانڈ درج کر سکتے ہیں جو کنسول میں موجود تمام فائلوں اور فولڈرز کو ظاہر کرے گا۔ ls -a

شروع کرنے کے لیے، میں کنسول میں داخل ہوا۔

node index.js

اگر کوئی خرابی نہیں ہے تو سب کچھ ٹھیک ہے، بوٹ کام کر رہا ہے۔ ٹیلیگرام پر اسے تلاش کریں۔ اگر کوئی غلطی ہے تو، پوائنٹ 1 سے اپنے علم کا اطلاق کریں۔

9. پس منظر میں بوٹ کیسے چلائیں۔

بہت جلد آپ کو احساس ہو جائے گا کہ بوٹ صرف اس وقت کام کرتا ہے جب آپ خود کنسول میں بیٹھے ہوں۔ اس مسئلے کو حل کرنے کے لئے میں نے کمانڈ استعمال کیا۔

screen

اس کے بعد، کچھ متن کے ساتھ ایک سکرین ظاہر ہو جائے گا. اس کا مطلب ہے کہ سب کچھ ٹھیک ہے۔ آپ کلاؤڈ سرور پر ورچوئل سرور پر ہیں۔ بہتر طور پر سمجھنے کے لیے کہ یہ سب کیسے کام کرتا ہے - یہاں مضمون ہے. بس اپنے فولڈر میں جائیں اور بوٹ لانچ کرنے کے لیے کمانڈ درج کریں۔

node index.js

10. بوٹ کیسے کام کرتا ہے اور اس کی فعالیت کو کیسے بڑھایا جائے۔

ہمارا مثال بوٹ کیا کر سکتا ہے؟ وہ کر سکتا ہے۔

bot.start((ctx) => ctx.reply('Welcome!'))

کہو "خوش آمدید!" شروع کے وقت (متن کو تبدیل کرنے کی کوشش کریں)

bot.help((ctx) => ctx.reply('Send me a sticker'))

معیاری /مدد کمانڈ کے جواب میں، پیغام بھیجیں "مجھے ایک اسٹیکر بھیجیں"

bot.on('sticker', (ctx) => ctx.reply(''))

اسٹیکر کے جواب میں منظوری بھیجیں۔

bot.hears('hi', (ctx) => ctx.reply('Hey there'))

اگر وہ اسے "ہیلو" لکھیں تو "ارے وہاں" کا جواب دیں۔
bot.launch()

گائیڈ: پروگرامنگ میں ایک ابتدائی کے لیے جے ایس میں ایک سادہ ٹیلیگرام بوٹ کیسے بنایا جائے۔

اگر آپ کوڈ کو دیکھیں گاٹہوب، تب آپ جلدی سمجھ جائیں گے کہ میں اس فعالیت سے زیادہ دور نہیں گیا ہوں۔ جو فعال طور پر استعمال ہوتا ہے وہ فنکشن ہے۔ ctx.replyWithPhoto یہ آپ کو کسی مخصوص متن کے جواب میں ایک مخصوص تصویر یا GIF بھیجنے کی اجازت دیتا ہے۔

کوڈ کا ایک اہم حصہ 11-13 سال کی عمر کے بچوں نے لکھا تھا، جنہیں میں نے بوٹ تک رسائی دی تھی۔ انہوں نے اپنا یوزر کیس داخل کیا۔ میرے خیال میں یہ بتانا آسان ہے کہ ان کا کون سا حصہ بنایا گیا تھا۔

مثال کے طور پر، پیغام "جیک" کو کارٹون ایڈونچر ٹائم کے ایک مشہور کردار کے ساتھ ایک GIF موصول ہوگا۔

گائیڈ: پروگرامنگ میں ایک ابتدائی کے لیے جے ایس میں ایک سادہ ٹیلیگرام بوٹ کیسے بنایا جائے۔

بوٹ کو مزید تیار کرنے کے لیے، آپ کو کی بورڈ کو جوڑنے کی ضرورت ہے، مثالیں دیکھیں، مثال کے طور پر، اس وجہ سے

11. کوڈ کو کیسے اپ ڈیٹ کریں اور بوٹ کو دوبارہ شروع کریں۔

یہ نہ بھولیں کہ آپ کو کوڈ کو نہ صرف گیتھب پر، بلکہ سرور پر بھی اپ ڈیٹ کرنے کی ضرورت ہے۔ یہ کرنا آسان ہے - بوٹ کو روکیں (ctrl+c دبائیں)،

- ٹارگٹ فولڈر میں رہتے ہوئے کنسول میں داخل ہوں، git pull
- ہم کمانڈ کے ساتھ بوٹ کو دوبارہ لانچ کرتے ہیں۔ node index.js

END

اس فائل میں بیان کردہ بہت سی چیزیں اعلی درجے کے پروگرامرز کے لیے بالکل واضح ہوں گی۔ تاہم، جب میں نے خود ایک جھٹکے سے بوٹس کی دنیا میں کھائی کو چھلانگ لگانے کی کوشش کی، تو میں واقعی میں اس طرح کے رہنما سے محروم رہا۔ ایک ہدایت نامہ جو کسی بھی IT ماہر کے لیے واضح اور آسان چیزوں سے محروم نہیں ہوتا ہے۔

مستقبل میں، میں ایک پوسٹ کی منصوبہ بندی کر رہا ہوں کہ آپ کی پہلی درخواست ReactNative پر اسی انداز میں کیسے کی جائے، سبسکرائب کریں!

ماخذ: www.habr.com

نیا تبصرہ شامل کریں