{"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\/es\/blog\/administrirovanie\/rukovodstvo-kak-sdelat-prostogo-bota-dlya-telegram-na-js-dlya-novichka-v-programmirovanii","title":{"rendered":"Gu\u00eda: c\u00f3mo hacer un bot simple para Telegram en JS para principiantes en programaci\u00f3n","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Comenc\u00e9 a sumergirme en el mundo de IT hace solo tres semanas. En serio, hace tres semanas ni siquiera entend\u00eda la sintaxis de HTML, y mi conocimiento de lenguajes de programaci\u00f3n se limitaba a un curso de Pascal de hace diez a\u00f1os. Sin embargo, decid\u00ed ir a un campamento de IT, donde ser\u00eda genial que los ni\u00f1os tuviesen un bot. Pens\u00e9 que no deber\u00eda ser tan complicado.<\/p>\n<p>A partir de aqu\u00ed comenz\u00f3 un largo camino, en el que yo:<\/p>\n<ul>\n<li>desplegu\u00e9 un servidor en la nube con Ubuntu,<\/li>\n<li>me registr\u00e9 en GitHub,<\/li>\n<li>aprend\u00ed la sintaxis b\u00e1sica de JavaScript,<\/li>\n<li>le\u00ed una tonelada de art\u00edculos en ingl\u00e9s y ruso,<\/li>\n<li>finalmente hice el bot,<\/li>\n<li>y escrib\u00ed este art\u00edculo, por fin.<\/li>\n<\/ul>\n<p>\nAs\u00ed es como se ve\u00eda el resultado final:<\/p>\n<p><img decoding=\"async\" alt=\"Gu\u00eda: c\u00f3mo hacer un bot simple para Telegram en JS para principiantes en programaci\u00f3n\" 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 \/>\nDigo de inmediato, este art\u00edculo es para principiantes \u2014 para entender c\u00f3mo hacer cosas elementales desde el punto m\u00e1s b\u00e1sico.<\/p>\n<p>Y tambi\u00e9n \u2014 para programadores avanzados \u2014 solo para sacarles una sonrisa. <\/p>\n<p><b>1. \u00bfC\u00f3mo escribir c\u00f3digo en JS?<\/b><\/p>\n<p>Entend\u00eda que primero deb\u00eda familiarizarme con la sintaxis del lenguaje. Eleg\u00ed JavaScript, simplemente porque el siguiente paso para m\u00ed era crear una aplicaci\u00f3n en ReactNative. Comenc\u00e9 con <noindex><a rel=\"nofollow\" href=\"https:\/\/www.codecademy.com\/learn\/introduction-to-javascript\">un curso<\/a><\/noindex> en Codecademy y qued\u00e9 muy impresionado. Los primeros 7 d\u00edas son gratuitos. Proyectos reales. Lo recomiendo. Me tom\u00f3 alrededor de 25 horas completarlo. En realidad, no todo de \u00e9l me fue \u00fatil. As\u00ed es como se ve la estructura del curso y en detalle el primer bloque.<\/p>\n<p><img decoding=\"async\" alt=\"Gu\u00eda: c\u00f3mo hacer un bot simple para Telegram en JS para principiantes en programaci\u00f3n\" src=\"\/wp-content\/uploads\/2019\/04\/e63be1e6c7f32cc3c929e0145996d569.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>2. \u00bfC\u00f3mo registrar un bot?<\/b><\/p>\n<p>Al principio, me ayud\u00f3 mucho este <noindex><a rel=\"nofollow\" href=\"https:\/\/archakov.im\/post\/telegram-bot-on-nodejs.html\">art\u00edculo<\/a><\/noindex> del blog de un tal Archakov. \u00c9l explica lo m\u00e1s b\u00e1sico. Pero lo principal que hay all\u00ed es la gu\u00eda para registrar un bot. No puedo escribirlo mejor, y dado que esta es la parte m\u00e1s f\u00e1cil, simplemente escribir\u00e9 la esencia. Necesitas crear un bot y obtener su API. Esto se hace a trav\u00e9s de otro bot \u2014 @BotFather. Encu\u00e9ntralo en Telegram, escr\u00edbale, sigue el sencillo proceso y obt\u00e9n (\u00a1guarda!) la clave API (que es un conjunto de n\u00fameros y letras). Me fue \u00fatil m\u00e1s tarde.<\/p>\n<p><img decoding=\"async\" alt=\"Gu\u00eda: c\u00f3mo hacer un bot simple para Telegram en JS para principiantes en programaci\u00f3n\" src=\"\/wp-content\/uploads\/2019\/04\/b8181f6ad1c67dd47dd337f8171bf941.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>3. \u00bfC\u00f3mo es el c\u00f3digo del bot?<\/b><\/p>\n<p>Despu\u00e9s de una larga b\u00fasqueda de art\u00edculos, entend\u00ed que deb\u00eda usar alguna biblioteca (c\u00f3digo de terceros en formato de m\u00f3dulo), para no lidiar con el aprendizaje de la API de Telegram y la creaci\u00f3n desde cero de grandes bloques de c\u00f3digo. Encontr\u00e9 el marco <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/telegraf\/telegraf\">telegraf<\/a><\/noindex>, que necesitaba conectarse a algo mediante npm o yarn. As\u00ed entend\u00eda yo entonces en qu\u00e9 consist\u00eda el despliegue de un bot. R\u00edete aqu\u00ed. No me ofender\u00e9. Lo que m\u00e1s me ayud\u00f3 al crear el bot posteriormente fueron los ejemplos indicados al final de la p\u00e1gina:<\/p>\n<p><img decoding=\"async\" alt=\"Gu\u00eda: c\u00f3mo hacer un bot simple para Telegram en JS para principiantes en programaci\u00f3n\" src=\"\/wp-content\/uploads\/2019\/04\/711b252c5118b47a14c52862dd869058.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>3. C\u00f3mo crear tu propio servidor en la nube por 100 rublos<\/b><\/p>\n<p>Despu\u00e9s de largas b\u00fasquedas, me di cuenta de que el comando \u2018npm\u2019 de la imagen anterior se refiere a la l\u00ednea de comandos. La l\u00ednea de comandos est\u00e1 en todas partes, pero para poder ejecutarla, es necesario instalar NodePackageManager. El problema era que estaba programando en un PixelBook con ChromeOS. Omitir\u00e9 aqu\u00ed un gran bloque sobre c\u00f3mo aprend\u00ed Linux, ya que para la mayor\u00eda esto es irrelevante y innecesario. Si tienes Windows o un MacBook, ya tienes consola. <\/p>\n<p>En pocas palabras, instal\u00e9 Linux a trav\u00e9s de Crostini. <\/p>\n<p>Sin embargo, durante el proceso comprend\u00ed que para que el bot funcione de manera continua (y no solo cuando tengo mi computadora encendida), necesito un servidor en la nube. Eleg\u00ed <noindex><a rel=\"nofollow\" href=\"http:\/\/vscale.io\">vscale.io<\/a><\/noindex> Deposit\u00e8 100 rublos y compr\u00e9 el servidor Ubuntu m\u00e1s barato (ver imagen). <\/p>\n<p><img decoding=\"async\" alt=\"Gu\u00eda: c\u00f3mo hacer un bot simple para Telegram en JS para principiantes en programaci\u00f3n\" src=\"\/wp-content\/uploads\/2019\/04\/74cdc3858900bbd0d95715f5371ef52a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<b>4. C\u00f3mo preparar el servidor para ejecutar el bot<\/b><\/p>\n<p>Despu\u00e9s de esto, entend\u00ed que necesitaba crear una carpeta en el servidor donde colocar\u00eda el archivo con el c\u00f3digo. Para ello, en la consola (puedes ejecutarlo directamente en el sitio a trav\u00e9s del bot\u00f3n \u2018Abrir consola\u2019), escrib\u00ed <\/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>\nTe recomiendo encarecidamente que en esta etapa configures la conexi\u00f3n con el servidor a trav\u00e9s de tu consola. Aqu\u00ed est\u00e1 <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\">las instrucciones<\/a><\/noindex> Esto permitir\u00e1 trabajar con el servidor directamente desde la consola de tu computadora.<\/p>\n<p><b>5. C\u00f3mo escribir el c\u00f3digo del primer bot.<\/b><\/p>\n<p>Y ahora una revelaci\u00f3n para m\u00ed. Cualquier programa son simplemente l\u00edneas de texto. Puedes escribirlas en cualquier lugar, guardarlas con la extensi\u00f3n adecuada y ya est\u00e1. Eres incre\u00edble. Us\u00e9 <noindex><a rel=\"nofollow\" href=\"https:\/\/atom.io\/\">Atom<\/a><\/noindex>, pero la verdad es que se puede escribir simplemente en el bloc de notas est\u00e1ndar. Lo \u00fanico importante es guardar el archivo con la extensi\u00f3n correcta. Es como escribir un texto en Word y guardarlo. <\/p>\n<p>Cre\u00e9 un nuevo archivo y pegu\u00e9 el c\u00f3digo del ejemplo de la p\u00e1gina telegraf, guard\u00e1ndolo en un archivo index.js (no es necesario llamarlo as\u00ed, pero es lo habitual). Importante: en lugar de BOT_TOKEN, inserta tu clave API del segundo 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('\u00a1Bienvenido!'))\nbot.help((ctx) =&gt; ctx.reply('Env\u00edame un sticker'))\nbot.on('sticker', (ctx) =&gt; ctx.reply(''))\nbot.hears('hi', (ctx) =&gt; ctx.reply('\u00a1Hola!'))\nbot.launch()<\/code><\/pre>\n<p>\n<b>6. C\u00f3mo subir el c\u00f3digo al servidor a trav\u00e9s de github<\/b><\/p>\n<p>Ahora necesitaba subir este c\u00f3digo al servidor y ejecutarlo. Para m\u00ed se convirti\u00f3 en un desaf\u00edo. Al final, despu\u00e9s de muchas dificultades, entend\u00ed que ser\u00eda m\u00e1s f\u00e1cil crear un archivo en github que permitiera actualizar el c\u00f3digo mediante un comando en la consola. Registr\u00e9 una cuenta en <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/\">github<\/a><\/noindex> y cre\u00e9 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/b0tank\/bot\">un nuevo proyecto<\/a><\/noindex>, donde sub\u00ed el archivo. Despu\u00e9s de eso, necesitaba entender c\u00f3mo configurarlo para cargar archivos desde mi cuenta (\u00a1abierta!) al servidor en la carpeta bot (si por casualidad saliste de ella, simplemente escribe cd bot).<\/p>\n<p><b>7. C\u00f3mo cargar archivos en el servidor a trav\u00e9s de github parte 2<\/b><\/p>\n<p>Necesitaba instalar en el servidor un programa que descargara archivos desde git. Instal\u00e9 git en el servidor, escribiendo en la consola <\/p>\n<pre><code class=\"plaintext\">apt-get install git<\/code><\/pre>\n<p>\nDespu\u00e9s de eso, necesitaba configurar la carga de archivos. Para ello escrib\u00ed en la l\u00ednea de comandos <\/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>Decid\u00ed ignorar este problema.<\/p>\n<p>Y para cargar la biblioteca telegraf, que solicitamos en la primera l\u00ednea del c\u00f3digo, escribe en la consola el comando.<\/p>\n<pre><code class=\"plaintext\">npm install telegraf<\/code><\/pre>\n<p>\n<b>8. C\u00f3mo iniciar el bot<\/b><\/p>\n<p>Para esto, estando en la carpeta con el archivo (para cambiar de carpeta a carpeta a trav\u00e9s de la consola, ejecuta el comando del formato <code>cd bot<\/code> Para asegurarte de que est\u00e1s en el lugar correcto, puedes escribir un comando que muestre en la consola todos los archivos y carpetas que est\u00e1n all\u00ed<code> ls -a<\/code><\/p>\n<p>Para iniciar, escrib\u00ed en la consola <\/p>\n<pre><code class=\"plaintext\">node index.js\n<\/code><\/pre>\n<p>\nSi no hay ning\u00fan error, todo est\u00e1 bien, el bot est\u00e1 funcionando. B\u00fascalo en telegram. Si hay un error, aplica tus conocimientos del punto 1.<\/p>\n<p><b>9. C\u00f3mo ejecutar el bot en segundo plano<\/b><\/p>\n<p>Pronto entender\u00e1s que el bot solo funciona cuando t\u00fa est\u00e1s en la consola. Para resolver este problema us\u00e9 el comando <\/p>\n<pre><code class=\"plaintext\">screen<\/code><\/pre>\n<p>\nDespu\u00e9s de esto, aparecer\u00e1 una pantalla con alg\u00fan texto. Eso significa que todo est\u00e1 bien. Est\u00e1s en un servidor virtual en la nube. Para entender mejor c\u00f3mo funciona todo esto \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/bablofil.ru\/kak-zapustit-bota-na-servere\/\">aqu\u00ed hay un art\u00edculo<\/a><\/noindex>. Simplemente accede a tu carpeta y escribe el comando para iniciar el bot.<\/p>\n<pre><code class=\"plaintext\">node index.js<\/code><\/pre>\n<p>\n<b>10. C\u00f3mo funciona el bot y c\u00f3mo ampliar su funcionalidad<\/b><\/p>\n<p>\u00bfQu\u00e9 puede hacer nuestro bot del ejemplo? Puede <\/p>\n<pre><code class=\"plaintext\">bot.start((ctx) =&gt; ctx.reply('\u00a1Bienvenido!'))<\/code><\/pre>\n<p>\ndecir \"\u00a1Bienvenido!\" al iniciar (intenta cambiar el texto)<\/p>\n<pre><code class=\"plaintext\">bot.help((ctx) =&gt; ctx.reply('Env\u00edame un sticker'))<\/code><\/pre>\n<p>\nen respuesta al comando est\u00e1ndar \/help enviar el mensaje \"Env\u00edame un sticker\"<\/p>\n<pre><code class=\"plaintext\">bot.on('sticker', (ctx) =&gt; ctx.reply(''))<\/code><\/pre>\n<p>\nen respuesta a un sticker enviar una aprobaci\u00f3n<\/p>\n<pre><code class=\"plaintext\">bot.hears('hi', (ctx) =&gt; ctx.reply('\u00a1Hola!'))<\/code><\/pre>\n<p>\nresponder \"Hey there\" si le escriben 'hi'<br \/>\nbot.launch()<\/p>\n<p><img decoding=\"async\" alt=\"Gu\u00eda: c\u00f3mo hacer un bot simple para Telegram en JS para principiantes en programaci\u00f3n\" src=\"\/wp-content\/uploads\/2019\/04\/d2a52f8feb46ff67ee39622c56e8ce8e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSi miras el c\u00f3digo en <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/b0tank\/bot\/blob\/master\/index.js\">github<\/a><\/noindex>, r\u00e1pidamente entender\u00e1s que no me he desviado mucho de esta funcionalidad. Lo que se utiliza activamente es la funci\u00f3n <code>ctx.replyWithPhoto<\/code> Permite enviar una foto o gif espec\u00edfico en respuesta a un texto determinado. <\/p>\n<p>Una parte significativa del c\u00f3digo fue escrita por ni\u00f1os de 11 a 13 a\u00f1os, a quienes les di acceso al bot. Ellos introdujeron sus propias user-case. Creo que es f\u00e1cil determinar qu\u00e9 parte fue hecha por ellos.<\/p>\n<p>Por ejemplo, al mensaje 'jake' se env\u00eda un gif de un famoso personaje de la serie Adventure Time. <\/p>\n<p><img decoding=\"async\" alt=\"Gu\u00eda: c\u00f3mo hacer un bot simple para Telegram en JS para principiantes en programaci\u00f3n\" src=\"\/wp-content\/uploads\/2019\/04\/56bdcb4dde80c032c225726b88417fb4.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPara desarrollar el bot m\u00e1s all\u00e1, necesitas conectar un teclado; puedes ver ejemplos, por ejemplo, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/telegraf\/telegraf\/tree\/develop\/docs\/examples\">desde aqu\u00ed<\/a><\/noindex><\/p>\n<p><b>11. C\u00f3mo actualizar el c\u00f3digo y reiniciar el bot<\/b><\/p>\n<p>No olvides que debes actualizar el c\u00f3digo no solo en github, sino tambi\u00e9n en el servidor. Es simple: det\u00e9n el bot (presiona ctrl+c),<\/p>\n<p> \u2014 introduce en la consola, estando en la carpeta objetivo, <code>git pull<\/code><br \/>\n \u2014 nuevamente inicia el bot con el comando <code>node index.js<\/code><\/p>\n<p><b>FIN<\/b><\/p>\n<p>Muchas de las cosas descritas en este archivo ser\u00e1n s\u00faper obvias para programadores avanzados. Sin embargo, cuando yo mismo intent\u00e9 saltar de un salto al mundo de los bots, me faltaba mucho una gu\u00eda as\u00ed. Una gu\u00eda que no pase por alto cosas obvias y simples para cualquier especialista en IT. <\/p>\n<p>En el futuro, planeo hacer un post sobre c\u00f3mo crear tu primera aplicaci\u00f3n en ReactNative en el mismo estilo, \u00a1suscr\u00edbete!<br \/>\n<br \/>Fuente: <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.2 - 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\/es\/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.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\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\/es\/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\udd47Gu\u00eda: c\u00f3mo hacer un bot simple para Telegram en JS para principiantes en programaci\u00f3n | ProHoster","description":"Comenc\u00e9 a sumergirme en el mundo de IT apenas hace tres semanas. En serio, hace tres semanas ni siquiera comprend\u00eda la sintaxis de HTML y mi experiencia con lenguajes de programaci\u00f3n se limitaba al programa escolar de Pascal de hace diez a\u00f1os.","canonical_url":"https:\/\/prohoster.info\/es\/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":"es_ES","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\/es\/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\/es\/wp-json\/wp\/v2\/posts\/31044","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=31044"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/31044\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/23020"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=31044"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=31044"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=31044"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}