ما یوازې درې اونۍ دمخه د IT په نړۍ کې ځان ډوبول پیل کړل. په جدي توګه، درې اونۍ وړاندې زه حتی د HTML ترکیب نه پوهیدم، او د پروګرام کولو ژبو سره زما پیژندنه د 10 کاله دمخه په پاسکال کې د ښوونځي نصاب سره پای ته ورسیده. په هرصورت، ما پریکړه وکړه چې د IT کمپ ته لاړ شم، چیرې چې دا به د ماشومانو لپاره ښه وي چې بوټ جوړ کړي. ما پریکړه وکړه چې دا خورا سخته وه.
دا یو اوږد سفر پیل کړ چې ما په کې:
- د اوبنټو سره د کلاوډ سرور ځای په ځای شوی،
- په GitHub کې ثبت شوی،
- د جاواسکریپټ اصلي ترکیب زده کړل،
- په انګلیسي او روسي ژبو یو ټن مقالې ولولئ،
- بالاخره یو بوټ جوړ کړ،
- ما په پای کې دا مقاله لیکلې.
وروستۍ پایله داسې ښکاري:
زه به سمدلاسه ووایم چې دا د پیل کونکو لپاره مقاله ده - یوازې د دې لپاره چې پوه شئ چې څنګه له پیل څخه لومړني شیان ترسره کړئ.
او همدارنګه - د پرمختللي پروګرام کونکو لپاره - یوازې د دوی یو څه خندا کول.
1. په JS کې کوډ څنګه لیکل کیږي؟
زه پوهیدم چې دا لږ تر لږه د ژبې په ترکیب پوهیدل ارزښت لري. انتخاب په جاواسکریپټ کې راوتلی ، په ساده ډول ځکه چې زما لپاره بل ګام په ReactNative کې د غوښتنلیک رامینځته کول وو. ما سره پیل کړ
2. څنګه یو بوټ ثبت کړئ؟
دې په پیل کې زما سره ډیره مرسته وکړه
3. د بوټ کوډ څه ډول ښکاري؟
د اوږدې مودې لپاره د مقالو مطالعې وروسته، ما پوهیده چې دا د یو ډول کتابتون کارولو ارزښت لري (د ماډل په بڼه کې د دریمې ډلې کوډ) نو د ټیلیګرام API مطالعې او له سکریچ څخه د کوډ لوی ټوټې رامینځته کولو په اړه اندیښنه مه کوئ. ما چوکاټ وموند
3. څنګه د 100 روبلو لپاره خپل کلاوډ سرور جوړ کړئ
د ډیری لټون وروسته، ما پوهیده چې په پورته انځور کې د 'npm' کمانډ د کمانډ لاین ته اشاره کوي. د کمانډ لاین هرچیرې دی، مګر د دې د اجرا کولو وړتیا لپاره، تاسو اړتیا لرئ د NodePackageManager نصب کړئ. ستونزه دا وه چې زه د ChromeOS سره په PixelBook کې برنامه کوم. زه به دلته یو لوی بلاک پریږدم چې څنګه ما لینکس زده کړ - د ډیری لپاره دا خالي او غیر ضروري دی. که تاسو وینډوز یا ماک بوک لرئ، تاسو دمخه یو کنسول لرئ.
په لنډه توګه، ما د کریسټینی له لارې لینکس نصب کړ.
په هرصورت، په پروسه کې، ما پوهیده چې د بوټ لپاره په دوامداره توګه کار کول (او نه یوازې کله چې زما کمپیوټر روان وي)، زه د کلاوډ سرور ته اړتیا لرم. ما خوښ کړ
4. څنګه د بوټ چلولو لپاره سرور چمتو کړئ
له هغې وروسته، ما پوهیده چې زه اړتیا لرم چې په سرور کې یو ډول فولډر جوړ کړم په کوم کې چې زه به فایل د کوډ متن سره وسپارم. د دې کولو لپاره، په کنسول کې (په مستقیم ډول د "خلاص کنسول" تڼۍ له لارې ویب پاڼه پرمخ وړئ)، زه داخل شوم
mkdir 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. څنګه د ګیتوب له لارې سرور ته کوډ اپلوډ کړئ
اوس زه اړتیا لرم چې دا کوډ سرور ته اپلوډ کړم او چل یې کړم. دا زما لپاره یوه ننګونه شوه. د پایلې په توګه ، د ډیرې ازموینې وروسته ، ما پوهیده چې په ګیتوب کې د فایل رامینځته کول به اسانه وي چې تاسو ته اجازه درکوي په کنسول کې د کمانډ په کارولو سره کوډ تازه کړئ. ما یو حساب ثبت کړ
7. څنګه د ګیتوب برخې 2 له لارې سرور ته فایلونه اپلوډ کړئ
زه اړتیا لرم چې په سرور کې یو برنامه نصب کړم چې د git څخه فایلونه ډاونلوډ کړي. ما په کنسول کې ټایپ کولو سره په سرور کې git نصب کړ
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
پای
په دې فایل کې بیان شوي ډیری شیان به د پرمختللي پروګرام کونکو لپاره خورا څرګند وي. په هرصورت ، کله چې ما پخپله هڅه وکړه چې د بوټو نړۍ ته په یوه ناڅاپه کې د خپګان څخه کود شم ، ما واقعیا داسې لارښود له لاسه ورکړ. یو لارښود چې هغه شیان له لاسه نه ورکوي چې د هر معلوماتي ټیکنالوژۍ متخصص لپاره څرګند او ساده دي.
په راتلونکي کې ، زه د دې په اړه یو پوسټ پلان کوم چې څنګه خپل لومړی غوښتنلیک په ورته سټایل کې په ReactNative کې جوړ کړئ ، ګډون وکړئ!
سرچینه: www.habr.com