{"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\/hr\/blog\/administrirovanie\/rukovodstvo-kak-sdelat-prostogo-bota-dlya-telegram-na-js-dlya-novichka-v-programmirovanii","title":{"rendered":"Vodi\u010d: kako napraviti jednostavnog bota za Telegram u JS za po\u010detnike u programiranju","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>U\u0161ao sam u svijet IT-a prije samo tri tjedna. Iskreno, tri tjedna prije nisam ni razumio sintaksu HTML-a, a upoznavanje s programskim jezicima zavr\u0161ilo je \u0161kolskim programom iz Pascala prije 10 godina. Ipak, odlu\u010dio sam oti\u0107i na IT kamp, gdje bi za djecu bilo dobro napraviti bota. Pomislio sam da to vjerojatno nije toliko te\u0161ko.<\/p>\n<p>Ovdje je zapo\u010deo dug put, tijekom kojeg sam:<\/p>\n<ul>\n<li>postavio oblak server s Ubuntu-om,<\/li>\n<li>registrirao se na GitHub-u,<\/li>\n<li>nau\u010dio osnovnu sintaksu JavaScript-a,<\/li>\n<li>pro\u010ditao tonu \u010dlanaka na engleskom i hrvatskom jeziku,<\/li>\n<li>nap finally napravio bota,<\/li>\n<li>napisao ovaj \u010dlanak, nap finally.<\/li>\n<\/ul>\n<p>\nKona\u010dni rezultat izgledao je otprilike ovako:<\/p>\n<p><img decoding=\"async\" alt=\"Vodi\u010d: kako napraviti jednostavnog bota za Telegram u JS za po\u010detnike u programiranju\" 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 \/>\nRe\u0107i \u0107u odmah, ovo je \u010dlanak za po\u010detnike \u2014 kako bi se jednostavno razumjelo kako raditi osnovne stvari s najni\u017eih to\u010daka.<\/p>\n<p>A jo\u0161 i za napredne programere \u2014 samo da ih malo nasmijem. <\/p>\n<p><b>1. Kako pisati kod na JS-u?<\/b><\/p>\n<p>Razumio sam da bi bilo dobro prvo se upoznati sa sintaksom jezika. Odabir je pao na JavaScript, jednostavno zato \u0161to je sljede\u0107i korak za mene bilo stvaranje aplikacije na ReactNative. Po\u010deo sam s <noindex><a rel=\"nofollow\" href=\"https:\/\/www.codecademy.com\/learn\/introduction-to-javascript\">te\u010dajem<\/a><\/noindex> na Codecademy i bio sam odu\u0161evljen. Prvih 7 dana besplatno. Stvarni projekti. Preporu\u010dujem. Prolazak je trajao otprilike 25 sati. Uistinu, nije mi sve bilo korisno. Ovako otprilike izgleda struktura te\u010daja i detaljno prvi blok.<\/p>\n<p><img decoding=\"async\" alt=\"Vodi\u010d: kako napraviti jednostavnog bota za Telegram u JS za po\u010detnike u programiranju\" src=\"\/wp-content\/uploads\/2019\/04\/e63be1e6c7f32cc3c929e0145996d569.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>2. Kako registrirati bota?<\/b><\/p>\n<p>Na po\u010detku mi je jako pomogla ova <noindex><a rel=\"nofollow\" href=\"https:\/\/archakov.im\/post\/telegram-bot-on-nodejs.html\">ovaj \u010dlanak<\/a><\/noindex> s bloga nekog Ar\u010dakova. Ovdje obja\u0161njava sam po\u010detak. Ali najva\u017enije, \u0161to tamo postoji \u2014 to je upute za registraciju bota. Bolje ne mogu napisati, a budu\u0107i da je to najlak\u0161i dio, samo \u0107u napisati su\u0161tinu. Treba stvoriti bota i dobiti njegov API. To se radi preko drugog bota \u2014 @BotFather. Prona\u0111ite ga u Telegramu, pi\u0161ite mu, pro\u0111ite jednostavan put i dobijte (spremite!) API klju\u010d (to je niz brojeva i slova). Korisno mi je do\u0161lo kasnije.<\/p>\n<p><img decoding=\"async\" alt=\"Vodi\u010d: kako napraviti jednostavnog bota za Telegram u JS za po\u010detnike u programiranju\" src=\"\/wp-content\/uploads\/2019\/04\/b8181f6ad1c67dd47dd337f8171bf941.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>3. Kako izgleda kod bota?<\/b><\/p>\n<p>Nakon dugog prou\u010davanja \u010dlanaka, shvatio sam da trebam koristiti neku biblioteku (spolja\u0161nji kod u formatu modula), kako se ne bih mu\u010dio s u\u010denjem Telegramovog API-ja i stvaranjem velikih dijelova koda od nule. Prona\u0161ao sam framework <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/telegraf\/telegraf\">telegraf<\/a><\/noindex>, koji je trebalo nekako povezati s ne\u010dim uz pomo\u0107 npm ili yarn. Otprilike tako sam tada razumio kako izgleda postavljanje bota. Ovdje se mo\u017eemo smijati. Ne\u0107u se ljutiti. Najvi\u0161e mi je kod kasnijeg stvaranja bota pomogao primjer naveden na dnu stranice:<\/p>\n<p><img decoding=\"async\" alt=\"Vodi\u010d: kako napraviti jednostavnog bota za Telegram u JS za po\u010detnike u programiranju\" src=\"\/wp-content\/uploads\/2019\/04\/711b252c5118b47a14c52862dd869058.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>3. Kako stvoriti vlastiti cloud server za 100 kuna<\/b><\/p>\n<p>Nakon dugog tra\u017eenja shvatio sam da se tim 'npm' iz slike iznad odnosi na komandnu liniju. Komandna linija postoji svuda, ali da bi se mogla izvr\u0161iti, potrebno je instalirati NodePackageManager. Problem je bio \u0161to sam programirao na PixelBooku s ChromeOS-om. Ovdje \u0107u presko\u010diti veliki dio o tome kako sam u\u010dio Linux \u2014 ve\u0107ini je to suvi\u0161no i nepotrebno. Ako imate Windows ili MacBook, ve\u0107 imate konzolu. <\/p>\n<p>Obi\u010dno re\u010deno, instalirao sam Linux putem Crostini. <\/p>\n<p>No tijekom procesa shvatio sam da mi je za stalni rad bota (a ne samo kada je moj ra\u010dunal uklju\u010deno) potreban cloud server. Odabrao sam <noindex><a rel=\"nofollow\" href=\"http:\/\/vscale.io\">vscale.io<\/a><\/noindex> Ulo\u017eio sam 100 kuna, kupio najjeftiniji Ubuntu server (vidi sliku). <\/p>\n<p><img decoding=\"async\" alt=\"Vodi\u010d: kako napraviti jednostavnog bota za Telegram u JS za po\u010detnike u programiranju\" src=\"\/wp-content\/uploads\/2019\/04\/74cdc3858900bbd0d95715f5371ef52a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>4. Kako pripremiti server za pokretanje bota<\/b><\/p>\n<p>Nakon toga shvatio sam da trebam napraviti neku mapu na serveru u koju \u0107u staviti datoteku s kodom. Za to sam u konzoli (pokrenuti izravno na web stranici putem gumba 'Otvori konzolu') ukucao <\/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>\nPreporu\u010dujem da u ovoj fazi postavite vezu s serverom putem svoje konzole. Evo <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\">upute<\/a><\/noindex> To \u0107e omogu\u0107iti izravni rad s serverom putem konzole va\u0161eg ra\u010dunala.<\/p>\n<p><b>5. Kako napisati kod prvog bota.<\/b><\/p>\n<p>A sada je ovo za mene potpuno otkri\u0107e. Svaki program \u2014 to su samo redovi teksta. Mogu se unijeti bilo gdje, pohraniti s odgovaraju\u0107im ekstenzijama i to je to. Sjajan si. Koristio sam <noindex><a rel=\"nofollow\" href=\"https:\/\/atom.io\/\">Atom<\/a><\/noindex>, ali zapravo, jednostavno se mo\u017ee pisati u obi\u010dnom notepadu. Glavno je samo sa\u010duvati datoteku s odgovaraju\u0107om ekstenzijom. To je kao napisati tekst u Wordu i sa\u010duvati. <\/p>\n<p>Napravio sam novu datoteku u koju sam umetnuo kod iz primjera na stranici telegraf i sa\u010duvao kao index.js (nije nu\u017eno nazvati datoteku tako, ali to je uobi\u010dajeno). Va\u017eno je \u2014 umjesto BOT_TOKEN umetnite svoj API klju\u010d iz drugog koraka.<\/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('Welcome!'))\nbot.help((ctx) =&gt; ctx.reply('Send me a sticker'))\nbot.on('sticker', (ctx) =&gt; ctx.reply(''))\nbot.hears('hi', (ctx) =&gt; ctx.reply('Hey there'))\nbot.launch()<\/code><\/pre>\n<p>\n<b>6. Kako prenijeti kod na server putem github-a<\/b><\/p>\n<p>Sada sam trebao nekako staviti ovaj kod na server i pokrenuti ga. To je za mene bio izazov. Na kraju, nakon dugih frustracija, shvatio sam da \u0107e biti lak\u0161e napraviti datoteku na githubu koja omogu\u0107ava a\u017euriranje koda pomo\u0107u naredbe u konzoli. Registrirao sam ra\u010dun na <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/\">github<\/a><\/noindex> i napravio <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/b0tank\/bot\">a new project<\/a><\/noindex>, gdje sam i prenio datoteku. Nakon toga, trebao sam shvatiti kako postaviti u\u010ditavanje datoteka s mog (otvorenog!) ra\u010duna na server u mapu bot (ako ste slu\u010dajno iza\u0161li iz nje \u2014 jednostavno napi\u0161ite cd bot).<\/p>\n<p><b>7. Kako prenijeti datoteke na server putem githuba dio 2<\/b><\/p>\n<p>Trebalo mi je postaviti program na server koji \u0107e u\u010ditavati datoteke s gita. Instalirao sam git na server tako da sam upisao u konzolu <\/p>\n<pre><code class=\"plaintext\">apt-get install git<\/code><\/pre>\n<p>\nNakon toga, trebao sam postaviti u\u010ditavanje datoteka. Za to sam u konzolu upisao <\/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>Odlu\u010dio sam zanemariti ovaj problem.<\/p>\n<p>I kako bih u\u010ditao biblioteku telegraf, koju tra\u017eimo u prvoj liniji koda, upi\u0161ite u konzolu naredbu.<\/p>\n<pre><code class=\"plaintext\">npm install telegraf<\/code><\/pre>\n<p>\n<b>8. Kako pokrenuti bota<\/b><\/p>\n<p>Za to, dok sam u mapi s datotekom (kako biste pre\u0161li iz mape u mapu preko konzole - izvr\u0161ite naredbu formata <code>cd bot<\/code> Da biste bili sigurni da ste tamo gdje treba, mo\u017eete upisati naredbu koja \u0107e prikazati sve datoteke i mape koje se nalaze tamo<code> ls -a<\/code><\/p>\n<p>Za pokretanje sam upisao u konzolu <\/p>\n<pre><code class=\"plaintext\">node index.js\n<\/code><\/pre>\n<p>\nAko nema gre\u0161ke \u2014 sve je u redu, bot radi. Potra\u017eite ga na Telegramu. Ako postoji gre\u0161ka \u2014 primijenite svoje znanje iz 1. to\u010dke.<\/p>\n<p><b>9. Kako pokrenuti bota u pozadini<\/b><\/p>\n<p>Relativno brzo \u0107ete shvatiti da bot radi samo kada sami sjedite u konzoli. Da biste rije\u0161ili ovaj problem, koristio sam naredbu <\/p>\n<pre><code class=\"plaintext\">screen<\/code><\/pre>\n<p>\nNakon toga \u0107e se pojaviti ekran s nekim tekstom. To zna\u010di da je sve u redu. Vi ste na virtualnom serveru u oblaku. Da biste bolje razumjeli kako to sve funkcionira \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/bablofil.ru\/kak-zapustit-bota-na-servere\/\">evo \u010dlanka<\/a><\/noindex>. Jednostavno u\u0111ite u svoju mapu i upi\u0161ite naredbu za pokretanje bota<\/p>\n<pre><code class=\"plaintext\">node index.js<\/code><\/pre>\n<p>\n<b>10. Kako bot radi i kako pro\u0161iriti njegov funkcionalnost<\/b><\/p>\n<p>\u0160to mo\u017ee na\u0161 bot iz primjera? Mo\u017ee <\/p>\n<pre><code class=\"plaintext\">bot.start((ctx) =&gt; ctx.reply('Welcome!'))<\/code><\/pre>\n<p>\nre\u0107i 'Welcome!' u trenutku pokretanja (poku\u0161ajte promijeniti tekst)<\/p>\n<pre><code class=\"plaintext\">bot.help((ctx) =&gt; ctx.reply('Send me a sticker'))<\/code><\/pre>\n<p>\nu odgovoru na standardnu naredbu \/help slati poruku 'Send me a sticker'<\/p>\n<pre><code class=\"plaintext\">bot.on('sticker', (ctx) =&gt; ctx.reply(''))<\/code><\/pre>\n<p>\nu odgovoru na naljepnicu slati odobravanje<\/p>\n<pre><code class=\"plaintext\">bot.hears('hi', (ctx) =&gt; ctx.reply('Hey there'))<\/code><\/pre>\n<p>\nodgovoriti 'Hey there' ako mu pi\u0161u 'hi'<br \/>\nbot.launch()<\/p>\n<p><img decoding=\"async\" alt=\"Vodi\u010d: kako napraviti jednostavnog bota za Telegram u JS za po\u010detnike u programiranju\" src=\"\/wp-content\/uploads\/2019\/04\/d2a52f8feb46ff67ee39622c56e8ce8e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAko pogledate kod na <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/b0tank\/bot\/blob\/master\/index.js\">github<\/a><\/noindex>, brzo \u0107ete shvatiti da nisam oti\u0161ao daleko od ove funkcionalnosti. Ono \u0161to se aktivno koristi je funkcija <code>ctx.replyWithPhoto<\/code> Omogu\u0107uje slanje odre\u0111enog fotografije ili gif-a kao odgovor na odre\u0111eni tekst. <\/p>\n<p>Zna\u010dajan deo koda napisali su deca uzrasta od 11 do 13 godina kojima sam dao pristup bota. Uneli su svoje korisni\u010dke slu\u010dajeve. Mislim da je lako odrediti koji deo su oni napravili.<\/p>\n<p>Na primer, na poruku \"d\u017eejk\" dolazi gif poznatog lika iz crtanog filma Adventure Time. <\/p>\n<p><img decoding=\"async\" alt=\"Vodi\u010d: kako napraviti jednostavnog bota za Telegram u JS za po\u010detnike u programiranju\" src=\"\/wp-content\/uploads\/2019\/04\/56bdcb4dde80c032c225726b88417fb4.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDa biste dalje razvijali bota, potrebno je da pove\u017eete tastaturu gledaju\u0107i primere, na primer, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/telegraf\/telegraf\/tree\/develop\/docs\/examples\">odavde<\/a><\/noindex><\/p>\n<p><b>11. Kako a\u017eurirati kod i ponovo pokrenuti bota<\/b><\/p>\n<p>Ne zaboravite da treba a\u017eurirati kod ne samo na github-u, ve\u0107 i na serveru. To je jednostavno \u2014 zaustavite bota (pritisnite ctrl+c),<\/p>\n<p> \u2014 unesite u konzolu, dok se nalazite u ciljnoj fascikli, <code>git pull<\/code><br \/>\n \u2014 ponovo pokrenite bota komandama <code>node index.js<\/code><\/p>\n<p><b>KRAJ<\/b><\/p>\n<p>Mnoge stvari opisane u ovoj datoteci bi\u0107e super o\u010digledne za napredne programere. Me\u0111utim, kada sam poku\u0161avao da presko\u010dim ponor i u\u0111em u svet botova, jako je nedostajao ovakav vodi\u010d. Vodi\u010d u kojem se ne propu\u0161taju o\u010digledne i jednostavne stvari za bilo kojeg IT stru\u010dnjaka. <\/p>\n<p>U budu\u0107nosti planiram post o tome kako napraviti svoju prvu aplikaciju na ReactNative u sli\u010dnom stilu, prijavite se!<br \/>\n<br \/>Izvor: <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 5.0.4 - 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.\" \/>\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\/hr\/blog\/administrirovanie\/rukovodstvo-kak-sdelat-prostogo-bota-dlya-telegram-na-js-dlya-novichka-v-programmirovanii\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"hr_HR\" \/>\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.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hr\/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\udd47Vodi\u010d: Kako napraviti jednostavnog bota za Telegram na JS za po\u010detnike u programiranju | ProHoster","description":"Zaronio sam u svet IT-a pre samo tri nedelje. Iskreno, pre tri nedelje nisam ni razumeo HTML sintaksu, a upoznavanje sa programskim jezicima zavr\u0161avalo je \u0161kolskim programom u Pascalu pre 10 godina.","canonical_url":"https:\/\/prohoster.info\/hr\/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":"hr_HR","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.","og:url":"https:\/\/prohoster.info\/hr\/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","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/31044","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/comments?post=31044"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/31044\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media\/23020"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media?parent=31044"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/categories?post=31044"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/tags?post=31044"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}