{"id":31044,"date":"2019-10-31T21:39:05","date_gmt":"2019-10-31T18:39:05","guid":{"rendered":"https:\/\/prohoster.info\/blog\/rukovodstvo-kak-sdelat-prostogo-bota-dlya-telegram-na-js-dlya-novichka-v-programmirovanii\/"},"modified":"2019-10-31T21:39:05","modified_gmt":"2019-10-31T18:39:05","slug":"rukovodstvo-kak-sdelat-prostogo-bota-dlya-telegram-na-js-dlya-novichka-v-programmirovanii","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/rukovodstvo-kak-sdelat-prostogo-bota-dlya-telegram-na-js-dlya-novichka-v-programmirovanii","title":{"rendered":"Juhend: kuidas luua algajale lihtne bot Telegramis JS-i abil","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Alustasin IT-maailma s\u00fcvenemist vaid kolm n\u00e4dalat tagasi. Ausalt \u00f6eldes, kolm n\u00e4dalat tagasi ei m\u00f5istnud ma isegi HTML-i s\u00fcntaksit ning mu tutvumine programmeerimiskeeltega piirdus k\u00fcmme aastat tagasi kooliprogrammist saadud Pascaliga. Otsustasin siiski minna IT-laagrisse, kus lastel oleks kasulik luua bot. M\u00f5tlesin, et see ei saa olla just nii keeruline.<\/p>\n<p>Sellest algas pikk teekond, mille k\u00e4igus ma:<\/p>\n<ul>\n<li>seadsin \u00fcles pilveserveri Ubuntu s\u00fcsteemiga,<\/li>\n<li>registreerisin end GitHubis,<\/li>\n<li>\u00f5ppisin JavaScripti p\u00f5hiskeemi,<\/li>\n<li>lugesin hunniku artikleid inglise ja vene keeles,<\/li>\n<li>valmistasin l\u00f5puks boti,<\/li>\n<li>kirjutasin l\u00f5puks selle artikli.<\/li>\n<\/ul>\n<p>\nValmis tulemus n\u00e4gi v\u00e4lja umbes nii:<\/p>\n<p><img decoding=\"async\" alt=\"Juhend: kuidas luua algajale lihtne bot Telegramis JS-i abil\" src=\"\/wp-content\/uploads\/2019\/04\/fc072aaa72b23c95faeaa09be8a652db.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\n\u00dctlen kohe, et see artikkel on algajatele \u2014 et aidata lihtsalt m\u00f5ista, kuidas teha p\u00f5hilisi asju nullpunktist.<\/p>\n<p>Ja ka edasij\u00f5udnud programmeerijatele \u2014 lihtsalt natuke neid naerutada. <\/p>\n<p><b>1. Kuidas kirjutada koodi JS-is?<\/b><\/p>\n<p>M\u00f5istsin, et alguseks on k\u00f5ige olulisem v\u00e4hemalt keele s\u00fcntaksiga natuke tutvuda. Otsustasin JavaScripti kasuks, lihtsalt seet\u00f5ttu, et j\u00e4rgmine samm minu jaoks oli rakenduse loomine ReactNative'i peal. Alustasin <noindex><a rel=\"nofollow\" href=\"https:\/\/www.codecademy.com\/learn\/introduction-to-javascript\">kursusest<\/a><\/noindex> Codecademy'l \u00f5ppimine j\u00e4ttis mulle suurep\u00e4rase mulje. Esimene 7 p\u00e4eva tasuta. Reaalsed projektid. Soovitan. Selle l\u00e4bimine v\u00f5ttis umbes 25 tundi. Tegelikult ei l\u00e4inud kaugeltki k\u00f5ik vajalikuks. Nii umbes n\u00e4eb kursuse struktuur v\u00e4lja ja siin on \u00fcksikasjalikult esimene blokk.<\/p>\n<p><img decoding=\"async\" alt=\"Juhend: kuidas luua algajale lihtne bot Telegramis JS-i abil\" src=\"\/wp-content\/uploads\/2019\/04\/e63be1e6c7f32cc3c929e0145996d569.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>2. Kuidas registreerida boti?<\/b><\/p>\n<p>Alguses aitas mind v\u00e4ga see <noindex><a rel=\"nofollow\" href=\"https:\/\/archakov.im\/post\/telegram-bot-on-nodejs.html\">see artikkel<\/a><\/noindex> blogi autorilt Ar\u010dakovi. Ta seletab algust v\u00e4ga h\u00e4sti. Kuid peamine, mis seal on \u2014 see on juhend boti registreerimiseks. Paremini ma ei oska kirjutada ja kuna see on k\u00f5ige lihtsam osa, kirjutan lihtsalt kokkuv\u00f5tte. Tuleb luua bott ja saada tema API. See toimub l\u00e4bi teise boti \u2014 @BotFather. Leidke ta Telegramist, kirjutage talle, k\u00e4ige l\u00e4bi lihtne protsess ja saage (salvestage!) API-v\u00f5ti (see on numbrite ja t\u00e4htede kogum). See tuli mulle hiljem kasuks.<\/p>\n<p><img decoding=\"async\" alt=\"Juhend: kuidas luua algajale lihtne bot Telegramis JS-i abil\" src=\"\/wp-content\/uploads\/2019\/04\/b8181f6ad1c67dd47dd337f8171bf941.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>3. Kuidas botikood v\u00e4lja n\u00e4eb?<\/b><\/p>\n<p>P\u00e4rast pikki artiklite uurimisi m\u00f5istsin, et tasub kasutada mingit teeki (kolmanda osapoole koodi mooduliformaadis), et mitte piinelda Telegrami API \u00f5ppimise ja suure koodit\u00fcki nullist loomisega. Leidsin raamistikku <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/telegraf\/telegraf\">telegraf<\/a><\/noindex>, mida pidi kuidagi \u00fchendama millegagi npm v\u00f5i yarn'i abil. T\u00e4pselt nii ma siis m\u00f5istsin, kuidas bot'i \u00fclesseadmine k\u00e4ib. Siin naerda. Ma ei solvu. K\u00f5ige rohkem aitas mind bot'i hilisemal loomisel allpool lehe peal toodud n\u00e4ited:<\/p>\n<p><img decoding=\"async\" alt=\"Juhend: kuidas luua algajale lihtne bot Telegramis JS-i abil\" src=\"\/wp-content\/uploads\/2019\/04\/711b252c5118b47a14c52862dd869058.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>3. Kuidas luua oma pilveserver 100 rubla eest<\/b><\/p>\n<p>Pikkade otsingute j\u00e4rel sain aru, et \u00fclaltoodud pildil olev 'npm' meeskond viitab k\u00e4sureale. K\u00e4surida on igal pool, kuid selle kasutamiseks tuleb paigaldada NodePackageManager. Probleem oli selles, et programmeerisin PixelBookis ChromeOS-il. J\u00e4tan siinkohal v\u00e4lja pika l\u00f5igu sellest, kuidas ma Linuxi \u00f5ppisin \u2014 enamikule on see t\u00fchine ja mittevajalik. Kui teil on Windows v\u00f5i MacBook, on teil juba konsool olemas. <\/p>\n<p>Kokkuv\u00f5ttes, installisin Linux'i Crostini kaudu. <\/p>\n<p>Kuid protsessi k\u00e4igus sain aru, et bot'i pidevaks t\u00f6\u00f6ks (mitte ainult siis, kui mu arvuti on sisse l\u00fclitatud) on mul vaja pilveserverit. Valisin <noindex><a rel=\"nofollow\" href=\"http:\/\/vscale.io\">vscale.io<\/a><\/noindex> Sain 100 rubla ja ostsin k\u00f5ige odavama Ubuntu serveri (vt. pilti). <\/p>\n<p><img decoding=\"async\" alt=\"Juhend: kuidas luua algajale lihtne bot Telegramis JS-i abil\" src=\"\/wp-content\/uploads\/2019\/04\/74cdc3858900bbd0d95715f5371ef52a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>4. Kuidas valmistada server bot'i k\u00e4ivitamiseks ette<\/b><\/p>\n<p>P\u00e4rast seda sain aru, et serveris tuleb teha kaust, kuhu ma panen koodi faili. Selleks valisin konsoolis (ava otse veebisaidilt nupuga \u201eAva konsool\u201d) j\u00e4rgmise k\u00e4su <\/p>\n<pre><code class=\"plaintext\">mkdir bot<\/code><\/pre>\n<p>\nbot \u2014 \u044d\u0442\u043e \u0441\u0442\u0430\u043b\u043e \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043c\u043e\u0435\u0439 \u043f\u0430\u043f\u043a\u0438. \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b npm \u0438 Node.js, \u0447\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u043c\u043d\u0435 \u043f\u043e\u0442\u043e\u043c \u043a\u043e\u0434 \u0438\u0437 \u0444\u0430\u0439\u043b\u0438\u043a\u043e\u0432 \u0441 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c *.js<\/p>\n<pre><code class=\"plaintext\">sudo apt update\nsudo apt install nodejs\nsudo apt install npm<\/code><\/pre>\n<p>\nSoovitan v\u00e4ga sel etapil seadistada \u00fchendus serveriga l\u00e4bi oma konsooli. Siin on <noindex><a rel=\"nofollow\" href=\"https:\/\/community.vscale.io\/hc\/ru\/community\/posts\/207745269-%D0%9A%D0%B0%D0%BA-%D1%81%D0%B3%D0%B5%D0%BD%D0%B5%D1%80%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D1%82%D1%8C-SSH-%D0%BA%D0%BB%D1%8E%D1%87-%D0%B4%D0%BB%D1%8F-%D0%B4%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%B0-%D0%BD%D0%B0-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80\">juhend<\/a><\/noindex> See v\u00f5imaldab t\u00f6\u00f6tada serveriga otse oma arvuti konsoolist.<\/p>\n<p><b>5. Kuidas kirjutada oma esimest boti koodi.<\/b><\/p>\n<p>N\u00fc\u00fcd on see minu jaoks avastus. Iga programm on lihtsalt tekstiridu. Need saab sisestada kuhu iganes, salvestada soovitud laiendiga ja ongi k\u00f5ik. Sa oled suurep\u00e4rane. Ma kasutasin <noindex><a rel=\"nofollow\" href=\"https:\/\/atom.io\/\">Atom<\/a><\/noindex>, kuid t\u00f5eliselt, lihtsasti saab kirjutada ka tavalises m\u00e4rkmetes. Peamine on hiljem salvestada fail soovitud laiendiga. See on nagu teksti kirjutamine Wordis ja salvestamine. <\/p>\n<p>Loomisin uue faili, kuhu panin koodi n\u00e4ite lehelt telegraf ja salvestasin faili nimega index.js (pole \u00fcldse kohustuslik fail nii nimetada, kuid see on tavaks). Oluline on see, et BOT_TOKEN tuleks asendada oma API v\u00f5tmega, mis saadakse teises punktis.<\/p>\n<pre><code class=\"plaintext\">const Telegraf = require('telegraf')\n\nconst bot = new Telegraf(process.env.BOT_TOKEN)\nbot.start((ctx) =&gt; ctx.reply('Tere tulemast!'))\nbot.help((ctx) =&gt; ctx.reply('Saada mulle kleebis'))\nbot.on('sticker', (ctx) =&gt; ctx.reply(''))\nbot.hears('hi', (ctx) =&gt; ctx.reply('Tere!'))\nbot.launch()<\/code><\/pre>\n<p>\n<b>6. Kuidas laadida kood serverisse l\u00e4bi GitHubi<\/b><\/p>\n<p>N\u00fc\u00fcd pidi ma kuidagi selle koodi serverisse saama ja selle k\u00e4ivitama. See oli minu jaoks v\u00e4ljakutse. L\u00f5puks, p\u00e4rast pikki vaevarikkaid \u00fcritusi, sain aru, et oli lihtsam luua fail GitHubis, mis v\u00f5imaldab koodi uuendada k\u00e4su kaudu terminalis. Loodasin konto <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/\">github<\/a><\/noindex> ja tegin <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/b0tank\/bot\">uus projekt<\/a><\/noindex>, kuhu ma faili laadisin. P\u00e4rast seda pidin aru saama, kuidas seada \u00fcles failide laadimine minu (avatud!) konto kaudu serverisse kausta bot (kui te olete sellest v\u00e4ljunud \u2014 kirjutage lihtsalt cd bot).<\/p>\n<p><b>7. Kuidas laadida faile serverisse l\u00e4bi GitHubi osa 2<\/b><\/p>\n<p>Pidi ma panema serverisse programmi, mis laadib faile Git-ilt. Paigaldasin Git serverisse, sisestades terminalisse <\/p>\n<pre><code class=\"plaintext\">apt-get install git<\/code><\/pre>\n<p>\nP\u00e4rast seda pidin ma seadma failide laadimise. Selleks sisestasin k\u00e4sureale <\/p>\n<pre><code class=\"plaintext\">git clone git:\/\/github.com\/b0tank\/bot.git bot\n<\/code><\/pre>\n<p>\n\u0412 \u0438\u0442\u043e\u0433\u0435 \u0432\u0441\u0435 \u0438\u0437 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u043b\u043e\u0441\u044c \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440. \u041e\u0448\u0438\u0431\u043a\u043e\u0439 \u043d\u0430 \u0434\u0430\u043d\u043d\u043e\u043c \u044d\u0442\u0430\u043f\u0435 \u0431\u044b\u043b\u043e, \u0447\u0442\u043e \u044f, \u043f\u043e \u0441\u0443\u0442\u0438, \u0441\u0434\u0435\u043b\u0430\u043b \u0432\u0442\u043e\u0440\u0443\u044e \u043f\u0430\u043f\u043a\u0443 \u0432\u043d\u0443\u0442\u0440\u0438 \u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0439 \u043f\u0430\u043f\u043a\u0438 bot. \u0410\u0434\u0440\u0435\u0441 \u0434\u043e \u0444\u0430\u0439\u043b\u0430 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u043b \u043a\u0430\u043a *\/bot\/bot\/index.js<\/p>\n<p>Otsustasin sellest probleemist \u00fcle vaadata.<\/p>\n<p>Ja et laadida teegid, mida me koodi esimeses reas k\u00fcsime, sisestage konsooli k\u00e4sk.<\/p>\n<pre><code class=\"plaintext\">npm install telegraf<\/code><\/pre>\n<p>\n<b>8. Kuidas bot t\u00f6\u00f6le panna<\/b><\/p>\n<p>Selleks, et olla kaustas, kus fail asub (kaustast kausta liikuda, t\u00e4itke k\u00e4sk, mis on vormingus <code>cd bot<\/code> Veendumiseks, et oled \u00f5iges kohas, saab sisestada k\u00e4su, mis kuvab konsoolis k\u00f5ik failid ja kaustad, mis seal on<code> ls -a<\/code><\/p>\n<p>K\u00e4ivitamiseks sisestasin konsooli <\/p>\n<pre><code class=\"plaintext\">node index.js\n<\/code><\/pre>\n<p>\nKui viga ei esine \u2014 k\u00f5ik on h\u00e4sti, bot t\u00f6\u00f6tab. Otsige teda Telegramis. Kui vea olemasolu \u2014 rakendage oma teadmisi punktist 1.<\/p>\n<p><b>9. Kuidas bot t\u00f6\u00f6le panna taustal<\/b><\/p>\n<p>Te m\u00f5istate kiiresti, et bot t\u00f6\u00f6tab ainult seni, kuni viibite konsoolis. Selle probleemi lahendamiseks olen kasutanud k\u00e4sku <\/p>\n<pre><code class=\"plaintext\">ekraan<\/code><\/pre>\n<p>\nP\u00e4rast seda kuvatakse ekraan mingi tekstiga. See t\u00e4hendab, et k\u00f5ik on h\u00e4sti. Olete virtuaalses serveris pilveserveris. Parema arusaamise saamiseks sellest, kuidas see k\u00f5ik t\u00f6\u00f6tab \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/bablofil.ru\/kak-zapustit-bota-na-servere\/\">siin on artikkel<\/a><\/noindex>. Lihtsalt minge oma kausta ja sisestage bot'i k\u00e4ivitamise k\u00e4sk<\/p>\n<pre><code class=\"plaintext\">node index.js<\/code><\/pre>\n<p>\n<b>10. Kuidas bot t\u00f6\u00f6tab ja kuidas laiendada selle funktsionaalsust<\/b><\/p>\n<p>Mida oskab meie n\u00e4idisbot? Ta oskab <\/p>\n<pre><code class=\"plaintext\">bot.start((ctx) =&gt; ctx.reply('Tere tulemast!'))<\/code><\/pre>\n<p>\n\u00fctle \u00abTere tulemast!\u00bb k\u00e4ivitamise hetkel (proovi teksti muuta)<\/p>\n<pre><code class=\"plaintext\">bot.help((ctx) =&gt; ctx.reply('Saada mulle kleebis'))<\/code><\/pre>\n<p>\nstandardse k\u00e4su \/help vastusena saata s\u00f5num \u00abSaada mulle kleebis\u00bb<\/p>\n<pre><code class=\"plaintext\">bot.on('sticker', (ctx) =&gt; ctx.reply(''))<\/code><\/pre>\n<p>\nkleebisele vastusena saata heakskiitu<\/p>\n<pre><code class=\"plaintext\">bot.hears('hi', (ctx) =&gt; ctx.reply('Tere'))<\/code><\/pre>\n<p>\nvastata 'Hey there', kui talle kirjutatakse 'hi'<br \/>\nbot.launch()<\/p>\n<p><img decoding=\"async\" alt=\"Juhend: kuidas luua algajale lihtne bot Telegramis JS-i abil\" src=\"\/wp-content\/uploads\/2019\/04\/d2a52f8feb46ff67ee39622c56e8ce8e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKui vaatate koodi aadressil <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/b0tank\/bot\/blob\/master\/index.js\">github<\/a><\/noindex>, siis m\u00f5istate kiiresti, et ei ole kaugele sattunud sellest funktsionaalsusest. Aktiivselt kasutatakse funktsiooni <code>ctx.replyWithPhoto<\/code> See v\u00f5imaldab saata m\u00e4\u00e4ratud foto v\u00f5i gif'i vastusena kindlale tekstile. <\/p>\n<p>Oluline osa koodist oli kirjutatud 11-13-aastaste laste poolt, kellele ma andsin boti juurde ligip\u00e4\u00e4su. Nad esitasid oma kasutusjuhtumid. Arvan, et on lihtne m\u00e4\u00e4rata, milline osa on kirjutatud nende poolt.<\/p>\n<p>N\u00e4iteks, kui saadetakse s\u00f5num \u00abjake\u00bb, saadetakse gif tuntud tegelasest multifilmist Adventure Time. <\/p>\n<p><img decoding=\"async\" alt=\"Juhend: kuidas luua algajale lihtne bot Telegramis JS-i abil\" src=\"\/wp-content\/uploads\/2019\/04\/56bdcb4dde80c032c225726b88417fb4.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nBoti edasiviimiseks tuleb klaviatuuri \u00fchendamiseks vaadata n\u00e4ite, n\u00e4iteks <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/telegraf\/telegraf\/tree\/develop\/docs\/examples\">siit<\/a><\/noindex><\/p>\n<p><b>11. Kuidas koodi uuendada ja boti taask\u00e4ivitada<\/b><\/p>\n<p>\u00c4rge unustage, et koodi tuleb uuendada mitte ainult github'is, vaid ka serveris. Seda on lihtne teha \u2014 peatame boti (vajutage ctrl+c),<\/p>\n<p> \u2014 sisestame konsoolis, olles sihtkaustas, <code>git pull<\/code><br \/>\n \u2014 taask\u00e4ivitame boti k\u00e4suga <code>node index.js<\/code><\/p>\n<p><b>L\u00d5PP<\/b><\/p>\n<p>Palju asju, mis on selles failis kirjeldatud, on edasij\u00f5udnud programmeerijatele \u00fclimalt ilmsed. Kuid kui ma proovisin \u00fchel korral astuda sammu botide maailma, tundsin ma v\u00e4ga tugevat vajadust sellise juhendi j\u00e4rele. Juhendi, kus ei j\u00e4eta k\u00f5rvale ilmselgeid ja igale IT-spetsialistile lihtsaid asju. <\/p>\n<p>Tulevikus plaanin postitust, kuidas teha oma esimest rakendust ReactNative'i stiilis, j\u00e4lgige!<br \/>\n<br \/>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/447006\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u042f \u043d\u0430\u0447\u0430\u043b \u043f\u043e\u0433\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0432 \u043c\u0438\u0440 IT \u043b\u0438\u0448\u044c \u0442\u0440\u0438 \u043d\u0435\u0434\u0435\u043b\u0438 \u043d\u0430\u0437\u0430\u0434. \u0421\u0435\u0440\u044c\u0435\u0437\u043d\u043e, \u0442\u0440\u0438 \u043d\u0435\u0434\u0435\u043b\u0438 \u043d\u0430\u0437\u0430\u0434 \u044f \u0434\u0430\u0436\u0435 \u043d\u0435 \u043f\u043e\u043d\u0438\u043c\u0430\u043b \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430 HTML, \u0430 \u0437\u043d\u0430\u043a\u043e\u043c\u0441\u0442\u0432\u043e \u0441 \u044f\u0437\u044b\u043a\u0430\u043c\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u043b\u043e\u0441\u044c \u0448\u043a\u043e\u043b\u044c\u043d\u043e\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043e\u0439 \u043f\u043e Pascal 10-\u043b\u0435\u0442\u043d\u0435\u0439 \u0434\u0430\u0432\u043d\u043e\u0441\u0442\u0438. \u041e\u0434\u043d\u0430\u043a\u043e \u044f \u0440\u0435\u0448\u0438\u043b\u0441\u044f \u043f\u043e\u0435\u0445\u0430\u0442\u044c \u0432 IT-\u043b\u0430\u0433\u0435\u0440\u044c, \u0434\u043b\u044f \u0434\u0435\u0442\u0435\u0439 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u043d\u0435\u043f\u043b\u043e\u0445\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0431\u043e\u0442\u0430. \u042f \u0440\u0435\u0448\u0438\u043b, \u0447\u0442\u043e \u044d\u0442\u043e \u0432\u0440\u044f\u0434 \u043b\u0438 \u0442\u0430\u043a \u0441\u043b\u043e\u0436\u043d\u043e. \u0421 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":23020,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-31044","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u042f \u043d\u0430\u0447\u0430\u043b \u043f\u043e\u0433\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0432 \u043c\u0438\u0440 IT \u043b\u0438\u0448\u044c \u0442\u0440\u0438 \u043d\u0435\u0434\u0435\u043b\u0438 \u043d\u0430\u0437\u0430\u0434. \u0421\u0435\u0440\u044c\u0435\u0437\u043d\u043e, \u0442\u0440\u0438 \u043d\u0435\u0434\u0435\u043b\u0438 \u043d\u0430\u0437\u0430\u0434 \u044f \u0434\u0430\u0436\u0435 \u043d\u0435 \u043f\u043e\u043d\u0438\u043c\u0430\u043b \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430 HTML, \u0430 \u0437\u043d\u0430\u043a\u043e\u043c\u0441\u0442\u0432\u043e \u0441 \u044f\u0437\u044b\u043a\u0430\u043c\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u043b\u043e\u0441\u044c \u0448\u043a\u043e\u043b\u044c\u043d\u043e\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043e\u0439 \u043f\u043e Pascal 10-\u043b\u0435\u0442\u043d\u0435\u0439 \u0434\u0430\u0432\u043d\u043e\u0441\u0442\u0438. \u041e\u0434\u043d\u0430\u043a\u043e \u044f \u0440\u0435\u0448\u0438\u043b\u0441\u044f \u043f\u043e\u0435\u0445\u0430\u0442\u044c \u0432 IT-\u043b\u0430\u0433\u0435\u0440\u044c, \u0434\u043b\u044f \u0434\u0435\u0442\u0435\u0439 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u043d\u0435\u043f\u043b\u043e\u0445\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0431\u043e\u0442\u0430. \u042f \u0440\u0435\u0448\u0438\u043b, \u0447\u0442\u043e \u044d\u0442\u043e \u0432\u0440\u044f\u0434 \u043b\u0438 \u0442\u0430\u043a \u0441\u043b\u043e\u0436\u043d\u043e. \u0421\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/rukovodstvo-kak-sdelat-prostogo-bota-dlya-telegram-na-js-dlya-novichka-v-programmirovanii\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e: \u043a\u0430\u043a \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0431\u043e\u0442\u0430 \u0434\u043b\u044f \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u043c \u043d\u0430 JS \u0434\u043b\u044f \u043d\u043e\u0432\u0438\u0447\u043a\u0430 \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u042f \u043d\u0430\u0447\u0430\u043b \u043f\u043e\u0433\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0432 \u043c\u0438\u0440 IT \u043b\u0438\u0448\u044c \u0442\u0440\u0438 \u043d\u0435\u0434\u0435\u043b\u0438 \u043d\u0430\u0437\u0430\u0434. \u0421\u0435\u0440\u044c\u0435\u0437\u043d\u043e, \u0442\u0440\u0438 \u043d\u0435\u0434\u0435\u043b\u0438 \u043d\u0430\u0437\u0430\u0434 \u044f \u0434\u0430\u0436\u0435 \u043d\u0435 \u043f\u043e\u043d\u0438\u043c\u0430\u043b \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430 HTML, \u0430 \u0437\u043d\u0430\u043a\u043e\u043c\u0441\u0442\u0432\u043e \u0441 \u044f\u0437\u044b\u043a\u0430\u043c\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u043b\u043e\u0441\u044c \u0448\u043a\u043e\u043b\u044c\u043d\u043e\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043e\u0439 \u043f\u043e Pascal 10-\u043b\u0435\u0442\u043d\u0435\u0439 \u0434\u0430\u0432\u043d\u043e\u0441\u0442\u0438. \u041e\u0434\u043d\u0430\u043a\u043e \u044f \u0440\u0435\u0448\u0438\u043b\u0441\u044f \u043f\u043e\u0435\u0445\u0430\u0442\u044c \u0432 IT-\u043b\u0430\u0433\u0435\u0440\u044c, \u0434\u043b\u044f \u0434\u0435\u0442\u0435\u0439 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u043d\u0435\u043f\u043b\u043e\u0445\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0431\u043e\u0442\u0430. \u042f \u0440\u0435\u0448\u0438\u043b, \u0447\u0442\u043e \u044d\u0442\u043e \u0432\u0440\u044f\u0434 \u043b\u0438 \u0442\u0430\u043a \u0441\u043b\u043e\u0436\u043d\u043e. \u0421\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/rukovodstvo-kak-sdelat-prostogo-bota-dlya-telegram-na-js-dlya-novichka-v-programmirovanii\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:39:05+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:39:05+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Juhend: kuidas teha lihtsat boti Telegramis JS abil programmimise algajatele | ProHoster","description":"Alustasin IT-maailma sukeldumist vaid kolm n\u00e4dalat tagasi. T\u00f5siselt, kolm n\u00e4dalat tagasi ei m\u00f5istnud ma isegi HTML s\u00fcntaksit, ja tutvumine programmeerimiskeeltega piirdus kooliprogrammiga Pasali 10 aastat tagasi. Siiski otsustasin minna IT-laagrisse, kus lastele oleks tore bot teha. Ostsustasin, et see ei saa olla nii keeruline.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/rukovodstvo-kak-sdelat-prostogo-bota-dlya-telegram-na-js-dlya-novichka-v-programmirovanii","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e: \u043a\u0430\u043a \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0431\u043e\u0442\u0430 \u0434\u043b\u044f \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u043c \u043d\u0430 JS \u0434\u043b\u044f \u043d\u043e\u0432\u0438\u0447\u043a\u0430 \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 | ProHoster","og:description":"\u042f \u043d\u0430\u0447\u0430\u043b \u043f\u043e\u0433\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0432 \u043c\u0438\u0440 IT \u043b\u0438\u0448\u044c \u0442\u0440\u0438 \u043d\u0435\u0434\u0435\u043b\u0438 \u043d\u0430\u0437\u0430\u0434. \u0421\u0435\u0440\u044c\u0435\u0437\u043d\u043e, \u0442\u0440\u0438 \u043d\u0435\u0434\u0435\u043b\u0438 \u043d\u0430\u0437\u0430\u0434 \u044f \u0434\u0430\u0436\u0435 \u043d\u0435 \u043f\u043e\u043d\u0438\u043c\u0430\u043b \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430 HTML, \u0430 \u0437\u043d\u0430\u043a\u043e\u043c\u0441\u0442\u0432\u043e \u0441 \u044f\u0437\u044b\u043a\u0430\u043c\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u043b\u043e\u0441\u044c \u0448\u043a\u043e\u043b\u044c\u043d\u043e\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043e\u0439 \u043f\u043e Pascal 10-\u043b\u0435\u0442\u043d\u0435\u0439 \u0434\u0430\u0432\u043d\u043e\u0441\u0442\u0438. \u041e\u0434\u043d\u0430\u043a\u043e \u044f \u0440\u0435\u0448\u0438\u043b\u0441\u044f \u043f\u043e\u0435\u0445\u0430\u0442\u044c \u0432 IT-\u043b\u0430\u0433\u0435\u0440\u044c, \u0434\u043b\u044f \u0434\u0435\u0442\u0435\u0439 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u043d\u0435\u043f\u043b\u043e\u0445\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0431\u043e\u0442\u0430. \u042f \u0440\u0435\u0448\u0438\u043b, \u0447\u0442\u043e \u044d\u0442\u043e \u0432\u0440\u044f\u0434 \u043b\u0438 \u0442\u0430\u043a \u0441\u043b\u043e\u0436\u043d\u043e. \u0421","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/rukovodstvo-kak-sdelat-prostogo-bota-dlya-telegram-na-js-dlya-novichka-v-programmirovanii","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:39:05+00:00","article:modified_time":"2019-10-31T18:39:05+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"31044","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 04:16:23","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 13:23:43","updated":"2026-01-21 04:16:23"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/31044","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=31044"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/31044\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/23020"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=31044"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=31044"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=31044"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}