Thòisich mi gam bhogadh fhèin ann an saoghal IT dìreach trì seachdainean air ais. Gu fìrinneach, o chionn trì seachdainean cha do thuig mi eadhon co-chòrdadh HTML, agus thàinig an ro-ràdh agam air cànanan prògramaidh gu crìch le curraicealam sgoile air Pascal o chionn 10 bliadhna. Ach, chuir mi romham a dhol gu campa IT, far am biodh e math don chloinn bot a dhèanamh. Cho-dhùin mi nach robh e cho duilich sin.
Thòisich seo air turas fada anns an robh mi:
- cleachdadh frithealaiche neòil le Ubuntu,
- clàraichte air GitHub,
- ionnsaich co-chòrdadh JavaScript bunaiteach,
- leugh tunna de artaigilean ann am Beurla agus Ruiseanach,
- mu dheireadh rinn e bot,
- Sgrìobh mi an artaigil seo mu dheireadh.
Bha an toradh deireannach a’ coimhead rudeigin mar seo:
Canaidh mi anns a’ bhad gur e artaigil do luchd-tòiseachaidh a tha seo - dìreach airson tuigsinn mar a nì thu rudan bunaiteach bhon fhìor thoiseach.
Agus cuideachd - airson luchd-prògramaidh adhartach - dìreach airson toirt orra gàire beag a dhèanamh.
1. Ciamar a sgrìobhadh còd ann an JS?
Bha mi a’ tuigsinn gum b’ fhiach co-dhiù co-theacs a’ chànain a thuigsinn an toiseach. Thuit an roghainn air JavaScript, dìreach air sgàth 's gur e an ath cheum dhomh tagradh a chruthachadh ann an ReactNative. Thòisich mi le
2. Ciamar a chlàradh bot?
Chuidich seo mi gu mòr san toiseach
3. Cò ris a tha còd bot coltach?
Às deidh dhomh sgrùdadh a dhèanamh air na h-artaigilean airson ùine mhòr, thuig mi gum b ’fhiach leabharlann de sheòrsa air choreigin a chleachdadh (còd treas-phàrtaidh ann an cruth modal) gus nach fheumadh dragh a bhith ort mu bhith a’ sgrùdadh API Telegram agus a ’cruthachadh pìosan mòra de chòd bhon fhìor thoiseach. Lorg mi am frèam
3. Ciamar a chruthachadh agad fhèin neul fhrithealaiche airson 100 rubles
Às deidh tòrr rannsachaidh, thuig mi gu bheil an àithne ‘npm’ san dealbh gu h-àrd a’ toirt iomradh air an loidhne-àithne. Tha an loidhne-àithne anns a h-uile h-àite, ach airson a chur an gnìomh, feumaidh tu NodePackageManager a stàladh. B’ e an duilgheadas a bh’ ann gun robh mi a’ prògramadh air PixelBook le ChromeOS. Sgiobaidh mi an seo bloc mòr mu mar a dh’ ionnsaich mi Linux - airson a’ mhòr-chuid tha e falamh agus gun fheum. Ma tha Windows no MacBook agad, tha tòcan agad mu thràth.
Ann an ùine ghoirid, chuir mi Linux a-steach tro Crostini.
Ach, sa phròiseas, thuig mi gum feum mi frithealaiche sgòthan airson gum biodh am bot ag obair an-còmhnaidh (agus chan ann dìreach nuair a tha an coimpiutair agam air). thagh mi
4. Mar a dheasaicheas tu frithealaiche airson bot a ruith
Às deidh sin, thuig mi gum feumadh mi pasgan de sheòrsa air choreigin a dhèanamh air an fhrithealaiche anns an cuireadh mi am faidhle leis an teacsa còd. Gus seo a dhèanamh, anns a’ chonsail (ruith gu dìreach air an làrach-lìn tron phutan “Open console”), chaidh mi a-steach
mkdir bot
bot - thàinig seo gu bhith na ainm air a’ phasgan agam. Às deidh sin, chuir mi a-steach npm agus Node.js, a leigeas leam an uairsin còd a ruith bho fhaidhlichean le rùn * .js
sudo apt update
sudo apt install nodejs
sudo apt install npm
Tha mi a’ moladh gu mòr ceangal a stèidheachadh ris an fhrithealaiche tron chonsól agad aig an ìre seo. Seo
5. Mar a sgrìobhas tu an còd airson a 'chiad bot agad.
Ach a-nis chan eil ann ach lorg dhomh. Chan eil ann am prògram sam bith ach loidhnichean teacsa. Faodar an cur a-steach an àite sam bith, air an sàbhaladh leis an leudachadh a tha thu ag iarraidh, agus sin e. Tha thu bòidheach. Chleachd mi
Rinn mi faidhle ùr, anns an do chuir mi a-steach an còd bhon eisimpleir air an duilleag telegraf agus shàbhail mi e anns an fhaidhle index.js (san fharsaingeachd chan fheumar am faidhle ainmeachadh mar sin, ach tha seo àbhaisteach). Cudromach - an àite BOT_TOKEN, cuir a-steach an iuchair API agad bhon dàrna paragraf.
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. Ciamar a luchdadh suas còd chun an fhrithealaiche tro github
A-nis dh'fheumadh mi dòigh air choireigin an còd seo a luchdachadh suas chun an fhrithealaiche agus a ruith. Thàinig seo gu bhith na dhùbhlan dhomh. Mar thoradh air an sin, às deidh mòran duilich, thuig mi gum biodh e na b’ fhasa faidhle a chruthachadh air github a leigeas leat an còd ùrachadh le bhith a ’cleachdadh àithne sa chonsail. Chlàraich mi cunntas air
7. Ciamar a luchdadh suas faidhlichean ris an fhrithealaiche tro github pàirt 2
Dh'fheumadh mi prògram a stàladh air an fhrithealaiche a bhiodh a 'luchdachadh sìos faidhlichean bho git. Chuir mi a-steach git air an fhrithealaiche le bhith a’ taipeadh a-steach don consol
apt-get install git
Às deidh sin dh'fheumadh mi an luchdachadh suas faidhle a rèiteachadh. Gus seo a dhèanamh, thapaidh mi a-steach don loidhne-àithne
git clone git://github.com/b0tank/bot.git bot
Mar thoradh air an sin, chaidh a h-uile càil bhon phròiseact a luchdachadh suas chun t-seirbheisiche. B’ e am mearachd aig an ìre seo gun do rinn mi dàrna pasgan am broinn am pasgan bot a th’ ann mar-thà. Bha coltas air seòladh an fhaidhle */bot/bot/index.js
Cho-dhùin mi an duilgheadas seo a leigeil seachad.
Agus gus an leabharlann telegraf a luchdachadh, a dh’ iarras sinn sa chiad loidhne de chòd, dèan an àithne a-steach don consol.
npm install telegraf
8. Ciamar a chur air bhog bot
Gus seo a dhèanamh, fhad ‘s a tha thu sa phasgan leis an fhaidhle (gus gluasad bho phasgan gu pasgan tron chonsól, ruith an àithne cruth cd bot
Gus dèanamh cinnteach gu bheil thu far am feum thu a bhith, faodaidh tu òrdugh a chuir a-steach a sheallas anns a’ chonsail na faidhlichean agus na pasganan uile a tha ann ls -a
Airson tòiseachadh, chaidh mi a-steach don consol
node index.js
Mura h-eil mearachd ann, tha a h-uile dad gu math, tha am bot ag obair. Lorg e air telegram. Ma tha mearachd ann, cuir an t-eòlas agad an sàs bho phuing 1.
9. Mar a ruith bot ann an cùl an deilbh
Gu math luath tuigidh tu nach obraich am bot ach nuair a tha thu fhèin nad shuidhe air a’ chonsail. Airson an duilgheadas seo fhuasgladh chleachd mi an àithne
screen
Às deidh seo, nochdaidh scrion le beagan teacsa. Tha seo a’ ciallachadh gu bheil a h-uile dad gu math. Tha thu air frithealaiche brìgheil air frithealaiche sgòthan. Gus tuigse nas fheàrr fhaighinn air mar a tha e uile ag obair -
node index.js
10. Mar a tha am bot ag obair agus mar a leudaicheas e comas-gnìomh
Dè as urrainn don eisimpleir bot againn a dhèanamh? Faodaidh e
bot.start((ctx) => ctx.reply('Welcome!'))
can "Fàilte!" aig an àm tòiseachaidh (feuch an atharraich thu an teacsa)
bot.help((ctx) => ctx.reply('Send me a sticker'))
mar fhreagairt don àithne àbhaisteach / cuideachaidh, cuir am brath “Cuir stiogair thugam”
bot.on('sticker', (ctx) => ctx.reply(''))
cuir cead mar fhreagairt air stiogair
bot.hears('hi', (ctx) => ctx.reply('Hey there'))
freagair “Hey there” ma sgrìobhas iad “hi” thuige
bot.launch()
Ma choimheadas tu air a’ chòd aig ctx.replyWithPhoto
Leigidh e leat dealbh sònraichte no gif a chuir mar fhreagairt do theacsa sònraichte.
Chaidh pàirt chudromach den chòd a sgrìobhadh le clann aois 11-13, don tug mi cothrom air a’ bhot. Chaidh iad a-steach don chùis-cleachdaidh aca. Tha mi a’ smaoineachadh gu bheil e furasta innse dè am pàirt a rinn iad.
Mar eisimpleir, gheibh an teachdaireachd "Jake" GIF le caractar ainmeil bhon cartùn Adventure Time.
Gus am bot a leasachadh tuilleadh, feumaidh tu meur-chlàr a cheangal, faic eisimpleirean, mar eisimpleir,
11. Ciamar a ùraich an còd agus ath-thòiseachadh an bot
Na dì-chuimhnich gum feum thu an còd ùrachadh chan ann a-mhàin air github, ach cuideachd air an fhrithealaiche. Tha seo furasta a dhèanamh - stad am bot (brùth ctrl + c),
- cuir a-steach don consol fhad ‘s a tha thu sa phasgan targaid, git pull
- cuiridh sinn am bot air bhog a-rithist leis an àithne node index.js
CRÌOCH
Bidh mòran de na rudan a tha air am mìneachadh san fhaidhle seo air leth follaiseach do luchd-prògramaidh adhartach. Ach, nuair a dh’ fheuch mi fhìn ri leum thairis air an ruaig gu saoghal nam botaichean ann an aon thuit, bha mi gu mòr ag ionndrainn a leithid de stiùireadh. Stiùireadh nach caill rudan a tha follaiseach agus sìmplidh airson speisealaiche IT sam bith.
Anns an àm ri teachd, tha mi a’ dealbhadh post mu mar a nì thu a’ chiad iarrtas agad air ReactNative san aon stoidhle, fo-sgrìobhadh!
Source: www.habr.com