{"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\/it\/blog\/administrirovanie\/rukovodstvo-kak-sdelat-prostogo-bota-dlya-telegram-na-js-dlya-novichka-v-programmirovanii","title":{"rendered":"Guida: come creare un semplice bot per Telegram in JS per principianti nella programmazione","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Ho iniziato a immergermi nel mondo IT solo tre settimane fa. Seriamente, tre settimane fa non capivo nemmeno la sintassi HTML, e la mia conoscenza dei linguaggi di programmazione si fermava al programma di scuola su Pascal di 10 anni fa. Tuttavia, ho deciso di partecipare a un campo IT, dove sarebbe stato utile per i bambini realizzare un bot. Ho pensato che non potesse essere cos\u00ec difficile.<\/p>\n<p>Da qui \u00e8 iniziato un lungo percorso, durante il quale ho:<\/p>\n<ul>\n<li>sviluppato un server cloud con Ubuntu,<\/li>\n<li>mi sono registrato su GitHub,<\/li>\n<li>imparato la sintassi di base di JavaScript,<\/li>\n<li>letto tonnellate di articoli in inglese e russo,<\/li>\n<li>finalmente realizzato un bot,<\/li>\n<li>e scritto finalmente questo articolo.<\/li>\n<\/ul>\n<p>\nIl risultato finale \u00e8 apparso pi\u00f9 o meno cos\u00ec:<\/p>\n<p><img decoding=\"async\" alt=\"Guida: come creare un semplice bot per Telegram in JS per principianti nella programmazione\" 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 \/>\nDir\u00f2 subito che questo articolo \u00e8 per principianti \u2014 per capire semplicemente come fare cose elementari partendo da zero.<\/p>\n<p>E inoltre \u2014 per programmatori avanzati \u2014 semplicemente per strappare loro un sorriso. <\/p>\n<p><b>1. Come scrivere codice in JS?<\/b><\/p>\n<p>Capivo che per iniziare dovevo almeno capire la sintassi del linguaggio. Ho scelto JavaScript, semplicemente perch\u00e9 il passo successivo per me era creare un'applicazione su ReactNative. Ho iniziato con <noindex><a rel=\"nofollow\" href=\"https:\/\/www.codecademy.com\/learn\/introduction-to-javascript\">del corso<\/a><\/noindex> Codecademy e ne sono rimasto entusiasta. I primi 7 giorni sono gratuiti. Progetti reali. Lo consiglio. Ci ho messo circa 25 ore a completarlo. In realt\u00e0, non tutto ci\u00f2 che ho imparato mi \u00e8 stato utile. Questa \u00e8 pi\u00f9 o meno la struttura del corso e in dettaglio il primo blocco.<\/p>\n<p><img decoding=\"async\" alt=\"Guida: come creare un semplice bot per Telegram in JS per principianti nella programmazione\" src=\"\/wp-content\/uploads\/2019\/04\/e63be1e6c7f32cc3c929e0145996d569.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>2. Come registrare un bot?<\/b><\/p>\n<p>Inizialmente mi ha molto aiutato questo <noindex><a rel=\"nofollow\" href=\"https:\/\/archakov.im\/post\/telegram-bot-on-nodejs.html\">questo articolo<\/a><\/noindex> dal blog di un certo Archakoff. Spiega le basi in modo chiaro. Ma la cosa principale che c'\u00e8 \u2014 \u00e8 una guida per la registrazione di un bot. Non potrei scriverla meglio, e poich\u00e9 \u00e8 la parte pi\u00f9 facile, scriver\u00f2 semplicemente il succo. Devi creare un bot e ottenere la sua API. Questo si fa attraverso un altro bot \u2014 @BotFather. Trovalo su Telegram, scrivigli, segui un percorso semplice e ricevi (salva!) la chiave API (\u00e8 una serie di numeri e lettere). Mi \u00e8 servita in seguito.<\/p>\n<p><img decoding=\"async\" alt=\"Guida: come creare un semplice bot per Telegram in JS per principianti nella programmazione\" src=\"\/wp-content\/uploads\/2019\/04\/b8181f6ad1c67dd47dd337f8171bf941.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>3. Come appare il codice del bot?<\/b><\/p>\n<p>Dopo lunghe letture di articoli, ho capito che valeva la pena utilizzare una libreria (codice di terze parti in formato modulo), per non dover lottare con lo studio dell'API di Telegram e creare grandi pezzi di codice da zero. Ho trovato il framework <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/telegraf\/telegraf\">telegraf<\/a><\/noindex>, che doveva essere collegato in qualche modo a qualcosa tramite npm o yarn. Cos\u00ec pensavo allora a cosa consistesse il dispiegamento di un bot. Ridere qui. Non me ne offendo. Pi\u00f9 di tutto, durante la successiva creazione del bot, mi hanno aiutato gli esempi indicati in fondo alla pagina:<\/p>\n<p><img decoding=\"async\" alt=\"Guida: come creare un semplice bot per Telegram in JS per principianti nella programmazione\" src=\"\/wp-content\/uploads\/2019\/04\/711b252c5118b47a14c52862dd869058.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>3. Come creare il proprio server cloud per 100 rubli<\/b><\/p>\n<p>Dopo lunghe ricerche, ho capito che il comando 'npm' dell'immagine qui sopra si riferisce al terminale. Il terminale \u00e8 ovunque, ma per eseguirlo \u00e8 necessario installare NodePackageManager. Il problema era che stavo programmando su un PixelBook con ChromeOS. Salter\u00f2 qui un lungo passaggio su come ho imparato Linux \u2014 per la maggior parte delle persone \u00e8 superfluo e non necessario. Se hai Windows o MacBook, hai gi\u00e0 un terminale. <\/p>\n<p>In poche parole, ho installato Linux tramite Crostini. <\/p>\n<p>Tuttavia, durante il processo ho capito che per far funzionare il bot in modo permanente (e non solo quando ho acceso il computer) avevo bisogno di un server cloud. Ho scelto <noindex><a rel=\"nofollow\" href=\"http:\/\/vscale.io\">vscale.io<\/a><\/noindex> Ho caricato 100 rubli, ho comprato il server Ubuntu pi\u00f9 economico (vedi l'immagine). <\/p>\n<p><img decoding=\"async\" alt=\"Guida: come creare un semplice bot per Telegram in JS per principianti nella programmazione\" src=\"\/wp-content\/uploads\/2019\/04\/74cdc3858900bbd0d95715f5371ef52a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>4. Come preparare il server per avviare il bot<\/b><\/p>\n<p>Dopo di che ho capito che dovevo creare una cartella sul server, in cui avrei messo il file con il codice. Per farlo, nella console (eseguita direttamente sul sito tramite il pulsante 'Apri console') ho scritto <\/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>\nConsiglio vivamente di configurare la connessione al server tramite la propria console in questo passaggio. Ecco <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\">istruzioni<\/a><\/noindex> Questo permetter\u00e0 di lavorare con il server direttamente attraverso la console del proprio computer.<\/p>\n<p><b>5. Come scrivere il codice del primo bot.<\/b><\/p>\n<p>Ora \u00e8 una semplice apertura per me. Qualsiasi programma \u00e8 semplicemente righe di testo. Possono essere inserite ovunque, salvate con l'estensione necessaria, e basta. Sei fantastico. Ho usato <noindex><a rel=\"nofollow\" href=\"https:\/\/atom.io\/\">Atom<\/a><\/noindex>, ma in realt\u00e0, si pu\u00f2 semplicemente scrivere in un normale blocco note. L'importante \u00e8 poi salvare il file con l'estensione corretta. \u00c8 come scrivere un testo in Word e salvarlo. <\/p>\n<p>Ho creato un nuovo file, in cui ho incollato il codice dall'esempio nella pagina di telegraf e l'ho salvato nel file index.js (non \u00e8 obbligatorio chiamare il file cos\u00ec, ma \u00e8 consueto). \u00c8 importante \u2014 sostituire BOT_TOKEN con la propria chiave API del secondo punto.<\/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. Come caricare il codice sul server tramite github<\/b><\/p>\n<p>Ora dovevo caricare questo codice sul server e avviarlo. Per me \u00e8 diventato una sfida. Alla fine, dopo molte peripezie, ho capito che era pi\u00f9 semplice creare un file su github, che permette di aggiornare il codice tramite un comando in console. Ho registrato un account su <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/\">github<\/a><\/noindex> e ho fatto <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/b0tank\/bot\">nuovo progetto<\/a><\/noindex>, dove ho caricato il file. Dopo di che, dovevo capire come configurare il caricamento dei file dal mio account (pubblico!) sul server nella cartella bot (se per caso ne sei uscito \u2014 scrivi semplicemente cd bot).<\/p>\n<p><b>7. Come caricare file sul server tramite github parte 2<\/b><\/p>\n<p>Dovevo installare sul server un programma che caricasse file da git. Ho installato git sul server, digitando in console <\/p>\n<pre><code class=\"plaintext\">apt-get install git<\/code><\/pre>\n<p>\nDopo questo, dovevo configurare il caricamento dei file. Per fare ci\u00f2, ho digitato nel terminale <\/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>Ho deciso di ignorare questo problema.<\/p>\n<p>E per caricare la libreria telegraf, che richiediamo nella prima riga del codice, digita il comando in console.<\/p>\n<pre><code class=\"plaintext\">npm install telegraf<\/code><\/pre>\n<p>\n<b>8. Come avviare il bot<\/b><\/p>\n<p>Per farlo, mentre ti trovi nella cartella con il file (per spostarti da una cartella all'altra tramite la console \u2014 esegui il comando nel formato <code>cd bot<\/code> Per assicurarti di essere nel posto giusto, puoi digitare un comando che mostri in console tutti i file e le cartelle presenti<code> ls -a<\/code><\/p>\n<p>Per avviare, ho digitato in console <\/p>\n<pre><code class=\"plaintext\">node index.js\n<\/code><\/pre>\n<p>\nSe non ci sono errori \u2014 tutto va bene, il bot funziona. Cercalo su Telegram. Se ci sono errori \u2014 applica le tue conoscenze dal punto 1.<\/p>\n<p><b>9. Come avviare il bot in modalit\u00e0 background<\/b><\/p>\n<p>Capirai presto che il bot funziona solo quando sei tu stesso nella console. Per risolvere questo problema ho usato il comando <\/p>\n<pre><code class=\"plaintext\">screen<\/code><\/pre>\n<p>\nDopo di che apparir\u00e0 uno schermo con qualche testo. Questo significa che va tutto bene. Sei su un server virtuale in un server cloud. Per capire meglio come funziona tutto questo \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/bablofil.ru\/kak-zapustit-bota-na-servere\/\">ecco un articolo<\/a><\/noindex>. Basta entrare nella tua cartella e digitare il comando per avviare il bot.<\/p>\n<pre><code class=\"plaintext\">node index.js<\/code><\/pre>\n<p>\n<b>10. Come funziona il bot e come espandere le sue funzionalit\u00e0<\/b><\/p>\n<p>Cosa sa fare il nostro bot di esempio? Sa <\/p>\n<pre><code class=\"plaintext\">bot.start((ctx) =&gt; ctx.reply('Benvenuto!'))<\/code><\/pre>\n<p>\ndire \u00abBenvenuto!\u00bb al momento dell'avvio (provate a cambiare il testo)<\/p>\n<pre><code class=\"plaintext\">bot.help((ctx) =&gt; ctx.reply('Inviami un adesivo'))<\/code><\/pre>\n<p>\nrispondere al comando standard \/help inviando il messaggio \u00abInviami un adesivo\u00bb<\/p>\n<pre><code class=\"plaintext\">bot.on('sticker', (ctx) =&gt; ctx.reply(''))<\/code><\/pre>\n<p>\nrispondere all'adesivo inviando un'approvazione<\/p>\n<pre><code class=\"plaintext\">bot.hears('hi', (ctx) =&gt; ctx.reply('Ciao!'))<\/code><\/pre>\n<p>\nrispondere \u00abHey there\u00bb se gli scrivono \u00abhi\u00bb<br \/>\nbot.launch()<\/p>\n<p><img decoding=\"async\" alt=\"Guida: come creare un semplice bot per Telegram in JS per principianti nella programmazione\" src=\"\/wp-content\/uploads\/2019\/04\/d2a52f8feb46ff67ee39622c56e8ce8e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSe guardi il codice su <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/b0tank\/bot\/blob\/master\/index.js\">github<\/a><\/noindex>, allora capirete rapidamente che non mi sono allontanato molto da questa funzionalit\u00e0. Ci\u00f2 che viene utilizzato attivamente \u00e8 la funzione <code>ctx.replyWithPhoto<\/code> Essa consente di inviare un'immagine o un gif specifico in risposta a un determinato testo. <\/p>\n<p>Una parte significativa del codice \u00e8 stata scritta da bambini di 11-13 anni, ai quali ho dato accesso al bot. Hanno inserito i loro casi d'uso. Penso sia facile identificare quale parte \u00e8 stata realizzata da loro.<\/p>\n<p>Ad esempio, a un messaggio \u00abjake\u00bb arriva un gif con un noto personaggio del cartone animato Adventure Time. <\/p>\n<p><img decoding=\"async\" alt=\"Guida: come creare un semplice bot per Telegram in JS per principianti nella programmazione\" src=\"\/wp-content\/uploads\/2019\/04\/56bdcb4dde80c032c225726b88417fb4.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPer sviluppare ulteriormente il bot, per connettere la tastiera, bisogna vedere degli esempi, per esempio, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/telegraf\/telegraf\/tree\/develop\/docs\/examples\">da qui<\/a><\/noindex><\/p>\n<p><b>11. Come aggiornare il codice e riavviare il bot<\/b><\/p>\n<p>Non dimenticate che bisogna aggiornare il codice non solo su GitHub, ma anche sul server. \u00c8 semplice: fermiamo il bot (premendo ctrl+c),<\/p>\n<p> \u2014 inseriamo nella console, trovandoci nella cartella di destinazione, <code>git pull<\/code><br \/>\n \u2014 riavviamo nuovamente il bot con il comando <code>node index.js<\/code><\/p>\n<p><b>END<\/b><\/p>\n<p>Molti aspetti descritti in questo file saranno super evidenti per programmatori esperti. Tuttavia, quando ho cercato di saltare in un colpo solo nel mondo dei bot, mi \u00e8 molto mancato un guido del genere. Un guido che non tralasci cose ovvie e semplici per qualsiasi specialista IT. <\/p>\n<p>In futuro, ho in programma un post su come creare la propria prima applicazione in ReactNative nello stesso stile, iscrivetevi!<br \/>\n<br \/>Fonte: <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.1.1 - 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\/it\/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) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\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\/it\/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\udd47Guida: come creare un semplice bot per Telegram in JS per principianti nella programmazione | ProHoster","description":"Ho iniziato a immergermi nel mondo IT solo tre settimane fa. Sul serio, tre settimane fa non capivo nemmeno la sintassi HTML, e la mia conoscenza dei linguaggi di programmazione si fermava al programma scolastico di Pascal di dieci anni fa.","canonical_url":"https:\/\/prohoster.info\/it\/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":"it_IT","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\/it\/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\/it\/wp-json\/wp\/v2\/posts\/31044","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=31044"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/31044\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media\/23020"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=31044"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=31044"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=31044"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}