Waxa aan bilaabay in aan dhex galo adduunka IT-ga saddex toddobaad oo keliya ka hor. Dhab ahaantii, saddex toddobaad ka hor xitaa ma fahmin HTML syntax, iyo hordhacayga luuqadaha barnaamijyada waxay ku dhammaatay manhaj dugsiyeedka Pascal laga soo bilaabo 10 sano ka hor. Si kastaba ha ahaatee, waxaan go'aansaday inaan aado kaamka IT-ga, halkaas oo ay ku fiicnaan lahayd carruurta inay sameeyaan bot. Waxaan go'aansaday in ay aad u adag tahay.
Waxa bilaabmay safar dheer oo aan:
- Waxaa la geeyey server-ka Cloud ee Ubuntu,
- ka diiwaan gashan GitHub,
- bartay JavaScript syntax aasaasiga ah,
- akhri maqaallo badan oo Ingiriisi iyo Ruush ah,
- ugu dambeyntii sameeyay bot,
- Ugu dambayntii waxaan qoray maqaalkan.
Natiijadii u dambaysay waxay u ekayd sidan:
Isla markiiba waxaan dhihi doonaa in tani ay tahay maqaal loogu talagalay bilawga - kaliya si loo fahmo sida loo sameeyo waxyaabaha aasaasiga ah ee xoqan.
Iyo sidoo kale - barnaamijyada horumarsan - kaliya si aad uga qosliso wax yar.
1. Sidee loogu qoraa koodka JS?
Waxa aan fahmay in ay mudan tahay in marka hore la fahmo ereyga afka. Doorashadu waxay ku dhacday JavaScript, sababtoo ah tillaabada xigta aniga waxay ahayd inaan ku abuuro codsi gudaha ReactNative. Waxaan ku bilaabay
2. Sidee loo diiwaangeliyaa bot?
Tani waxay i caawisay wax badan bilowgii
3. Sidee buu u eg yahay koodhka bot-ka?
Ka dib markii aan bartay maqaallada muddo dheer, waxaan ogaaday in ay mudan tahay in la isticmaalo nooc ka mid ah maktabadda (koodhka saddexaad ee qaabka moduleka) si aan looga walwalin barashada API Telegram iyo abuurista qaybo badan oo kood ah oo xoqan. Waxaan helay qaab-dhismeedka
3. Sida loo abuuro server-kaaga daruuriga ah ee 100 rubles
Raadin badan ka dib, waxaan ogaaday in amarka 'npm' ee sawirka kore uu tixraacayo khadka taliska. Khadka amarku waa meel walba, laakiin si aad awood ugu yeelatid inaad fuliso, waxaad u baahan tahay inaad rakibto NodePackageManager. Dhibaatadu waxay ahayd in aan ku barnaamijka PixelBook la ChromeOS. Waxaan halkan kaga boodi doonaa qayb weyn oo ku saabsan sida aan u bartay Linux - inta badan waa faaruq oo aan loo baahnayn. Haddii aad leedahay Windows ama MacBook, waxaad hore u haysatay console.
Si kooban, waxaan ku rakibay Linux via Crostini.
Si kastaba ha noqotee, habka, waxaan ogaaday in bot-ku uu si joogto ah u shaqeeyo (oo aan ahayn kaliya marka kombuyuutarku ku jiro), waxaan u baahanahay server-ka daruuraha. Waxaan doortay
4. Sida loo diyaariyo server si uu u shaqeeyo bot
Taas ka dib, waxaan ogaaday inaan u baahanahay inaan sameeyo nooc ka mid ah galka server-ka kaas oo aan ku dhejin doono faylka qoraalka code. Si tan loo sameeyo, gudaha konsole (si toos ah ugu socodsii bogga internetka iyada oo loo marayo badhanka "Console Fur"), waxaan galay
mkdir bot
bot - tani waxay noqotay magaca galkayga. Intaa ka dib, waxaan rakibay npm iyo Node.js, taas oo ii ogolaan doonta inaan ka dib koodhka ka furo faylasha leh * .js
sudo apt update
sudo apt install nodejs
sudo apt install npm
Waxaan aad ugu talinayaa in la sameeyo isku xirka server-ka iyada oo loo marayo console-kaaga heerkan. Halkan
5. Sida loo qoro koodka botkaaga ugu horreeya.
Laakiin hadda waxay ii tahay uun daahfurid. Barnaamij kastaa waa uun khadadka qoraalka. Waxaa la gelin karaa meel kasta, oo lagu keydiyo kordhinta la rabo, waana taas. Waad quruxsan tahay. waan isticmaalay
Waxaan sameeyay fayl cusub, kaas oo aan galiyay koodhka tusaalaha ku yaal bogga telegraf oo aan ku kaydiyay faylka index.js (guud ahaan muhiim maaha in faylka loo magacaabo habkaas, laakiin tani waa caado). Muhiim - halkii aad ka ahaan lahayd BOT_TOKEN, geli furaha API-ga cutubka labaad.
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. Sida koodhka loogu dhejiyo server-ka github
Hadda waxaan u baahday inaan si uun ugu shubo koodhkan server-ka oo aan socodsiiyo. Tani waxay igu noqotay caqabad. Natiijo ahaan, dhib badan ka dib, waxaan ogaaday in ay sahlanaan doonto in lagu abuuro fayl github kaas oo kuu ogolaanaya inaad cusbooneysiiso koodka adoo isticmaalaya amar ku jira console. Waxaan ka diiwaan gashanaa akoon
7. Sida faylasha loogu dhejiyo server-ka github qaybta 2
Waxaan u baahday inaan ku rakibo barnaamij server-ka ka soo dejisan kara faylasha git. Waxaan ku rakibay git server-ka anigoo ku qoraya console-ka
apt-get install git
Taas ka dib waxaan u baahday in aan habeeyo soo dejinta faylka. Si tan loo sameeyo, waxaan ku qoray khadka taliska
git clone git://github.com/b0tank/bot.git bot
Natiijo ahaan, wax kasta oo ka yimid mashruuca waxaa lagu dhejiyay server-ka. Qaladka marxaladan ayaa ahaa in aan asal ahaan ka sameeyay gal labaad gudaha galka bot ee hore u jiray. Cinwaanka galka wuxuu u ekaa */bot/bot/index.js
Waxaan go'aansaday inaan iska indhatiro dhibaatadan.
Iyo inaad ku shubto maktabadda telegraf, oo aan ku codsaneyno safka koowaad ee koodhka, ku qor amarka console-ka.
npm install telegraf
8. Sida loo bilaabo bot
Si tan loo sameeyo, inta aad ku jirto galka faylka (si aad uga guurto galka ilaa galka iyada oo loo marayo console, socodsii amarka qaabka cd bot
Si aad u hubiso inaad ku sugan tahay meesha aad u baahan tahay, waxaad geli kartaa amar ka soo muuqan doona console-ka dhammaan faylasha iyo faylalka jira ls -a
Si aan u bilaabo, waxaan galay console-ka
node index.js
Haddii aysan jirin qalad, wax walba waa fiican yihiin, bot ayaa shaqeynaya. Isaga ka raadi telegram. Haddii uu khalad jiro, ku dabaq aqoontaada barta 1.
9. Sida loo ordo bot gadaasha
Si dhakhso ah waxaad ogaan doontaa in botku uu shaqeeyo kaliya markaad laftaadu ku fadhido konsole-ka. Si aan u xalliyo dhibaatadan waxaan adeegsaday amarka
screen
Taas ka dib, shaashad qoraal ah ayaa soo bixi doonta. Tani waxay ka dhigan tahay wax walba waa hagaagsan yihiin. Waxaad ku jirtaa server dalwad ah oo ku yaal server-ka daruuraha. Si aad si fiican u fahamto sida ay dhammaan u shaqeeyaan -
node index.js
10. Sida bot-ku u shaqeeyo iyo sida loo ballaariyo shaqadiisa
Muxuu samayn karaa tusaalaheena bot? Wuu awoodaa
bot.start((ctx) => ctx.reply('Welcome!'))
dheh "soo dhawoow!" bilawga (isku day inaad badasho qoraalka)
bot.help((ctx) => ctx.reply('Send me a sticker'))
adigoo ka jawaabaya amarka caadiga ah/caawinta, u dir fariinta "Ii dir warqad dhejis ah"
bot.on('sticker', (ctx) => ctx.reply(''))
u dir ogolaansho si ay uga jawaabto istiikaro
bot.hears('hi', (ctx) => ctx.reply('Hey there'))
ku jawaab "Haye halkaas" hadday u qoraan "hi" isaga
bot.launch()
Haddii aad eegto koodka ctx.replyWithPhoto
Waxay kuu ogolaanaysaa inaad dirto sawir gaar ah ama gif oo ka jawaabaya qoraal gaar ah.
Qayb muhiim ah oo ka mid ah koodka waxaa qoray carruurta da'doodu u dhaxayso 11-13, kuwaas oo aan siiyey gelitaanka bot-ka. Waxay galeen kiiskooda isticmaale. Waxaan filayaa inay fududahay in la sheego qaybta ay sameeyeen.
Tusaale ahaan, fariinta "Jake" waxay heli doontaa GIF oo leh jilaa caan ah oo ka timid Kartoonka Adventure Time.
Si aad u horumariso bot-ka, waxaad u baahan tahay inaad ku xidho kiiboodhka, eeg tusaalooyinka, tusaale ahaan,
11. Sida loo cusboonaysiiyo koodka oo dib loo bilaabo bot-ka
Ha iloobin inaad u baahan tahay inaad cusboonaysiiso koodhka ma aha oo kaliya github, laakiin sidoo kale server-ka. Tani way fududahay in la sameeyo - jooji bot-ka (riix ctrl+c),
- Geli console inta aad ku jirto galka bartilmaameedka, git pull
- Waxaan mar labaad ku bilownay bot-ka amarka node index.js
END
Waxyaabo badan oo lagu sifeeyay faylkan ayaa si aad ah ugu muuqan doona barnaamijyada horumaray. Si kastaba ha ahaatee, markii aan nafteyda isku dayay in aan ka boodo qulqulka adduunka bots-ka hal mar, run ahaantii waxaan u xiisay hagaha noocaas ah. Hage aan seegin waxyaalaha muuqda oo u fudud qof kasta oo IT-ga ku takhasusay.
Mustaqbalka, waxaan qorsheynayaa qoraal ku saabsan sida loo sameeyo codsigaaga ugu horreeya ReactNative qaab isku mid ah, isdiiwaangeli!
Source: www.habr.com