Aratohu: me pehea te hanga i te karetao Telegram ngawari ki te JS mo te tiimata ki te kaupapa

I timata ahau ki te ruku ki te ao IT e toru wiki noa ki muri. He tino nui, e toru wiki ki muri kare au i te marama ki te whakatakotoranga HTML, ka mutu taku whakataki ki nga reo hootaka me te marautanga kura mo Pascal mai i te 10 tau ki muri. Heoi, i whakatau ahau ki te haere ki tetahi puni IT, he pai ki nga tamariki ki te hanga bot. I whakatau ahau he tino uaua.

I timata tenei i te haerenga roa i reira ahau:

  • i tukuna he tūmau kapua me Ubuntu,
  • kua rēhitatia ki GitHub,
  • ako i te wetereo JavaScript taketake,
  • panuihia te tini o nga tuhinga i te reo Ingarihi me te Ruhia,
  • ka mutu ka hanga he bot,
  • I te mutunga ka tuhia e au tenei tuhinga.

Ko te hua whakamutunga he penei te ahua:

Aratohu: me pehea te hanga i te karetao Telegram ngawari ki te JS mo te tiimata ki te kaupapa

Ka kii tonu ahau he tuhinga tenei mo te hunga timata - kia mohio noa me pehea te mahi i nga mea taketake mai i te wahanga.

A hoki - mo nga kaiwhakatakoto kaupapa matatau - kia kata noa ratou.

1. Me pehea te tuhi waehere ki JS?

I mohio ahau he mea tika kia mohio ki te wetereo o te reo i te tuatahi. I taka te whiringa ki runga i te JavaScript, na te mea ko te mahi ka whai ake ko te hanga tono ki ReactNative. I timata ahau me akoranga i runga i te Codecademy me te tino koa. Ko nga ra tuatahi e 7 he kore utu. Nga tino kaupapa. Ka tūtohu ahau. Tata ki te 25 haora te roa o te whakaoti. Ko te mea pono, kaore i whai hua katoa. Koinei te ahua o te hanganga o te akoranga me nga korero mo te poraka tuatahi.

Aratohu: me pehea te hanga i te karetao Telegram ngawari ki te JS mo te tiimata ki te kaupapa

2. Me pehea te rehita i te bot?

I tino awhina tenei i ahau i te timatanga Tenei tuhinga mai i te blog a tetahi Archakov. Ka ngaungau ia i te timatanga. Engari ko te mea nui kei reira ko nga tohutohu mo te rehita i te karetao. Kaore e taea e au te tuhi pai ake, na te mea koinei te waahanga ngawari, ka tuhi noa ahau i te kaupapa. Me hanga e koe he karetao me te tiki i tana API. Ka mahia tenei ma tetahi atu karetao - @BotFather. Kimihia ia i runga waea waea, tuhia ki a ia, whai i te huarahi ngawari ka whiwhi (tiakina!) he matua API (he huinga tau me nga reta tenei). I whai hua i muri mai.

Aratohu: me pehea te hanga i te karetao Telegram ngawari ki te JS mo te tiimata ki te kaupapa

3. He aha te ahua o te waehere bot?

I muri i te ako i nga tuhinga mo te wa roa, ka mohio ahau he pai te whakamahi i etahi momo whare pukapuka (waehere tuatoru i roto i te whakatakotoranga kōwae) kia kore ai e manukanuka ki te ako i te Telegram API me te hanga i nga waahanga nui o te waehere mai i te wahanga. I kitea e ahau te anga waea waea, me hono ki tetahi mea ma te npm, miro ranei. Koinei te ahua o taku maarama he aha te whakatakotoranga o te karetao. Ka kata ki konei. E kore ahau e he. Ko nga tauira kei raro o te wharangi i tino awhina i a au i te wa i hangaia ai te bot:

Aratohu: me pehea te hanga i te karetao Telegram ngawari ki te JS mo te tiimata ki te kaupapa

3. Me pehea te hanga i to ake ake kapua mo te 100 rubles

I muri i te maha o nga rapunga, ka mohio ahau ko te whakahau 'npm' kei te pikitia i runga ake nei e pa ana ki te raina whakahau. Kei nga waahi katoa te raina whakahau, engari kia taea ai te mahi, me whakauru koe i te NodePackageManager. Ko te raru ko taku mahi i runga i te PixelBook me ChromeOS. Ka pekehia e ahau tetahi poraka nui i konei mo taku ako i te Linux - mo te nuinga he kau, he koretake. Mena kei a koe he Windows, he MacBook ranei, kei a koe he papatohu.

I roto i te poto, i whakauruhia e ahau a Linux ma Crostini.

Engari, i roto i te tukanga, i mohio ahau mo te mahi a te bot i nga wa katoa (kaore i te wa e pa ana taku rorohiko), ka hiahia ahau ki te tūmau kapua. I whiriwhiria e au vscale.io I pau ahau i te 100 rubles ka hokona e ahau te tūmau Ubuntu iti rawa (tirohia te pikitia).

Aratohu: me pehea te hanga i te karetao Telegram ngawari ki te JS mo te tiimata ki te kaupapa

4. Me pehea te whakarite i tetahi tūmau hei whakahaere i te karetao

I muri i tera, ka mohio ahau me hanga e ahau etahi momo kōpaki ki runga i te tūmau ka waiho e ahau te konae me te kuputuhi waehere. Ki te mahi i tenei, i roto i te papatohu (rere tika i runga i te paetukutuku ma te paatene "Open console"), ka uru ahau

mkdir bot

bot - ka waiho tenei hei ingoa mo taku kōpaki. I muri i tera, ka whakauruhia e ahau te npm me te Node.js, ka taea e au te whakahaere waehere mai i nga konae me te *.js taumira

sudo apt update
sudo apt install nodejs
sudo apt install npm

Ka tino taunaki ahau ki te whakatu hononga ki te tūmau ma to papatohu i tenei wa. I konei pukapuka Ma tenei ka taea e koe te mahi tika me te tūmau ma te papatohu o to rorohiko.

5. Me pehea te tuhi i te waehere mo to potae tuatahi.

Engari inaianei he kitenga noa mo au. Ko tetahi papatono he rarangi kuputuhi noa. Ka taea te whakauru ki nga waahi katoa, ka tiakina me te toronga e hiahiatia ana, ka mutu. He ataahua koe. I whakamahia e ahau Atom, engari i roto i te mooni, ka taea e koe te tuhi noa i roto i te papa tuhipoka. Ko te mea nui ko te tiaki i te konae i muri mai i te toronga e hiahiatia ana. He rite ki te tuhi tuhinga ki Word me te tiaki.

I hanga e ahau he konae hou, i whakauruhia e ahau te waehere mai i te tauira i runga i te wharangi waea waea ka tiakina ki te konae index.js (i te nuinga o te waa kaore e tika kia whakaingoatia te konae penei, engari he tikanga tenei). He mea nui - hei utu mo te BOT_TOKEN, kōkuhuhia tō kī API mai i te kōwae tuarua.

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. Me pehea te tuku waehere ki te tūmau ma te github

Inaianei me tuku e au tenei waehere ki te tūmau ka whakahaere. He wero tenei ki ahau. Ko te mutunga, i muri i te nui o nga raru, ka mohio ahau he maamaa ake te hanga i tetahi konae ki runga i te github ka taea e koe te whakahou i te waehere ma te whakamahi i te whakahau i roto i te papatohu. I rehitatia e ahau tetahi kaute i runga GitHub a ka mahi kaupapa hou, te wahi i tukuna e ahau te konae. I muri i tera, me whakaaro ahau me pehea te whakarite i nga konae tukuake mai i taku kaute (tuwhera!) Ki te tūmau i roto i te kōpaki bot (mehemea ka whakarere ohorere koe, tuhia cd bot).

7. Me pehea te tuku ake i nga konae ki te kaimau ma te github wahanga 2

I hiahia ahau ki te whakauru i tetahi papatono ki runga i te tūmau hei tango i nga konae mai i te git. I whakauruhia e ahau te git ki runga i te tūmau ma te pato ki te papatohu

apt-get install git

I muri i tera ka hiahia ahau ki te whirihora i te tukunga kōnae. Ki te mahi i tenei, i pato ahau ki te raina whakahau

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

Ko te mutunga, ko nga mea katoa mai i te kaupapa i tukuna ki te tūmau. Ko te he i tenei wa ko taku hanga he kōpaki tuarua ki roto i te kōpaki karetao o mua. Ko te wahitau ki te konae he rite ki te */bot/bot/index.js

I whakatau ahau ki te wareware i tenei raru.

A ki te utaina te whare pukapuka telegraf, e tono ana matou i te rarangi tuatahi o te waehere, patohia te whakahau ki te papatohu.

npm install telegraf

8. Me pehea te whakarewa i te bot

Ki te mahi i tenei, i roto i te kōpaki me te konae (ki te neke mai i te kōpaki ki te kōpaki mā te papatohu, whakahaere i te whakahau hōputu cd bot Kia mohio kei te waahi koe, ka taea e koe te whakauru i tetahi tono ka whakaatu ki te papatohu nga konae me nga kōpaki katoa kei reira. ls -a

Hei tiimata, ka uru ahau ki te papatohu

node index.js

Mena kaore he hapa, he pai nga mea katoa, kei te mahi te bot. Rapua ia i runga waea waea. Mena he hapa, whakamahia to matauranga mai i te wahanga 1.

9. Me pehea te whakahaere i te bot i muri

Ka tere ka mohio koe ka mahi noa te karetao ina noho koe i roto i te papatohu. Hei whakaoti i tenei raruraru i whakamahia e ahau te whakahau

screen

I muri i tenei, ka puta he mata me etahi kuputuhi. Ko te tikanga he pai nga mea katoa. Kei runga koe i te tūmau mariko i runga i te tūmau kapua. Kia pai ake te maarama me pehea te mahi katoa - anei te tuhinga. Haere noa ki to kōpaki ka uru ki te whakahau ki te whakarewa i te karetao

node index.js

10. Me pehea te mahi a te karetao me te whakawhanui i tana mahi

He aha ta tatou tauira bot ka mahi? Ka taea e ia

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

mea atu "Nau mai!" i te wa o te timatanga (whakamatau ki te huri i te kupu)

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

hei whakautu ki te whakahau paerewa / awhina, tukuna te karere "Tukua mai he whakapiri ki ahau"

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

tuku whakaaetanga hei whakautu ki te whakapiri

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

whakautua “Hey there” mena ka tuhi “hi” ki a ia
bot.whakarewa()

Aratohu: me pehea te hanga i te karetao Telegram ngawari ki te JS mo te tiimata ki te kaupapa

Mena ka titiro koe ki te waehere i GitHub, katahi ka mohio koe kaore au i tino matara atu i tenei mahi. Ko te mea e kaha whakamahia ana ko te mahi ctx.replyWithPhoto Ka taea e koe te tuku whakaahua, gif ranei hei whakautu ki tetahi tuhinga motuhake.

Ko tetahi waahanga nui o te waehere i tuhia e nga tamariki 11-13 tau, i hoatu e ahau te uru ki te karetao. I uru ratou ki ta raatau take-kaiwhakamahi. Ki taku whakaaro he ngawari te korero ko tehea wahanga i mahia e ratou.

Hei tauira, ko te karere "Jake" ka whiwhi GIF me tetahi ahuatanga rongonui mai i te pakiwaituhi Adventure Time.

Aratohu: me pehea te hanga i te karetao Telegram ngawari ki te JS mo te tiimata ki te kaupapa

Hei whakawhanake ake i te bot, me hono koe i te papapātuhi, tirohia nga tauira, hei tauira, mai i konei

11. Me pehea te whakahou i te waehere me te whakaara ano i te bot

Kaua e wareware e hiahia ana koe ki te whakahou i te waehere kaore i runga i te github anake, engari i runga i te tūmau. He ngawari tenei ki te mahi - kati te karetao (penei ctrl+c),

- tomo ki roto i te papatohu i te wa i roto i te kōpaki whaainga, git pull
— ka whakarewa ano matou i te karetao me te whakahau node index.js

END

Ko te nuinga o nga mea e whakaahuatia ana i roto i tenei konae ka tino kitea ki nga kaitakataka matatau. Heoi, i taku ngana ki te peke i runga i te awaawa ki te ao o nga karetao i te wa kotahi, i tino ngaro ahau i taua kaiarahi. He aratohu e kore e ngaro i nga mea maamaa me te ngawari mo tetahi tohunga IT.

Hei nga ra kei te heke mai, kei te whakamahere ahau i tetahi panui mo te hanga i to tono tuatahi ki runga ReactNative i roto i te ahua ano, ohauru!

Source: will.com

Tāpiri i te kōrero