{"id":503,"date":"2025-11-18T11:59:55","date_gmt":"2025-11-18T08:59:55","guid":{"rendered":"https:\/\/kb.astrocroc.com\/?p=503"},"modified":"2025-11-18T14:12:31","modified_gmt":"2025-11-18T11:12:31","slug":"%d1%82%d0%b5%d0%bb%d0%b5%d0%b3%d1%80%d0%b0%d0%bc-%d0%b1%d0%be%d1%82-%d0%bd%d0%b0-nodejs","status":"publish","type":"post","link":"https:\/\/kb.astrocroc.com\/?p=503","title":{"rendered":"\u0422\u0435\u043b\u0435\u0433\u0440\u0430\u043c-\u0431\u043e\u0442 \u043d\u0430 NodeJS"},"content":{"rendered":"\n<pre class=\"wp-block-code\"><code class=\"\" data-line=\"\">node-telegram-bot-api<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u041d\u0430\u0447\u0430\u043b\u043e \u0440\u0430\u0431\u043e\u0442\u044b<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c NodeJS \u043f\u0440\u043e\u0435\u043a\u0442 \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u0442\u0443\u0434\u0430 \u043f\u0430\u043a\u0435\u0442 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c-\u0431\u043e\u0442\u043e\u043c \u0447\u0435\u0440\u0435\u0437 npm:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">npm init<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-bash\" data-line=\"\">npm i node-telegram-bot-api<\/code><\/pre>\n\n\n\n<p>\u0418 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c-\u0431\u043e\u0442\u043e\u043c \u0432 \u043f\u0440\u043e\u0435\u043a\u0442:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">const TelegramBot = require(&#039;node-telegram-bot-api&#039;);<\/code><\/pre>\n\n\n\n<p>\u0414\u0430\u043b\u0435\u0435 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043a\u043b\u0430\u0441\u0441\u0430 TelegramBot. \u0412 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440 \u043d\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0442\u043e\u043a\u0435\u043d \u043d\u0430\u0448\u0435\u0433\u043e \u0431\u043e\u0442\u0430 (\u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0431\u043e\u0442\u0430 \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0442\u043e\u043a\u0435\u043d \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0432 BotFather):<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">const bot = new TelegramBot(process.env.API_KEY_BOT, {\n\n    polling: true\n    \n});<\/code><\/pre>\n\n\n\n<p>\u042f \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u043a\u0438\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445, \u043a\u0430\u043a \u0442\u043e\u043a\u0435\u043d \u0431\u043e\u0442\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e \u043c\u043e\u0434\u0443\u043b\u044c dotenv, \u043e\u0434\u043d\u0430\u043a\u043e, \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0432\u0438\u0434\u0435:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">const API_KEY_BOT = &#039;\u0422\u043e\u043a\u0435\u043d \u043e\u0442 \u0412\u0430\u0448\u0435\u0433\u043e \u0431\u043e\u0442\u0430&#039;;\n\nconst bot = new TelegramBot(API_KEY_BOT, {\n\n    polling: true\n    \n});<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Polling<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0442\u043e\u043a\u0435\u043d\u043e\u043c \u0431\u043e\u0442\u0430 \u044f \u043f\u0435\u0440\u0435\u0434\u0430\u044e \u043e\u0431\u044a\u0435\u043a\u0442, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0432\u043a\u043b\u044e\u0447\u0430\u044e polling &#8212; \u044d\u0442\u043e \u043a\u043b\u0438\u0435\u043d\u0442-\u0441\u0435\u0440\u0432\u0435\u0440\u043d\u0430\u044f \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043d\u0430\u043c \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u0430. \u0415\u0441\u043b\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0447\u0442\u043e-\u0442\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u0431\u043e\u0442\u0443, \u043c\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u043e\u0431 \u044d\u0442\u043e\u043c \u043a\u0430\u043a-\u0442\u043e \u0443\u0437\u043d\u0430\u0442\u044c \u0438 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0441 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u043d\u043e\u0441\u0442\u044c\u044e \u043e\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440 \u043d\u0430 \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u043d\u0430\u043b\u0438\u0447\u0438\u044f \u043d\u043e\u0432\u044b\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0441 \u0431\u043e\u0442\u043e\u043c. Polling \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u0432 \u0435\u043c\u0443 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 true, \u043d\u043e \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043f\u0435\u0440\u0435\u0434\u0430\u0432 \u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442 \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">const API_KEY_BOT = &#039;\u0422\u043e\u043a\u0435\u043d \u043e\u0442 \u0412\u0430\u0448\u0435\u0433\u043e \u0431\u043e\u0442\u0430&#039;;\n\nconst bot = new TelegramBot(API_KEY_BOT, {\n\n  polling: {\n    interval: 300,\n    autoStart: true\n  }\n\n});<\/code><\/pre>\n\n\n\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u043c\u0435\u0436\u0434\u0443 \u0437\u0430\u043f\u0440\u043e\u0441\u0430\u043c\u0438 \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u0432 \u043c\u0438\u043b\u043b\u0438\u0441\u0435\u043a\u0443\u043d\u0434\u0430\u0445. autoStart \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0437\u0430 \u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u0448 \u0431\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0442\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u043d \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u043b \u0437\u0430 \u0442\u043e \u0432\u0440\u0435\u043c\u044f, \u043a\u043e\u0433\u0434\u0430 \u0431\u044b\u043b \u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d. \u041e\u0434\u043d\u0430\u043a\u043e, \u0443 polling \u0435\u0441\u0442\u044c \u0435\u0449\u0451 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 params \u043e\u0431\u044a\u0435\u043a\u0442 \u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438 \u0442\u0430\u043a\u0438\u043c\u0438, \u043a\u0430\u043a timeout.<\/p>\n\n\n\n<p>\u0422\u0430\u043a\u0436\u0435 \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u043d\u0430\u0448 \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c \u0431\u043e\u0442\u0443 &#8212; \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u043e\u0448\u0438\u0431\u043a\u0443 polling&#8217;\u0430, \u0432\u044b\u0432\u0435\u0434\u0435\u043c \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043e\u0448\u0438\u0431\u043a\u0438, \u0435\u0441\u043b\u0438 \u043e\u043d\u0430 \u0432\u043e\u043e\u0431\u0449\u0435 \u0431\u0443\u0434\u0435\u0442:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&quot;polling_error&quot;, err =&gt; console.log(err.data.error.message));<\/code><\/pre>\n\n\n\n<p>\u0421\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u043d\u0430\u0448 \u0431\u043e\u0442 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f\u0445 \u0441 \u043d\u0438\u043c \u043c\u043e\u0436\u0435\u0442 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 polling, \u043d\u043e \u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e webhook.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u0414\u0430\u043b\u0435\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043e\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"\" data-line=\"\">bot.on(&#039;text&#039;, async msg =&gt; {\n\n    console.log(msg);\n\n})<\/code><\/pre>\n\n\n\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043c\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438 \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c \u0442\u0438\u043f\u0430 &#8216;text&#8217;. \u041e\u043d \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043d\u0430\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043e\u0431\u044a\u0435\u043a\u0442:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-json\" data-line=\"\">{\n  message_id: ID_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f,\n  from: {\n    id: ID_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    is_bot: false,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    language_code: &#039;ru&#039;\n  },\n  chat: {\n    id: ID_\u0427\u0410\u0422\u0410,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    type: &#039;private&#039;\n  },\n  date: 1686255759,\n  text: \u0422\u0415\u041a\u0421\u0422_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f,\n}<\/code><\/pre>\n\n\n\n<p>\u0414\u0430\u043d\u043d\u044b\u0439 \u043e\u0431\u044a\u0435\u043a\u0442 \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e msg \u0438 \u0432\u044b\u0432\u043e\u0434\u0438\u043c \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c. \u0420\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043f\u0440\u043e \u0442\u043e, \u043a\u0430\u043a\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u044d\u0442\u043e\u0442 \u043e\u0431\u044a\u0435\u043a\u0442 \u0438 \u043d\u0430 \u0447\u0442\u043e \u0441\u0442\u043e\u0438\u0442 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435. \u0412 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 text \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442\u0441\u044f \u0441\u0430\u043c\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043d\u0430\u043c \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c. message_id \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 id \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f, \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0447\u0435\u043c\u0443 \u043c\u044b \u0441\u043c\u043e\u0436\u0435\u043c \u0434\u0430\u043b\u0435\u0435 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u043a \u044d\u0442\u043e\u043c\u0443 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044e \u0432 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0435 \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044f, \u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u044b from \u0438 chat \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0442\u043e\u043c, \u043a\u0430\u043a\u043e\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u044d\u0442\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0438 \u0432 \u043a\u0430\u043a\u043e\u043c \u0447\u0430\u0442\u0435 &#8212; \u0447\u0430\u0449\u0435 \u0432\u0441\u0435\u0433\u043e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, id \u0447\u0430\u0442\u0430 \u0438 id \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0431\u0443\u0434\u0443\u0442 \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u0442\u044c, \u043e\u0434\u043d\u0430\u043a\u043e, \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043c\u043e\u0433\u0443\u0442 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0431\u043e\u0442\u0430 \u0432 \u0447\u0430\u0442 \u0438 \u043f\u0438\u0441\u0430\u0442\u044c \u0435\u043c\u0443 \u0442\u0443\u0434\u0430 &#8212; \u044d\u0442\u043e \u0442\u043e\u0436\u0435 \u0441\u0442\u043e\u0438\u0442 \u0443\u0447\u0435\u0441\u0442\u044c. \u0422\u0430\u043a\u0436\u0435 \u0431\u044b\u0432\u0430\u044e\u0442 \u0441\u043b\u0443\u0447\u0430\u0438, \u043a\u043e\u0433\u0434\u0430 \u0438\u043c\u044f \u0438 \u043d\u0438\u043a \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043c\u043e\u0433\u0443\u0442 \u0434\u043e \u043d\u0430\u0441 \u043d\u0435 \u0434\u043e\u0439\u0442\u0438 \u0447\u0435\u0440\u0435\u0437 \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0435\u0441\u043b\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0437\u0430\u043a\u0440\u044b\u043b \u044d\u0442\u043e \u0434\u0435\u043b\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0432 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u0435 &#8212; \u044d\u0442\u043e \u0442\u043e\u0436\u0435 \u0441\u0442\u043e\u0438\u0442 \u0443\u0447\u0435\u0441\u0442\u044c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0435\u0441\u043b\u0438 \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u043a\u0430\u043a-\u0442\u043e \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u043a \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043f\u043e \u043d\u0438\u043a\u0443 \u0438\u043b\u0438 \u0438\u043c\u0435\u043d\u0438 \u043e\u0442 \u043b\u0438\u0446\u0430 \u0431\u043e\u0442\u0430.<\/p>\n\n\n\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043c\u044b \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u043c \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e, \u043a\u043e\u0433\u0434\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043f\u0438\u0448\u0435\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0431\u043e\u0442\u0443. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u044d\u0442\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u043c \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u044d\u0445\u043e-\u0431\u043e\u0442\u0430 &#8212; \u043d\u0430\u0448 \u0431\u043e\u0442 \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0442\u044c \u0442\u0435\u043c \u0436\u0435 \u0442\u0435\u043a\u0441\u0442\u043e\u043c, \u0447\u0442\u043e \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u043d\u0430\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u043c\u0435\u0442\u043e\u0434 sendMessage, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0434\u0438\u043c id \u0447\u0430\u0442\u0430, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435, \u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435 \u044d\u0442\u043e\u0433\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;text&#039;, async msg =&gt; {\n\n    await bot.sendMessage(msg.chat.id, msg.text);\n\n})<\/code><\/pre>\n\n\n\n<p>\u0412\u043e\u0442 \u0442\u0430\u043a \u044d\u0442\u043e \u0434\u0435\u043b\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"544\" height=\"285\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/22ec95b20c4603e09c90ea097a6380ab.png\" alt=\"\u042d\u0445\u043e-\u0431\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442\" class=\"wp-image-505\" title=\"\u042d\u0445\u043e-\u0431\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/22ec95b20c4603e09c90ea097a6380ab.png 544w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/22ec95b20c4603e09c90ea097a6380ab-300x157.png 300w\" sizes=\"auto, (max-width: 544px) 100vw, 544px\" \/><figcaption class=\"wp-element-caption\">\u042d\u0445\u043e-\u0431\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442<\/figcaption><\/figure>\n\n\n\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0443\u0441\u043b\u043e\u0436\u043d\u0438\u043c \u043d\u0430\u0448\u0443 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e. \u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u044d\u0442\u043e \u0441\u043c\u044b\u0441\u043b\u0430 \u0438\u043c\u0435\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0435\u0442, \u043d\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u043d\u0430\u043c \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c \u0435\u0449\u0451 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0431\u043e\u0442\u043e\u043c. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0431\u043e\u0442 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435, \u0430 \u0437\u0430\u0442\u0435\u043c \u0447\u0435\u0440\u0435\u0437 5 \u0441\u0435\u043a\u0443\u043d\u0434 \u0431\u043e\u0442 \u0431\u0443\u0434\u0435\u0442 \u0443\u0434\u0430\u043b\u044f\u0442\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043e\u0442\u0432\u0435\u0442\u0430 \u0438 \u0431\u0443\u0434\u0435\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0442\u044c \u043e\u0442\u0432\u0435\u0442, \u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0442\u043e \u0436\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435, \u0447\u0442\u043e \u0438 \u0441\u043a\u0438\u043d\u0443\u043b \u043d\u0430\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;text&#039;, async msg =&gt; {\n\n    const msgWait = await bot.sendMessage(msg.chat.id, `\u0411\u043e\u0442 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043e\u0442\u0432\u0435\u0442...`);\n\n    setTimeout(async () =&gt; {\n\n        await bot.deleteMessage(msgWait.chat.id, msgWait.message_id);\n        await bot.sendMessage(msg.chat.id, msg.text);\n\n    }, 5000);\n\n})<\/code><\/pre>\n\n\n\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435, \u043c\u044b \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0438 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u043e\u0442\u0432\u0435\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043d\u0430 \u0437\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e msgWait. \u041e\u0442\u0432\u0435\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0431\u0443\u0434\u0435\u0442 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u043c \u0442\u043e\u0433\u043e \u0436\u0435 \u0432\u0438\u0434\u0430, \u0447\u0442\u043e \u0438 \u043e\u0431\u044a\u0435\u043a\u0442 msg. \u0414\u0430\u043b\u0435\u0435, \u0447\u0435\u0440\u0435\u0437 \u043f\u044f\u0442\u044c \u0441\u0435\u043a\u0443\u043d\u0434, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u043c\u0435\u0442\u043e\u0434 deleteMessage \u0434\u043b\u044f \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0438 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0441\u0430\u043c \u043e\u0442\u0432\u0435\u0442.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"544\" height=\"102\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/409b08648a57e73c35ae0c229eddac72.png\" alt=\"\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435\u043c \u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043e\u0442\u0432\u0435\u0442\u0430\" class=\"wp-image-506\" title=\"\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435\u043c \u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043e\u0442\u0432\u0435\u0442\u0430\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/409b08648a57e73c35ae0c229eddac72.png 544w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/409b08648a57e73c35ae0c229eddac72-300x56.png 300w\" sizes=\"auto, (max-width: 544px) 100vw, 544px\" \/><figcaption class=\"wp-element-caption\">\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435\u043c \u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043e\u0442\u0432\u0435\u0442\u0430<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"555\" height=\"107\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/dd7b45466cf211f9111ad328c61bdf57.png\" alt=\"\u041f\u0440\u043e\u0448\u043b\u043e 5 \u0441\u0435\u043a\u0443\u043d\u0434 \u0438 \u0431\u043e\u0442 \u0443\u0434\u0430\u043b\u0438\u043b \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438, \u0438 \u043e\u0442\u0432\u0435\u0442\u0438\u043b \u0442\u0435\u043c \u0436\u0435 \u0442\u0435\u043a\u0441\u0442\u043e\u043c\" class=\"wp-image-507\" title=\"\u041f\u0440\u043e\u0448\u043b\u043e 5 \u0441\u0435\u043a\u0443\u043d\u0434 \u0438 \u0431\u043e\u0442 \u0443\u0434\u0430\u043b\u0438\u043b \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438, \u0438 \u043e\u0442\u0432\u0435\u0442\u0438\u043b \u0442\u0435\u043c \u0436\u0435 \u0442\u0435\u043a\u0441\u0442\u043e\u043c\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/dd7b45466cf211f9111ad328c61bdf57.png 555w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/dd7b45466cf211f9111ad328c61bdf57-300x58.png 300w\" sizes=\"auto, (max-width: 555px) 100vw, 555px\" \/><figcaption class=\"wp-element-caption\">\u041f\u0440\u043e\u0448\u043b\u043e 5 \u0441\u0435\u043a\u0443\u043d\u0434 \u0438 \u0431\u043e\u0442 \u0443\u0434\u0430\u043b\u0438\u043b \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438, \u0438 \u043e\u0442\u0432\u0435\u0442\u0438\u043b \u0442\u0435\u043c \u0436\u0435 \u0442\u0435\u043a\u0441\u0442\u043e\u043c<\/figcaption><\/figure>\n\n\n\n<p>\u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u044d\u0442\u043e \u0434\u0435\u043b\u043e. \u0412\u043c\u0435\u0441\u0442\u043e \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u043d\u043e\u0432\u043e\u0433\u043e \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0443 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438, \u0430 \u0437\u0430\u0442\u0435\u043c \u0447\u0435\u0440\u0435\u0437 5 \u0441\u0435\u043a\u0443\u043d\u0434 \u043e\u0442\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u0443\u0435\u043c \u044d\u0442\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043d\u0430 \u043d\u0430\u0448 \u043e\u0442\u0432\u0435\u0442:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;text&#039;, async msg =&gt; {\n\n    const msgWait = await bot.sendMessage(msg.chat.id, `\u0411\u043e\u0442 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043e\u0442\u0432\u0435\u0442...`);\n\n    setTimeout(async () =&gt; {\n\n        await bot.editMessageText(msg.text, {\n\n            chat_id: msgWait.chat.id,\n            message_id: msgWait.message_id\n\n        });\n\n    }, 5000);\n\n})<\/code><\/pre>\n\n\n\n<p>\u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u043c\u0435\u0442\u043e\u0434 editMessageText, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u043c \u0441\u0442\u0440\u043e\u043a\u0443 \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0438\u0437\u043c\u0435\u043d\u0438\u043c \u043d\u0430\u0448\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043e\u0431\u044a\u0435\u043a\u0442 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u043e \u0442\u043e\u043c, \u0432 \u043a\u0430\u043a\u043e\u043c \u0447\u0430\u0442\u0435 \u0438 \u043a\u0430\u043a\u043e\u0435 \u0438\u043c\u0435\u043d\u043d\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043d\u0430\u0434\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c.<\/p>\n\n\n\n<p>\u0422\u0430\u043a\u0436\u0435 \u0445\u043e\u0447\u0443 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c \u0412\u0430\u0448\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u043f\u043e-\u0445\u043e\u0440\u043e\u0448\u0435\u043c\u0443 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u0441\u0435 \u043d\u0430\u0448\u0438 \u043c\u0435\u0442\u043e\u0434\u044b \u043e\u0431\u0435\u0440\u043d\u0443\u0442\u044c \u0432 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e try\/catch, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u0435\u043d \u0432\u0430\u0440\u0438\u0430\u043d\u0442, \u043f\u0440\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043d\u0430\u0448 \u043a\u043e\u0434 \u043e\u0442\u043b\u0438\u0447\u043d\u043e \u043e\u0442\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442, \u0432\u0441\u0451 \u0445\u043e\u0440\u043e\u0448\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e, \u043e\u0434\u043d\u0430\u043a\u043e, \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043b \u0431\u043e\u0442\u0430, \u0438 \u0435\u0441\u043b\u0438 \u0431\u043e\u0442 \u043f\u043e\u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0435\u043c\u0443 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435, \u0442\u043e \u0441\u0435\u0440\u0432\u0435\u0440 \u043d\u0430\u043c \u0432\u0435\u0440\u043d\u0451\u0442 \u043e\u0448\u0438\u0431\u043a\u0443 \u0438 \u0432\u0435\u0441\u044c \u0431\u043e\u0442 \u043c\u043e\u0436\u0435\u0442 \u043a\u0440\u0430\u0448\u043d\u0443\u0442\u044c\u0441\u044f.<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;text&#039;, async msg =&gt; {\n\n    try {\n\n        await bot.sendMessage(msg.chat.id, msg.text);\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u043a \u0431\u043e\u0442\u0430<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u0414\u0430\u043b\u0435\u0435 \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043f\u0440\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0431\u043e\u0442\u0430. \u041a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437, \u043a\u043e\u0433\u0434\u0430 \u043d\u043e\u0432\u044b\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0437\u0430\u0445\u043e\u0434\u0438\u0442 \u0432 \u0431\u043e\u0442\u0430 \u043f\u0435\u0440\u0435\u0434 \u043d\u0438\u043c \u043f\u043e\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u043d\u043e\u043f\u043a\u0430 &#171;\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c&#187;, \u0432\u043e\u0442 \u0442\u0430\u043a \u044d\u0442\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"574\" height=\"123\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/655e11673a8737975924d8e6bb691c4c.png\" alt=\"\u041a\u043d\u043e\u043f\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0431\u043e\u0442\u0430\" class=\"wp-image-509\" title=\"\u041a\u043d\u043e\u043f\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0431\u043e\u0442\u0430\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/655e11673a8737975924d8e6bb691c4c.png 574w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/655e11673a8737975924d8e6bb691c4c-300x64.png 300w\" sizes=\"auto, (max-width: 574px) 100vw, 574px\" \/><figcaption class=\"wp-element-caption\">\u041a\u043d\u043e\u043f\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0431\u043e\u0442\u0430<\/figcaption><\/figure>\n\n\n\n<p>\u041d\u0430\u0436\u0430\u0432 \u044d\u0442\u0443 \u043a\u043d\u043e\u043f\u043a\u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442 \u0431\u043e\u0442\u0443 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443 &#171;\/start&#187;. \u0421\u0440\u0430\u0437\u0443 \u0432\u0441\u0442\u0430\u0451\u0442 \u0432\u043e\u043f\u0440\u043e\u0441 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u044d\u0442\u043e \u0434\u0435\u043b\u043e, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435 \u0432 \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445. \u041a\u043e\u043d\u0435\u0447\u043d\u043e, \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0431\u0430\u043d\u0430\u043b\u044c\u043d\u044b\u043c \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c \u0438 \u0432 \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u0435 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c, \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043b\u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 &#171;\/start&#187;. \u0412\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0442\u0430\u043a:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;text&#039;, async msg =&gt; {\n\n    try {\n\n        if(msg.text == &#039;\/start&#039;) {\n\n            await bot.sendMessage(msg.chat.id, `\u0412\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u0431\u043e\u0442\u0430!`);\n\n        }\n        else {\n\n            await bot.sendMessage(msg.chat.id, msg.text);\n\n        }\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<p>\u041e\u0434\u043d\u0430\u043a\u043e, \u0443 \u044d\u0442\u043e\u0433\u043e \u0441\u043f\u043e\u0441\u043e\u0431\u0430 \u0435\u0441\u0442\u044c \u043e\u0434\u0438\u043d \u043c\u0438\u043d\u0443\u0441, \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043b\u0438\u0447\u043d\u043e \u044f \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f. \u0412 \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u0437\u0430\u043f\u0443\u0441\u043a \u0431\u043e\u0442\u0430 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0438 \u043f\u043e\u0442\u043e\u043c \u0447\u0438\u0442\u0430\u0442\u044c \u0438\u0445. \u042d\u0442\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u043e, \u0435\u0441\u043b\u0438 \u043c\u044b, \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c, \u0437\u0430\u0445\u043e\u0442\u0438\u043c \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0440\u0435\u0444\u0435\u0440\u0430\u043b\u044c\u043d\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u044f \u043f\u043e\u043a\u0430\u0436\u0443, \u043a\u0430\u043a \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c, \u0438 \u0432 \u0447\u0435\u043c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0435\u0449\u0451 \u043e\u0434\u043d\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b, \u043d\u0430\u0437\u043e\u0432\u0451\u043c \u0435\u0451 &#171;\/ref&#187; \u0438 \u0431\u0443\u0434\u0435\u043c \u043f\u043e \u044d\u0442\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u043e\u0442\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u0443\u044e \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u0437\u0430\u043f\u0443\u0441\u043a \u0431\u043e\u0442\u0430:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;text&#039;, async msg =&gt; {\n\n    try {\n\n        if(msg.text == &#039;\/start&#039;) {\n            \n            await bot.sendMessage(msg.chat.id, `\u0412\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u0431\u043e\u0442\u0430!`);\n\n        }\n        else if(msg.text == &#039;\/ref&#039;) {\n\n            await bot.sendMessage(msg.chat.id, `${process.env.URL_TO_BOT}?start=${msg.from.id}`);\n\n        }\n        else {\n\n            await bot.sendMessage(msg.chat.id, msg.text);\n\n        }\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<p>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0434\u043b\u044f \u0442\u043e\u0433\u043e \u0447\u0442\u043e\u0431\u044b \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u0431\u043e\u0442\u0430, \u044f \u043f\u0435\u0440\u0435\u0434\u0430\u044e \u0432 \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u0437\u0430\u043f\u0443\u0441\u043a \u0431\u043e\u0442\u0430 get-\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0441 id \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u043b\u0443\u0447\u0438\u043b \u044d\u0442\u0443 \u0441\u0441\u044b\u043b\u043a\u0443.<\/p>\n\n\n\n<p>\u0422\u0435\u043f\u0435\u0440\u044c, \u043a\u043e\u0433\u0434\u0430 \u0435\u0441\u043b\u0438 \u043c\u044b \u043f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435, \u0443 \u043d\u0430\u0441 \u0431\u0443\u0434\u0435\u0442 \u0442\u0430 \u0436\u0435 \u0441\u0430\u043c\u0430\u044f \u043a\u043d\u043e\u043f\u043a\u0430 &#171;\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c&#187;, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442 &#171;\/start&#187; \u0431\u043e\u0442\u0443. \u041e\u0434\u043d\u0430\u043a\u043e, \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0432\u0438\u0434\u0438\u0442, \u0447\u0442\u043e \u043e\u043d \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u043b \u043a\u043e\u043c\u0430\u043d\u0434\u0443 &#171;\/start&#187;, \u043d\u043e \u043d\u0430\u043c \u0432 \u0431\u043e\u0442\u0435 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u0443\u0436\u0435 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0434\u0440\u0443\u0433\u043e\u0439 \u043e\u0431\u044a\u0435\u043a\u0442, \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u0442\u0430\u043a:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-json\" data-line=\"\">{\n  message_id: ID_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f,\n  from: {\n    id: ID_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    is_bot: false,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    language_code: &#039;ru&#039;\n  },\n  chat: {\n    id: ID_\u0427\u0410\u0422\u0410,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    type: &#039;private&#039;\n  },\n  date: \u0414\u0410\u0422\u0410,\n  text: &#039;\/start ID_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f_\u0418\u0417_\u0420\u0415\u0424\u0415\u0420\u0410\u041b\u042c\u041d\u041e\u0419_\u0421\u0421\u042b\u041b\u041a\u0418&#039;,\n  entities: [ { offset: 0, length: 6, type: &#039;bot_command&#039; } ]\n}<\/code><\/pre>\n\n\n\n<p>\u0412 \u0442\u0435\u043a\u0441\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043d\u0430\u043c \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u0443\u0436\u0435 \u043d\u0435 \u043f\u0440\u043e\u0441\u0442\u043e &#171;\/start&#187;, \u0430 \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u043d\u0438\u043c \u0442\u043e, \u0447\u0442\u043e \u043c\u044b \u043f\u0435\u0440\u0435\u0434\u0430\u043b\u0438 \u0432 get-\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0432 \u0441\u0441\u044b\u043b\u043a\u0435 \u043d\u0430 \u0437\u0430\u043f\u0443\u0441\u043a. \u0421\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u043d\u0430\u043c \u043d\u0430\u0434\u043e \u043a\u043e\u0435-\u0447\u0442\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0432 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b &#171;\/start&#187;.<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;text&#039;, async msg =&gt; {\n\n    try {\n\n        if(msg.text.startsWith(&#039;\/start&#039;)) {\n            \n            await bot.sendMessage(msg.chat.id, `\u0412\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u0431\u043e\u0442\u0430!`);\n\n            if(msg.text.length &gt; 6) {\n\n                const refID = msg.text.slice(7);\n\n                await bot.sendMessage(msg.chat.id, `\u0412\u044b \u0437\u0430\u0448\u043b\u0438 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0441 ID ${refID}`);\n\n            }\n\n        }\n        else if(msg.text == &#039;\/ref&#039;) {\n\n            await bot.sendMessage(msg.chat.id, `${process.env.URL_TO_BOT}?start=${msg.from.id}`);\n\n        }\n        else {\n\n            await bot.sendMessage(msg.chat.id, msg.text);\n\n        }\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<p>\u041a\u0430\u043a \u0432\u0438\u0434\u0438\u0442\u0435, \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043c\u044b \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0441 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0430 \u0442\u0435\u043a\u0441\u0442\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0435 &#171;\/start&#187;, \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043b\u0438 \u0442\u0435\u043a\u0441\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u044b &#171;\/start&#187;. \u0417\u0430\u0442\u0435\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u0435\u0441\u0442\u044c \u043b\u0438 \u0435\u0449\u0451 \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430, \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u044f \u0434\u043b\u0438\u043d\u0443 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f (6 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044d\u0442\u043e \u0434\u043b\u0438\u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0438 &#171;\/start&#187;), \u0430 \u0437\u0430\u0442\u0435\u043c \u0432\u044b\u0440\u0435\u0437\u0430\u0435\u043c \u0438\u0437 \u0442\u0435\u043a\u0441\u0442\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0443 &#171;\/start&#187; \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u043f\u0440\u043e\u0431\u0435\u043b\u043e\u043c \u043f\u043e\u0441\u043b\u0435 \u043d\u0435\u0451 \u043c\u0435\u0442\u043e\u0434\u043e\u043c slice \u0438 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u0442\u043e, \u0447\u0442\u043e \u043c\u044b \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u043c \u0432 \u0441\u0441\u044b\u043b\u043a\u0435 \u043d\u0430 \u0437\u0430\u043f\u0443\u0441\u043a \u0431\u043e\u0442\u0430 \u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e.<\/p>\n\n\n\n<p>\u0421\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0438 \u0434\u0440\u0443\u0433\u0438\u043c \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c onText \u0438 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.onText(\/\\\/start\/, async msg =&gt; {\n\n    try {\n\n        await bot.sendMessage(msg.chat.id, `\u0412\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u0431\u043e\u0442\u0430!`);\n\n        if(msg.text.length &gt; 6) {\n\n            const refID = msg.text.slice(7);\n\n            await bot.sendMessage(msg.chat.id, `\u0412\u044b \u0437\u0430\u0448\u043b\u0438 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0441 ID ${refID}`);\n\n        }\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<p>\u0421\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435. \u041e\u0434\u043d\u0430\u043a\u043e, \u0435\u0441\u043b\u0438 \u0412\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431, \u0443\u0447\u0442\u0438\u0442\u0435, \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442 \u0431\u043e\u0442\u0430, \u0442\u043e \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0438 \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c onText \u0441 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u043c \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c, \u0438 \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c on \u0441 \u0442\u0438\u043f\u043e\u043c &#8216;text&#8217;.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u041c\u0435\u043d\u044e \u043a\u043e\u043c\u0430\u043d\u0434 \u0434\u043b\u044f \u0431\u043e\u0442\u0430<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u041f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043c\u0435\u043d\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u0434\u043b\u044f \u0431\u043e\u0442\u0430. \u0412\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043c\u0435\u043d\u044e \u043a\u043e\u043c\u0430\u043d\u0434 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"566\" height=\"197\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/6d8b9354b910596da9a710c1e4f1a4c0.png\" alt=\"\u041c\u0435\u043d\u044e \u043a\u043e\u043c\u0430\u043d\u0434 \u0431\u043e\u0442\u0430\" class=\"wp-image-510\" title=\"\u041c\u0435\u043d\u044e \u043a\u043e\u043c\u0430\u043d\u0434 \u0431\u043e\u0442\u0430\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/6d8b9354b910596da9a710c1e4f1a4c0.png 566w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/6d8b9354b910596da9a710c1e4f1a4c0-300x104.png 300w\" sizes=\"auto, (max-width: 566px) 100vw, 566px\" \/><figcaption class=\"wp-element-caption\">\u041c\u0435\u043d\u044e \u043a\u043e\u043c\u0430\u043d\u0434 \u0431\u043e\u0442\u0430<\/figcaption><\/figure>\n\n\n\n<p>\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u044d\u0442\u043e \u043c\u0435\u043d\u044e \u043c\u043e\u0436\u043d\u043e \u0432 BotFather \u0438\u043b\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u0435\u0442\u043e\u0434\u0430 setMyCommands. \u0412\u0442\u043e\u0440\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043c\u043d\u0435 \u043a\u0430\u0436\u0435\u0442\u0441\u044f \u0443\u0434\u043e\u0431\u043d\u0435\u0435 \u0438 \u0431\u044b\u0441\u0442\u0440\u0435\u0435. \u0412 \u044d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0443\u043a\u0430\u0437\u0430\u043d\u044b \u0441\u0430\u043c\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0438 \u0438\u0445 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0432 \u043c\u0435\u043d\u044e.<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">const commands = [\n\n    {\n\n        command: &quot;start&quot;,\n        description: &quot;\u0417\u0430\u043f\u0443\u0441\u043a \u0431\u043e\u0442\u0430&quot;\n\n    },\n    {\n\n        command: &quot;ref&quot;,\n        description: &quot;\u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0440\u0435\u0444\u0435\u0440\u0430\u043b\u044c\u043d\u0443\u044e \u0441\u0441\u044b\u043b\u043a\u0443&quot;\n\n    },\n    {\n\n        command: &quot;help&quot;,\n        description: &quot;\u0420\u0430\u0437\u0434\u0435\u043b \u043f\u043e\u043c\u043e\u0449\u0438&quot;\n\n    },\n\n]\n\nbot.setMyCommands(commands);<\/code><\/pre>\n\n\n\n<p>\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043c\u044b \u0437\u0430\u0434\u0430\u0451\u043c \u043c\u0430\u0441\u0441\u0438\u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u0441 \u043d\u0430\u0448\u0438\u043c\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u043c\u0438, \u0430 \u0437\u0430\u0442\u0435\u043c \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u043c \u0435\u0433\u043e \u0432 \u043c\u0435\u0442\u043e\u0434 setMyCommands. \u042f \u0441\u043e\u0437\u0434\u0430\u043b \u043a\u043e\u043c\u0430\u043d\u0434\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u044b \u0443\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u0434\u043e \u044d\u0442\u043e\u0433\u043e, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0441\u043e\u0437\u0434\u0430\u043b \u043d\u043e\u0432\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443 help, \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u0435\u0451 \u0432 \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u0435:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;text&#039;, async msg =&gt; {\n\n    try {\n\n        if(msg.text.startsWith(&#039;\/start&#039;)) {\n            \n            await bot.sendMessage(msg.chat.id, `\u0412\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u0431\u043e\u0442\u0430!`);\n\n            if(msg.text.length &gt; 6) {\n\n                const refID = msg.text.slice(7);\n\n                await bot.sendMessage(msg.chat.id, `\u0412\u044b \u0437\u0430\u0448\u043b\u0438 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0441 ID ${refID}`);\n\n            }\n\n        }\n        else if(msg.text == &#039;\/ref&#039;) {\n\n            await bot.sendMessage(msg.chat.id, `${process.env.URL_TO_BOT}?start=${msg.from.id}`);\n\n        }\n        else if(msg.text == &#039;\/help&#039;) {\n\n            await bot.sendMessage(msg.chat.id, `\u0420\u0430\u0437\u0434\u0435\u043b \u043f\u043e\u043c\u043e\u0449\u0438`);\n\n        }\n        else {\n\n            await bot.sendMessage(msg.chat.id, msg.text);\n\n        }\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u0424\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0442\u0435\u043a\u0441\u0442\u0430<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u0414\u0430\u043b\u0435\u0435 \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c\u0441\u044f \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0442\u0435\u043a\u0441\u0442\u0430 \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0445. \u0420\u0430\u0437\u0431\u0435\u0440\u0435\u043c \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u044b &#171;\/help&#187;. \u0414\u043b\u044f \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0441\u0442\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u0438, \u0442\u0435\u043a\u0441\u0442\u0430 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043b\u0438\u0431\u043e HTML-\u0432\u0435\u0440\u0441\u0442\u043a\u0443, \u043b\u0438\u0431\u043e Markdown-\u0432\u0435\u0440\u0441\u0442\u043a\u0443. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u0432 \u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0441\u0442 \u0441 \u0442\u0435\u0433\u0430\u043c\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043e\u0431\u044a\u0435\u043a\u0442 \u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u043c parse_mode \u0432 \u043c\u0435\u0442\u043e\u0434 sendMessage. \u0412\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\/help&#039;) {\n\n    await bot.sendMessage(msg.chat.id, `\u0420\u0430\u0437\u0434\u0435\u043b \u043f\u043e\u043c\u043e\u0449\u0438 HTML\\n\\n&lt;b&gt;\u0416\u0438\u0440\u043d\u044b\u0439 \u0422\u0435\u043a\u0441\u0442&lt;\/b&gt;\\n&lt;i&gt;\u0422\u0435\u043a\u0441\u0442 \u041a\u0443\u0440\u0441\u0438\u0432\u043e\u043c&lt;\/i&gt;\\n&lt;code&gt;\u0422\u0435\u043a\u0441\u0442 \u0441 \u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c&lt;\/code&gt;\\n&lt;s&gt;\u041f\u0435\u0440\u0435\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442&lt;\/s&gt;\\n&lt;u&gt;\u041f\u043e\u0434\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442&lt;\/u&gt;\\n&lt;pre language=&#039;c++&#039;&gt;\u043a\u043e\u0434 \u043d\u0430 c++&lt;\/pre&gt;\\n&lt;a href=&#039;t.me&#039;&gt;\u0413\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0430&lt;\/a&gt;`, {\n\n        parse_mode: &quot;HTML&quot;\n\n    });\n\n    await bot.sendMessage(msg.chat.id, &#039;\u0420\u0430\u0437\u0434\u0435\u043b \u043f\u043e\u043c\u043e\u0449\u0438 Markdown\\n\\n*\u0416\u0438\u0440\u043d\u044b\u0439 \u0422\u0435\u043a\u0441\u0442*\\n_\u0422\u0435\u043a\u0441\u0442 \u041a\u0443\u0440\u0441\u0438\u0432\u043e\u043c_\\n`\u0422\u0435\u043a\u0441\u0442 \u0441 \u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c`\\n~\u041f\u0435\u0440\u0435\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442~\\n``` \u043a\u043e\u0434 ```\\n||\u0441\u043a\u0440\u044b\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442||\\n[\u0413\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0430](t.me)&#039;, {\n\n        parse_mode: &quot;MarkdownV2&quot;\n\n    });\n\n}<\/code><\/pre>\n\n\n\n<p>\u0422\u043e\u0433\u0434\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 &#171;help&#187; \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u044c \u043d\u0430\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"552\" height=\"501\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/7601278069aee6a1b701f9fe822a2fb9.png\" alt=\"\u0421\u0442\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0442\u0435\u043a\u0441\u0442\u0430\" class=\"wp-image-508\" title=\"\u0421\u0442\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0442\u0435\u043a\u0441\u0442\u0430\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/7601278069aee6a1b701f9fe822a2fb9.png 552w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/7601278069aee6a1b701f9fe822a2fb9-300x272.png 300w\" sizes=\"auto, (max-width: 552px) 100vw, 552px\" \/><figcaption class=\"wp-element-caption\">\u0421\u0442\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0442\u0435\u043a\u0441\u0442\u0430<\/figcaption><\/figure>\n\n\n\n<p>\u0412\u043e\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u0442\u0435\u0433\u043e\u0432 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u0442\u0438\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u0435\u043a\u0441\u0442 \u0432 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c-\u0431\u043e\u0442\u0430\u0445:<\/p>\n\n\n\n<p><strong>HTML:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>&lt;b&gt; \u0422\u0435\u043a\u0441\u0442 &lt;\/b&gt; &#8212; \u0416\u0438\u0440\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442<\/li>\n\n\n\n<li>&lt;i&gt; \u0422\u0435\u043a\u0441\u0442 &lt;\/i&gt; &#8212; \u0422\u0435\u043a\u0441\u0442 \u043a\u0443\u0440\u0441\u0438\u0432\u043e\u043c<\/li>\n\n\n\n<li>&lt;code&gt; \u0422\u0435\u043a\u0441\u0442 &lt;\/code&gt; &#8212; \u0422\u0435\u043a\u0441\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u0436\u0430\u0442\u0438\u0435\u043c \u043d\u0430 \u043d\u0435\u0433\u043e<\/li>\n\n\n\n<li>&lt;s&gt; \u0422\u0435\u043a\u0441\u0442 &lt;\/s&gt; &#8212; \u041f\u0435\u0440\u0435\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442<\/li>\n\n\n\n<li>&lt;u&gt; \u0422\u0435\u043a\u0441\u0442 &lt;\/u&gt; &#8212; \u041f\u043e\u0434\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442<\/li>\n\n\n\n<li>&lt;pre language=&#8217;\u044f\u0437\u044b\u043a&#8217;&gt; \u0422\u0435\u043a\u0441\u0442 &lt;\/pre&gt; &#8212; \u0422\u0435\u043a\u0441\u0442 \u0441 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435\u043c \u043a\u043e\u0434\u0430<\/li>\n\n\n\n<li>&lt;a href=&#8217;\u0441\u0441\u044b\u043b\u043a\u0430&#8217;&gt; \u0422\u0435\u043a\u0441\u0442 &lt;\/a&gt; &#8212; \u0422\u0435\u043a\u0441\u0442-\u0433\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0430<\/li>\n<\/ul>\n\n\n\n<p><strong>Markdown:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><em>*<\/em>\u0422\u0435\u043a\u0441\u0442<em>*<\/em> &#8212; \u0416\u0438\u0440\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442<\/li>\n\n\n\n<li>_\u0422\u0435\u043a\u0441\u0442_ &#8212; \u0422\u0435\u043a\u0441\u0442 \u043a\u0443\u0440\u0441\u0438\u0432\u043e\u043c<\/li>\n\n\n\n<li>`\u0422\u0435\u043a\u0441\u0442` &#8212; \u0422\u0435\u043a\u0441\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u0436\u0430\u0442\u0438\u0435\u043c \u043d\u0430 \u043d\u0435\u0433\u043e<\/li>\n\n\n\n<li>~\u0422\u0435\u043a\u0441\u0442~ &#8212; \u041f\u0435\u0440\u0435\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442<\/li>\n\n\n\n<li>&#171;` \u0422\u0435\u043a\u0441\u0442 &#171;` &#8212; \u0422\u0435\u043a\u0441\u0442 \u0441 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435\u043c \u043a\u043e\u0434\u0430<\/li>\n\n\n\n<li>|| \u0422\u0435\u043a\u0441\u0442 || &#8212; \u0421\u043a\u0440\u044b\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442<\/li>\n\n\n\n<li>[\u0422\u0435\u043a\u0441\u0442](\u0421\u0441\u044b\u043b\u043a\u0430) &#8212; \u0422\u0435\u043a\u0441\u0442-\u0433\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0430<\/li>\n<\/ul>\n\n\n\n<p>\u0421\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0432\u0441\u0435 \u0442\u0435\u0433\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0437\u0430\u043a\u0440\u044b\u0442\u044b, \u0438\u043d\u0430\u0447\u0435 \u0431\u043e\u0442 \u043d\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0438 \u0432\u0435\u0440\u043d\u0451\u0442 \u043e\u0448\u0438\u0431\u043a\u0443. \u0412 \u044d\u0442\u043e\u043c \u043f\u043b\u0430\u043d\u0435, \u044f \u0441\u043e\u0432\u0435\u0442\u0443\u044e \u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0442\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0438\u043c\u0435\u043d\u043d\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e HTML-\u0442\u0435\u0433\u043e\u0432, \u0442\u0430\u043a \u043a\u0430\u043a \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u0435\u0441\u043b\u0438 \u0432\u044b \u0434\u0435\u043b\u0430\u0435\u0442\u0435 \u0430\u0434\u043c\u0438\u043d\u043a\u0443 \u0438\u043b\u0438 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0441\u043e \u0441\u0442\u0438\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u0442\u0435\u043a\u0441\u0442\u043e\u043c. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0435\u0441\u043b\u0438 \u0437\u0430\u043a\u0438\u043d\u0443\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0443 \u043e\u0431\u044b\u0447\u043d\u044b\u043c \u0442\u0435\u043a\u0441\u0442\u043e\u043c, \u0430 \u043d\u0435 \u0433\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u043e\u0439 \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435, \u0443 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e parse_mode \u0441\u0442\u043e\u0438\u0442 \u043d\u0430 Markdown, \u0442\u043e \u0432\u0441\u0435 \u043d\u0438\u0436\u043d\u0438\u0435 \u043f\u043e\u0434\u0447\u0435\u0440\u043a\u0438\u0432\u0430\u043d\u0438\u044f \u0431\u0443\u0434\u0443\u0442 \u0438\u043c\u0435\u043d\u043d\u043e \u0442\u0435\u0433\u0430\u043c\u0438, \u043d\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0437\u044f\u0442\u0441\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e, \u0438 \u0435\u0441\u043b\u0438 \u0438\u0445 \u043d\u0435\u0447\u0435\u0442\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e, \u0442\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0432\u043e\u043e\u0431\u0449\u0435 \u043d\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u0441\u044f. \u0422\u0430\u043a\u0436\u0435 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 &#171;\\n&#187; \u0438 \u0432 \u0441\u0442\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u0438 HTML, \u0438 \u0432 \u0441\u0442\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u0438 Markdown, \u0437\u0434\u0435\u0441\u044c \u043d\u0435\u043b\u044c\u0437\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u0435\u0433 &lt;br&gt; \u0438\u0437 HTML.<\/p>\n\n\n\n<p>\u0422\u0430\u043a\u0436\u0435 \u0435\u0441\u043b\u0438 \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u044d\u043c\u043e\u0434\u0437\u0438 \u0432 \u043d\u0430\u0448\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u044d\u043c\u043e\u0434\u0437\u0438 \u0438\u0437 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u043c\u0430 \u0438 \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432 \u043d\u0430\u0448\u0443 \u0441\u0442\u0440\u043e\u043a\u0443 \u0432 \u043a\u043e\u0434\u0435, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">await bot.sendMessage(msg.chat.id, `\u0412\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u0431\u043e\u0442\u0430! \ud83d\udc4b\ud83c\udffb`);<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"561\" height=\"107\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/9a453e199a9e559c6d5d663d17e21f16.png\" alt=\"\u042d\u043c\u043e\u0434\u0437\u0438 \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438\" class=\"wp-image-511\" title=\"\u042d\u043c\u043e\u0434\u0437\u0438 \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/9a453e199a9e559c6d5d663d17e21f16.png 561w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/9a453e199a9e559c6d5d663d17e21f16-300x57.png 300w\" sizes=\"auto, (max-width: 561px) 100vw, 561px\" \/><figcaption class=\"wp-element-caption\">\u042d\u043c\u043e\u0434\u0437\u0438 \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438<\/figcaption><\/figure>\n\n\n\n<p>\u0422\u0430\u043a\u0436\u0435 \u0435\u0449\u0451 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043f\u0440\u043e \u0441\u0441\u044b\u043b\u043a\u0438. \u0415\u0441\u043b\u0438 \u043c\u044b \u0443\u043a\u0430\u0436\u0435\u043c \u0441\u0441\u044b\u043b\u043a\u0443 \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438, \u0442\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043f\u0440\u0438\u0434\u0451\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0441 \u043f\u0440\u0435\u0432\u044c\u044e \u0441\u0441\u044b\u043b\u043a\u0438. \u0414\u043e\u0431\u0430\u0432\u043b\u044e \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043a\u043e\u043c\u0430\u043d\u0434\u0443 &#171;\/link&#187; \u0438 \u0435\u0451 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a. \u0412\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u044d\u0442\u043e \u0442\u0430\u043a:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"\" data-line=\"\">else if(msg.text == &#039;\/link&#039;) {\n\n    await bot.sendMessage(msg.chat.id, `https:\/\/habr.com\/`);\n\n}<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"555\" height=\"437\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/92320812b0000aa97de6b08a02c24fec.png\" alt=\"\u041f\u0440\u0435\u0432\u044c\u044e \u0441\u0441\u044b\u043b\u043a\u0438 \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438\" class=\"wp-image-512\" title=\"\u041f\u0440\u0435\u0432\u044c\u044e \u0441\u0441\u044b\u043b\u043a\u0438 \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/92320812b0000aa97de6b08a02c24fec.png 555w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/92320812b0000aa97de6b08a02c24fec-300x236.png 300w\" sizes=\"auto, (max-width: 555px) 100vw, 555px\" \/><figcaption class=\"wp-element-caption\">\u041f\u0440\u0435\u0432\u044c\u044e \u0441\u0441\u044b\u043b\u043a\u0438 \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438<\/figcaption><\/figure>\n\n\n\n<p>\u0415\u0441\u043b\u0438 \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0443\u0431\u0440\u0430\u0442\u044c \u043f\u0440\u0435\u0432\u044c\u044e \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438, \u0442\u043e \u043d\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0432 \u043c\u0435\u0442\u043e\u0434 sendMessage \u043e\u0431\u044a\u0435\u043a\u0442 \u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u043c disable_web_page_preview \u0441\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c true:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"\" data-line=\"\">else if(msg.text == &#039;\/link&#039;) {\n\n    await bot.sendMessage(msg.chat.id, `https:\/\/habr.com\/`, {\n\n        disable_web_page_preview: true,\n\n    });\n\n}<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"558\" height=\"103\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/e8b3ad16987586d9367257d1f9f1dff1.png\" alt=\"\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0431\u0435\u0437 \u043f\u0440\u0435\u0432\u044c\u044e\" class=\"wp-image-513\" title=\"\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0431\u0435\u0437 \u043f\u0440\u0435\u0432\u044c\u044e\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/e8b3ad16987586d9367257d1f9f1dff1.png 558w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/e8b3ad16987586d9367257d1f9f1dff1-300x55.png 300w\" sizes=\"auto, (max-width: 558px) 100vw, 558px\" \/><figcaption class=\"wp-element-caption\">\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0431\u0435\u0437 \u043f\u0440\u0435\u0432\u044c\u044e<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"261\" height=\"119\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/5eec67ef2c0c1d84a45dba6fcc2e2831.png\" alt=\"\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0431\u0435\u0437 \u0437\u0432\u0443\u043a\u0430\" class=\"wp-image-514\" title=\"\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0431\u0435\u0437 \u0437\u0432\u0443\u043a\u0430\"\/><figcaption class=\"wp-element-caption\">\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0431\u0435\u0437 \u0437\u0432\u0443\u043a\u0430<\/figcaption><\/figure>\n\n\n\n<p>\u041a\u0441\u0442\u0430\u0442\u0438, \u0432 \u044d\u0442\u043e\u0442 \u0436\u0435 \u043e\u0431\u044a\u0435\u043a\u0442, \u043f\u043e\u043c\u0438\u043c\u043e parse_mode \u0438 disable_web_page_preview, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 disable_notification &#8212; \u044d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0431\u0435\u0437 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\/link&#039;) {\n\n    await bot.sendMessage(msg.chat.id, `https:\/\/habr.com\/`, {\n\n        disable_web_page_preview: true,\n        disable_notification: true\n\n    });\n\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u041c\u0435\u043d\u044e-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"554\" height=\"584\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/da8957a71ae56841fb5801496296c678.png\" alt=\"\u0420\u0430\u0437\u043d\u044b\u0435 \u043c\u0435\u043d\u044e \u0432 \u0431\u043e\u0442\u0435\" class=\"wp-image-515\" title=\"\u0420\u0430\u0437\u043d\u044b\u0435 \u043c\u0435\u043d\u044e \u0432 \u0431\u043e\u0442\u0435\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/da8957a71ae56841fb5801496296c678.png 554w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/da8957a71ae56841fb5801496296c678-285x300.png 285w\" sizes=\"auto, (max-width: 554px) 100vw, 554px\" \/><figcaption class=\"wp-element-caption\">\u0420\u0430\u0437\u043d\u044b\u0435 \u043c\u0435\u043d\u044e \u0432 \u0431\u043e\u0442\u0435<\/figcaption><\/figure>\n\n\n\n<p>\u0414\u0430\u043b\u0435\u0435 \u043e\u0431\u0441\u0443\u0434\u0438\u043c \u043c\u0435\u043d\u044e-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0443. \u041c\u0435\u043d\u044e-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b \u0434\u0435\u043b\u044f\u0442\u0441\u044f \u043d\u0430 \u0434\u0432\u0430 \u0442\u0438\u043f\u0430: \u0442\u043e \u043c\u0435\u043d\u044e, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0440\u044f\u0434\u043e\u043c \u0441 \u0432\u0432\u043e\u0434\u043e\u043c \u0442\u0435\u043a\u0441\u0442\u0430, \u0438 \u043c\u0435\u043d\u044e, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d\u043e \u043a \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044e. \u041c\u0435\u0436\u0434\u0443 \u043d\u0438\u043c\u0438 \u0435\u0441\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0440\u0430\u0437\u043d\u0438\u0446\u0430, \u043e \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043c\u044b \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u0434\u0430\u043b\u044c\u0448\u0435. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0434\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043c\u0435\u043d\u044e, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043d\u0435 \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d\u043e \u043a \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044e &#8212; \u0434\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u044f \u0431\u0443\u0434\u0443 \u0435\u0433\u043e \u0434\u0430\u043b\u044c\u0448\u0435 \u043d\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u0435\u0449\u0451 \u043e\u0434\u043d\u0443 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 &#171;menu&#187; \u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u0435\u0451:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\/menu&#039;) {\n\n    await bot.sendMessage(msg.chat.id, `\u041c\u0435\u043d\u044e \u0431\u043e\u0442\u0430`, {\n\n        reply_markup: {\n\n            keyboard: [\n\n                [&#039;\u2b50\ufe0f \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430&#039;, &#039;\u2b50\ufe0f \u0412\u0438\u0434\u0435\u043e&#039;],\n                [&#039;\u2b50\ufe0f \u0410\u0443\u0434\u0438\u043e&#039;, &#039;\u2b50\ufe0f \u0413\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435&#039;]\n\n            ]\n\n        }\n\n    })\n\n}<\/code><\/pre>\n\n\n\n<p>\u0412 \u043e\u0431\u044a\u0435\u043a\u0442, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u044b \u0440\u0430\u043d\u044c\u0448\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u043b\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b disable_web_page_preview, disable_notification, parse_mode \u0442\u0435\u043f\u0435\u0440\u044c \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u043c reply_markup, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043c\u0430\u0441\u0441\u0438\u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 keyboard. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u043a\u0430\u0436\u0434\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0432 keyboard &#8212; \u044d\u0442\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u0441\u0432\u0435\u0440\u0445\u0443 \u0432\u043d\u0438\u0437. \u0422\u043e \u0435\u0441\u0442\u044c \u043c\u044b \u0437\u0430\u0434\u0430\u0451\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u043c\u0438 \u0441\u0442\u0440\u043e\u043a\u0438 \u043c\u0435\u043d\u044e, \u0430 \u0432\u043d\u0443\u0442\u0440\u0438 \u0441\u0442\u0440\u043e\u043a \u0437\u0430\u0434\u0430\u0451\u043c \u0441\u0430\u043c\u0438 \u043a\u043d\u043e\u043f\u043a\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u0442\u0440\u043e\u043a. \u0412\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0432\u044b\u0448\u0435, \u0432 \u0431\u043e\u0442\u0435 \u0431\u0443\u0434\u0435\u0442 \u0442\u0430\u043a:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"559\" height=\"399\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/8c72aa78d3984c9bddde5c80d02ffe03.png\" alt=\"\u041c\u0435\u043d\u044e-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430\" class=\"wp-image-516\" title=\"\u041c\u0435\u043d\u044e-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/8c72aa78d3984c9bddde5c80d02ffe03.png 559w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/8c72aa78d3984c9bddde5c80d02ffe03-300x214.png 300w\" sizes=\"auto, (max-width: 559px) 100vw, 559px\" \/><figcaption class=\"wp-element-caption\">\u041c\u0435\u043d\u044e-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430<\/figcaption><\/figure>\n\n\n\n<p>\u041c\u043e\u0436\u0435\u043c \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u043a\u043d\u043e\u043f\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438\u0441\u044c \u043a\u0430\u043a\u0438\u043c\u0438-\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u043c\u0438. \u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u0434\u0430\u0442\u044c \u0438\u043c \u0430\u0434\u0435\u043a\u0432\u0430\u0442\u043d\u044b\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u044b, \u043c\u043e\u0436\u043d\u043e \u0432 \u043e\u0431\u044a\u0435\u043a\u0442 reply_markup \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 resize_keyboard \u0441\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c true. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0442\u0430\u043a \u0438 \u0441\u0434\u0435\u043b\u0430\u0435\u043c, \u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0432 \u043c\u0435\u043d\u044e \u0435\u0449\u0451 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043d\u043e\u043f\u043e\u043a:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"\" data-line=\"\">else if(msg.text == &#039;\/menu&#039;) {\n\n    await bot.sendMessage(msg.chat.id, `\u041c\u0435\u043d\u044e \u0431\u043e\u0442\u0430`, {\n\n        reply_markup: {\n\n            keyboard: [\n\n                [&#039;\u2b50\ufe0f \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430&#039;, &#039;\u2b50\ufe0f \u0412\u0438\u0434\u0435\u043e&#039;],\n                [&#039;\u2b50\ufe0f \u0410\u0443\u0434\u0438\u043e&#039;, &#039;\u2b50\ufe0f \u0413\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435&#039;],\n                [&#039;\u2b50\ufe0f \u041a\u043e\u043d\u0442\u0430\u043a\u0442&#039;, &#039;\u2b50\ufe0f \u0413\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044f&#039;],\n                [&#039;\u274c \u0417\u0430\u043a\u0440\u044b\u0442\u044c \u043c\u0435\u043d\u044e&#039;]\n\n            ],\n            resize_keyboard: true\n\n        }\n\n    })\n\n}<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"564\" height=\"394\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/0b2407beb908fb06164b9fc29b5d3e72.png\" alt=\"\u041c\u0435\u043d\u044e-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430 \u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u043c resize_keyboard\" class=\"wp-image-518\" title=\"\u041c\u0435\u043d\u044e-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430 \u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u043c resize_keyboard\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/0b2407beb908fb06164b9fc29b5d3e72.png 564w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/0b2407beb908fb06164b9fc29b5d3e72-300x210.png 300w\" sizes=\"auto, (max-width: 564px) 100vw, 564px\" \/><figcaption class=\"wp-element-caption\">\u041c\u0435\u043d\u044e-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430 \u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u043c resize_keyboard<\/figcaption><\/figure>\n\n\n\n<p>\u0414\u0430\u043b\u0435\u0435 \u0432\u0441\u0442\u0430\u0451\u0442 \u0432\u043e\u043f\u0440\u043e\u0441 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0430\u0436\u0430\u0442\u0438\u0435 \u043a\u043d\u043e\u043f\u043a\u0438 \u0432 \u043d\u0430\u0448\u0435\u0439 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0435. \u0422\u0443\u0442 \u0432\u0441\u0451 \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043f\u0440\u043e\u0441\u0442\u043e. \u041a\u043e\u0433\u0434\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u0442 \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443 \u0432 \u043c\u0435\u043d\u044e, \u043e\u043d \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u0431\u043e\u0442\u0443 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0442\u0435\u043c \u0442\u0435\u043a\u0441\u0442\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0435, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u044b \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u043b\u0438 \u0432 \u0441\u0442\u0440\u043e\u043a\u0430\u0445 \u0432\u043d\u0443\u0442\u0440\u0438 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432. \u0421\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u0431\u0443\u0434\u0435\u043c \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043d\u0430\u0436\u0430\u0442\u0438\u0435 \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443, \u043a\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u043e\u0435 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\u274c \u0417\u0430\u043a\u0440\u044b\u0442\u044c \u043c\u0435\u043d\u044e&#039;) {\n\n    await bot.sendMessage(msg.chat.id, &#039;\u041c\u0435\u043d\u044e \u0437\u0430\u043a\u0440\u044b\u0442\u043e&#039;, {\n\n        reply_markup: {\n\n            remove_keyboard: true\n\n        }\n\n    })\n\n}<\/code><\/pre>\n\n\n\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435, \u043c\u044b \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0435 \u043a\u043d\u043e\u043f\u043a\u0438 \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f \u043c\u0435\u043d\u044e. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u0412\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e, \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430 \u0443 \u043d\u0435\u0433\u043e \u043d\u0438\u043a\u0443\u0434\u0430 \u043d\u0435 \u043f\u0440\u043e\u043f\u0430\u0434\u0451\u0442. \u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0443, \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u043c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 remove_keyboard \u0441\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c true \u0432 reply_markup. \u041a\u0430\u043a \u0432\u0438\u0434\u0438\u043c, \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430 \u0443 \u043d\u0430\u0441 \u043f\u0440\u043e\u043f\u0430\u043b\u0430:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"550\" height=\"160\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/3b91172826bf215ccbeb3184279a8d10.png\" alt=\"\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b\" class=\"wp-image-517\" title=\"\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/3b91172826bf215ccbeb3184279a8d10.png 550w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/3b91172826bf215ccbeb3184279a8d10-300x87.png 300w\" sizes=\"auto, (max-width: 550px) 100vw, 550px\" \/><figcaption class=\"wp-element-caption\">\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b<\/figcaption><\/figure>\n\n\n\n<p>\u041e \u0442\u043e\u043c, \u043a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043c\u0435\u043d\u044e \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d\u043d\u043e\u0435 \u043a \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044e \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u0447\u0443\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0438 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u0421\u0435\u0439\u0447\u0430\u0441 \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u0441\u043a\u0438\u043d\u0443\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443, \u0438 \u043a\u0430\u043a \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u043e\u0439 \u043e\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f.<\/p>\n\n\n\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0431\u0443\u0434\u0435\u043c \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0442\u044c \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043f\u043e \u043d\u0430\u0436\u0430\u0442\u0438\u044e \u043a\u043d\u043e\u043f\u043a\u0438 &#171;\u2b50\ufe0f \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430&#187; \u0432 \u043c\u0435\u043d\u044e. \u0421\u0430\u043c\u0443 \u043a\u043d\u043e\u043f\u043a\u0443 \u043c\u044b \u0443\u0436\u0435 \u0441\u043e\u0437\u0434\u0430\u043b\u0438, \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u0435\u0451 \u043d\u0430\u0436\u0430\u0442\u0438\u0435 \u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u0435\u0442\u043e\u0434\u0430 sendPhoto, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0434\u0438\u043c \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0445\u043e\u0442\u0438\u043c \u0441\u043a\u0438\u043d\u0443\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\u2b50\ufe0f \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430&#039;) {\n\n    await bot.sendPhoto(msg.chat.id, process.env.URL_TO_IMG);\n\n}<\/code><\/pre>\n\n\n\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u043c\u044b \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435, \u043e\u0434\u043d\u0430\u043a\u043e, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0441\u043a\u0438\u043d\u0443\u0442\u044c \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u0438 \u043f\u0440\u043e\u0441\u0442\u043e \u0443\u043a\u0430\u0437\u0430\u0432 \u043f\u0443\u0442\u044c \u0434\u043e \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\u2b50\ufe0f \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430&#039;) {\n\n    await bot.sendPhoto(msg.chat.id, &#039;.\/image.jpg&#039;);\n\n}<\/code><\/pre>\n\n\n\n<p>\u0422\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0438\u043d\u0443\u0442\u044c \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043c\u043e\u0434\u0443\u043b\u044c fs:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\u2b50\ufe0f \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430&#039;) {\n\n    \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441\u0441\u044b\u043b\u043a\u043e\u0439\n    await bot.sendPhoto(msg.chat.id, process.env.URL_TO_IMG);\n    \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0443\u043a\u0430\u0437\u0430\u0432 \u043f\u0443\u0442\u044c\n    await bot.sendPhoto(msg.chat.id, &#039;.\/image.jpg&#039;);\n    \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Readable Stream\n    const imageStream = fs.createReadStream(&#039;.\/image.jpg&#039;);\n    await bot.sendPhoto(msg.chat.id, imageStream);\n    \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0431\u0443\u0444\u0435\u0440\u0430\n    const imageBuffer = fs.readFileSync(&#039;.\/image.jpg&#039;);\n    await bot.sendPhoto(msg.chat.id, imageBuffer);\n\n}<\/code><\/pre>\n\n\n\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043d\u0430\u0448 \u0431\u043e\u0442 \u0431\u0443\u0434\u0435\u0442 \u0432\u0435\u0441\u0442\u0438 \u0441\u0435\u0431\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"549\" height=\"384\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/350ab75e66580bcc39d669e25f4fa94c.png\" alt=\"\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443\" class=\"wp-image-529\" title=\"\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/350ab75e66580bcc39d669e25f4fa94c.png 549w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/350ab75e66580bcc39d669e25f4fa94c-300x210.png 300w\" sizes=\"auto, (max-width: 549px) 100vw, 549px\" \/><figcaption class=\"wp-element-caption\">\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443<\/figcaption><\/figure>\n\n\n\n<p>\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443. \u041e\u0434\u043d\u0430\u043a\u043e, \u043d\u0430\u043c \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u0441\u044f \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u043f\u043e\u0434\u043f\u0438\u0441\u044c \u043a \u044d\u0442\u043e\u0439 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0435. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u043c \u0432 \u043c\u0435\u0442\u043e\u0434 sendPhoto \u043e\u0431\u044a\u0435\u043a\u0442 \u0441 \u043e\u043f\u0446\u0438\u044f\u043c\u0438, \u043d\u0430\u0434\u043f\u0438\u0441\u044c \u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0432 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 caption, \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u0434\u0430\u0442\u044c parse_mode, \u043a\u0430\u043a \u0438 \u0432 \u043e\u0431\u044b\u0447\u043d\u043e\u043c \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">const imageStream = fs.createReadStream(&#039;.\/image.jpg&#039;);\nawait bot.sendPhoto(msg.chat.id, imageStream, {\n\n    caption: &#039;&lt;b&gt;\u2b50\ufe0f \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430&lt;\/b&gt;&#039;,\n    parse_mode: &#039;HTML&#039;\n\n});<\/code><\/pre>\n\n\n\n<p>\u0414\u0430\u043b\u0435\u0435 \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c\u0441\u044f \u0441 \u0442\u0435\u043c, \u043a\u0430\u043a \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c \u043e\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c \u0441 \u0442\u0438\u043f\u043e\u043c &#171;photo&#187;:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;photo&#039;, async img =&gt; {\n\n    console.log(img);\n\n})<\/code><\/pre>\n\n\n\n<p>\u0422\u0435\u043f\u0435\u0440\u044c, \u043a\u043e\u0433\u0434\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0441\u043a\u0438\u043d\u0435\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u043e\u0439, \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c \u0432\u0435\u0440\u043d\u0451\u0442 \u043d\u0430\u043c \u043e\u0431\u044a\u0435\u043a\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0432\u0438\u0434\u0430:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-json\" data-line=\"\">{\n  message_id: 500,\n  from: {\n    id: ID_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    is_bot: false,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    language_code: &#039;ru&#039;\n  },\n  chat: {\n    id: ID_\u0427\u0410\u0422\u0410,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    type: &#039;private&#039;\n  },\n  date: \u0414\u0410\u0422\u0410,\n  photo: [\n    {\n      file_id: ID_\u0424\u0410\u0419\u041b\u0410,\n      file_unique_id: \u0423\u041d\u0418\u041a\u0410\u041b\u042c\u041d\u042b\u0419_ID_\u0424\u0410\u0419\u041b\u0410,\n      file_size: \u0420\u0410\u0417\u041c\u0415\u0420_\u0424\u0410\u0419\u041b\u0410,\n      width: \u0428\u0418\u0420\u0418\u041d\u0410_\u041a\u0410\u0420\u0422\u0418\u041d\u041a\u0418,\n      height: \u0412\u042b\u0421\u041e\u0422\u0410_\u041a\u0410\u0420\u0422\u0418\u041d\u041a\u0418\n    },\n    {\n      file_id: ID_\u0424\u0410\u0419\u041b\u0410,\n      file_unique_id: \u0423\u041d\u0418\u041a\u0410\u041b\u042c\u041d\u042b\u0419_ID_\u0424\u0410\u0419\u041b\u0410,\n      file_size: \u0420\u0410\u0417\u041c\u0415\u0420_\u0424\u0410\u0419\u041b\u0410,\n      width: \u0428\u0418\u0420\u0418\u041d\u0410_\u041a\u0410\u0420\u0422\u0418\u041d\u041a\u0418,\n      height: \u0412\u042b\u0421\u041e\u0422\u0410_\u041a\u0410\u0420\u0422\u0418\u041d\u041a\u0418\n    },\n    {\n      file_id: ID_\u0424\u0410\u0419\u041b\u0410,\n      file_unique_id: \u0423\u041d\u0418\u041a\u0410\u041b\u042c\u041d\u042b\u0419_ID_\u0424\u0410\u0419\u041b\u0410,\n      file_size: \u0420\u0410\u0417\u041c\u0415\u0420_\u0424\u0410\u0419\u041b\u0410,\n      width: \u0428\u0418\u0420\u0418\u041d\u0410_\u041a\u0410\u0420\u0422\u0418\u041d\u041a\u0418,\n      height: \u0412\u042b\u0421\u041e\u0422\u0410_\u041a\u0410\u0420\u0422\u0418\u041d\u041a\u0418\n    },\n    {\n      file_id: ID_\u0424\u0410\u0419\u041b\u0410,\n      file_unique_id: \u0423\u041d\u0418\u041a\u0410\u041b\u042c\u041d\u042b\u0419_ID_\u0424\u0410\u0419\u041b\u0410,\n      file_size: \u0420\u0410\u0417\u041c\u0415\u0420_\u0424\u0410\u0419\u041b\u0410,\n      width: \u0428\u0418\u0420\u0418\u041d\u0410_\u041a\u0410\u0420\u0422\u0418\u041d\u041a\u0418,\n      height: \u0412\u042b\u0421\u041e\u0422\u0410_\u041a\u0410\u0420\u0422\u0418\u041d\u041a\u0418\n    }\n  ]\n}<\/code><\/pre>\n\n\n\n<p>\u041c\u044b \u043f\u043e\u0445\u043e\u0436\u0435\u0435 \u0443\u0436\u0435 \u0432\u0438\u0434\u0435\u043b\u0438, \u043a\u043e\u0433\u0434\u0430 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043b\u0438 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435. \u0422\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u044b \u0438\u043c\u0435\u0435\u043c \u0434\u0435\u043b\u043e \u043d\u0435 \u0441\u043e \u0441\u0442\u0440\u043e\u043a\u043e\u0439 text, \u0430 \u0441 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 photo. \u0412 \u044d\u0442\u043e\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442\u0441\u044f \u043d\u0430\u0448\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u043c \u043f\u0440\u0438\u043d\u044f\u043b \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443, \u0445\u0440\u0430\u043d\u0438\u0442 \u0443 \u0441\u0435\u0431\u044f \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435, \u0438 \u0432\u0435\u0440\u043d\u0443\u043b \u043d\u0430\u043c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u043d\u0430\u0448\u0435\u0439 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u0440\u0430\u0437\u043c\u0435\u0440\u0430\u0445. \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043e\u0431\u044a\u0435\u043a\u0442 \u0432 \u044d\u0442\u043e\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u0435 &#8212; \u044d\u0442\u043e \u043d\u0430\u0448 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b, \u0430 \u0434\u0440\u0443\u0433\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u043d\u0430\u0448\u0443 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443, \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0441\u0436\u0430\u0442\u043e\u043c \u0432\u0438\u0434\u0435. \u041d\u043e \u043a\u0430\u043a \u0436\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u043b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043f\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0435\u0439\u0441\u044f \u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u0430\u0445? \u041c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043d\u0430\u0448\u0435\u0439 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0435 \u043f\u043e file_id, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043d\u0430\u043c \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0444\u0430\u0439\u043b \u043f\u043e file_id \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043c\u0435\u0442\u043e\u0434 downloadFile, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u043c file_id, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0443\u0436\u043d\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c, \u0438 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044e \u0432 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0431\u0443\u0434\u0435\u043c \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0442\u044c \u0444\u0430\u0439\u043b. \u0412\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0442\u0430\u043a:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;photo&#039;, async img =&gt; {\n\n    try {\n\n        await bot.downloadFile(img.photo[img.photo.length-1].file_id, &#039;.\/image&#039;);\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<p>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043d\u0430\u0448 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0432 \u0438\u043d\u0434\u0435\u043a\u0441\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u044f \u0443\u043a\u0430\u0437\u0430\u043b \u0434\u043b\u0438\u043d\u0443 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u043c\u0438\u043d\u0443\u0441 \u043e\u0434\u0438\u043d &#8212; \u043d\u0435 \u0431\u0443\u0434\u0435\u043c \u0437\u0430\u0431\u044b\u0432\u0430\u0442\u044c, \u0447\u0442\u043e \u043c\u044b, \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u044b, \u0441\u0447\u0438\u0442\u0430\u0435\u043c \u0441 \u043d\u0443\u043b\u044f.<\/p>\n\n\n\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0442\u0435\u043f\u0435\u0440\u044c \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435: \u043a\u043e\u0433\u0434\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u043d\u0430\u043c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435, \u0431\u0443\u0434\u0435\u043c \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0442\u044c \u0435\u043c\u0443 \u0432 \u043e\u0442\u0432\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u043d\u044b\u0445 \u0432 \u043e\u0434\u043d\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435. \u042d\u0442\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 &#8212; \u044d\u0442\u043e \u043d\u0430\u0448 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0438 \u0441\u0436\u0430\u0442\u044b\u0435 \u0435\u0433\u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0441\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u043c sendMediaGroup:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;photo&#039;, async img =&gt; {\n\n    try {\n\n        const photoGroup = [];\n\n        for(let index = 0; index &lt; img.photo.length; index++) {\n\n            const photoPath = await bot.downloadFile(img.photo[index].file_id, &#039;.\/image&#039;);\n\n            photoGroup.push({\n\n                type: &#039;photo&#039;,\n                media: photoPath,\n                caption: `\u0420\u0430\u0437\u043c\u0435\u0440 \u0444\u0430\u0439\u043b\u0430: ${img.photo[index].file_size} \u0431\u0430\u0439\u0442\\n\u0428\u0438\u0440\u0438\u043d\u0430: ${img.photo[index].width}\\n\u0412\u044b\u0441\u043e\u0442\u0430: ${img.photo[index].height}`\n\n            })\n\n        }\n\n        await bot.sendMediaGroup(img.chat.id, photoGroup);\n\n        for(let index = 0; index &lt; photoGroup.length; index++) {\n\n            fs.unlink(photoGroup[index].media, error =&gt; {\n\n                if(error) {\n\n                    console.log(error);\n\n                }\n\n            })\n\n        }\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<p>\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c\u0441\u044f \u043d\u0430 \u044d\u0442\u043e\u043c \u043f\u043e\u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435. \u0412 \u0441\u0430\u043c\u043e\u043c \u043d\u0430\u0447\u0430\u043b\u0435 \u043c\u044b \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u043c\u0430\u0441\u0441\u0438\u0432. \u041e\u043d \u043d\u0430\u043c \u043d\u0443\u0436\u0435\u043d \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a \u0432 \u043c\u0435\u0442\u043e\u0434 sendMediaGroup \u0438 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0441\u043a\u0438\u043d\u0443\u0442\u044c \u044d\u0442\u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e. \u041c\u0435\u0442\u043e\u0434 sendMediaGroup \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043c\u0430\u0441\u0441\u0438\u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u044b \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u043f\u0435\u0440\u0432\u044b\u043c \u0434\u0435\u043b\u043e\u043c \u0442\u0438\u043f \u043c\u0435\u0434\u0438\u0430-\u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430, \u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044d\u0442\u043e &#171;photo&#187;. \u0422\u0430\u043a\u0436\u0435 \u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u0435 \u043c\u0435\u0434\u0438\u0430-\u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 \u043c\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043f\u0443\u0442\u044c \u0434\u043e \u043d\u0430\u0448\u0435\u0433\u043e \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430, \u044d\u0442\u0438\u043c \u043f\u0443\u0442\u0451\u043c \u043c\u043e\u0433\u0443\u0442 \u0441\u043b\u0443\u0436\u0438\u0442\u044c, \u0442\u0430\u043a\u0436\u0435 \u043a\u0430\u043a \u0438 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0441 \u043c\u0435\u0442\u043e\u0434\u043e\u043c sendPhoto: url, stream, buffer \u0438\u043b\u0438 \u043f\u0443\u0442\u044c \u0434\u043e \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430. \u0422\u0430\u043a\u0436\u0435 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0443\u043a\u0430\u0437\u0430\u0442\u044c file_id &#8212; \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0442\u043e\u0436\u0435 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043f\u0440\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0435 \u0447\u0435\u0440\u0435\u0437 sendPhoto \u0438\u043b\u0438 \u0447\u0435\u0440\u0435\u0437 sendMediaGroup, \u043e\u0434\u043d\u0430\u043a\u043e, \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044d\u0442\u043e\u0442 \u0441\u043f\u043e\u0441\u043e\u0431 \u043d\u0430\u043c \u043d\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442, \u0442\u0430\u043a \u043a\u0430\u043a \u043a\u0430\u043a\u043e\u0439 \u0431\u044b file_id \u043c\u044b \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u043b\u0438, \u043c\u044b \u0432\u0441\u0435\u0433\u0434\u0430 \u0431\u0443\u0434\u0435\u043c \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0442\u044c \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438, \u0430 \u043d\u0430\u0441 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0442 \u0438\u043c\u0435\u043d\u043d\u043e \u0441\u0436\u0430\u0442\u044b\u0435 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438. \u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432 \u043e\u0431\u044a\u0435\u043a\u0442 \u043c\u0435\u0434\u0438\u0430-\u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c caption &#8212; \u043f\u043e\u0434\u043f\u0438\u0441\u044c \u043f\u043e\u0434 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u043e\u0439. \u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u044f \u0434\u043e\u0431\u0430\u0432\u0438\u043b \u0432 \u043f\u043e\u0434\u043f\u0438\u0441\u044c \u043f\u043e\u0434 \u043a\u0430\u0436\u0434\u043e\u0439 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u043e\u0439 \u0435\u0451 \u0440\u0430\u0437\u043c\u0435\u0440 \u0432 \u0431\u0430\u0439\u0442\u0430\u0445, \u0448\u0438\u0440\u0438\u043d\u0443 \u0438 \u0432\u044b\u0441\u043e\u0442\u0443 \u0432 \u043f\u0438\u043a\u0441\u0435\u043b\u044f\u0445 &#8212; \u0432\u0441\u0451 \u044d\u0442\u043e \u043d\u0430\u043c \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c. \u0422\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u043e\u0439\u0434\u044f\u0441\u044c \u0446\u0438\u043a\u043b\u043e\u043c \u043f\u043e \u0432\u0441\u0435\u043c \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430\u043c \u043d\u0430\u0448\u0435\u0439 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438, \u0441\u043a\u0430\u0447\u0430\u0432 \u0432\u0441\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0438 \u0437\u0430\u043f\u0438\u0441\u0430\u0432 \u0432\u0441\u044e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e, \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u043c \u043d\u0430\u0448 \u043c\u0430\u0441\u0441\u0438\u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u0432 \u043c\u0435\u0442\u043e\u0434 sendMediaGroup, \u0430 \u0437\u0430\u0442\u0435\u043c \u0443\u0434\u0430\u043b\u044f\u0435\u043c \u0432\u0441\u0435 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0442\u043e \u0441\u043a\u0430\u0447\u0430\u043b\u0438. \u0418 \u0442\u0435\u043f\u0435\u0440\u044c \u0438\u043c\u0435\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"561\" height=\"675\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/f4eb698f3db875e2dd0a692455f3c679.png\" alt=\"\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u0432\u0441\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0441\u0436\u0430\u0442\u044b\u0445 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a \u0438 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\" class=\"wp-image-519\" title=\"\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u0432\u0441\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0441\u0436\u0430\u0442\u044b\u0445 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a \u0438 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/f4eb698f3db875e2dd0a692455f3c679.png 561w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/f4eb698f3db875e2dd0a692455f3c679-249x300.png 249w\" sizes=\"auto, (max-width: 561px) 100vw, 561px\" \/><figcaption class=\"wp-element-caption\">\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u0432\u0441\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0441\u0436\u0430\u0442\u044b\u0445 \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a \u0438 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"974\" height=\"807\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/8d32b5fe34c7d6044b7b49e099fe6eb0.png\" alt=\"\u041f\u043e\u0434\u043f\u0438\u0441\u044c \u043f\u043e\u0434 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c\" class=\"wp-image-528\" title=\"\u041f\u043e\u0434\u043f\u0438\u0441\u044c \u043f\u043e\u0434 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/8d32b5fe34c7d6044b7b49e099fe6eb0.png 974w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/8d32b5fe34c7d6044b7b49e099fe6eb0-300x249.png 300w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/8d32b5fe34c7d6044b7b49e099fe6eb0-768x636.png 768w\" sizes=\"auto, (max-width: 974px) 100vw, 974px\" \/><figcaption class=\"wp-element-caption\">\u041f\u043e\u0434\u043f\u0438\u0441\u044c \u043f\u043e\u0434 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0438 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0432\u0438\u0434\u0435\u043e<\/h3>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u0414\u0430\u043b\u0435\u0435 \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u0441\u043a\u0438\u043d\u0443\u0442\u044c \u0432\u0438\u0434\u0435\u043e. \u0422\u0443\u0442 \u0432 \u043e\u0431\u0449\u0435\u043c-\u0442\u043e \u0432\u0441\u0451 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e \u0444\u043e\u0442\u043e, \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u043d\u0430\u0436\u0430\u0442\u0438\u0435 \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443 \u043d\u0430 &#171;\u2b50\ufe0f \u0412\u0438\u0434\u0435\u043e&#187; \u0432 \u043d\u0430\u0448\u0435\u043c \u043c\u0435\u043d\u044e:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\u2b50\ufe0f \u0412\u0438\u0434\u0435\u043e&#039;) {\n\n    await bot.sendVideo(msg.chat.id, &#039;.\/video.mp4&#039;);\n\n}<\/code><\/pre>\n\n\n\n<p>\u0422\u0430\u043a\u0436\u0435 \u043c\u044b \u0442\u0443\u0434\u0430 \u043c\u043e\u0436\u0435\u043c \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c caption \u0438 parse_mode, \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, \u0432\u0440\u043e\u0434\u0435 disable_notification:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\u2b50\ufe0f \u0412\u0438\u0434\u0435\u043e&#039;) {\n\n    await bot.sendVideo(msg.chat.id, &#039;.\/video.mp4&#039;, {\n\n        caption: &#039;&lt;b&gt;\u2b50\ufe0f \u0412\u0438\u0434\u0435\u043e&lt;\/b&gt;&#039;,\n        parse_mode: &#039;HTML&#039;\n\n    });\n\n}<\/code><\/pre>\n\n\n\n<p>\u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"551\" height=\"372\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/7ceb5c9dd182d6d0d5857a36c1799b37.png\" alt=\"\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u0432\u0438\u0434\u0435\u043e\" class=\"wp-image-530\" title=\"\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u0432\u0438\u0434\u0435\u043e\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/7ceb5c9dd182d6d0d5857a36c1799b37.png 551w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/7ceb5c9dd182d6d0d5857a36c1799b37-300x203.png 300w\" sizes=\"auto, (max-width: 551px) 100vw, 551px\" \/><figcaption class=\"wp-element-caption\">\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u0432\u0438\u0434\u0435\u043e<\/figcaption><\/figure>\n\n\n\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0441 \u0432\u0438\u0434\u0435\u043e. \u0414\u0435\u043b\u0430\u0435\u043c \u044d\u0442\u043e \u0442\u0430\u043a\u0436\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044f \u0441 \u0442\u0438\u043f\u043e\u043c &#171;video&#187;:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&quot;video&quot;, async video =&gt; {\n\n    console.log(video);\n\n})<\/code><\/pre>\n\n\n\n<p>\u0422\u0435\u043b\u0435\u0433\u0440\u0430\u043c \u043f\u0440\u0438\u0441\u044b\u043b\u0430\u0435\u0442 \u043d\u0430\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435, \u043a\u043e\u0433\u0434\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0432\u0438\u0434\u0435\u043e:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-json\" data-line=\"\">{\n  message_id: ID_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f,\n  from: {\n    id: ID_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f,\n    is_bot: false,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    language_code: &#039;ru&#039;\n  },\n  chat: {\n    id: ID_\u0427\u0410\u0422\u0410,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    type: &#039;private&#039;\n  },\n  date: \u0414\u0410\u0422\u0410,\n  video: {\n    duration: \u0414\u041b\u0418\u0422\u0415\u041b\u042c\u041d\u041e\u0421\u0422\u042c_\u0412\u0418\u0414\u0415\u041e,\n    width: \u0412\u042b\u0421\u041e\u0422\u0410_\u0412\u0418\u0414\u0415\u041e,\n    height: \u0428\u0418\u0420\u0418\u041d\u0410_\u0412\u0418\u0414\u0415\u041e,\n    file_name: \u0418\u041c\u042f_\u0424\u0410\u0419\u041b\u0410,\n    mime_type: \u0422\u0418\u041f_\u0424\u0410\u0419\u041b\u0410,\n    thumbnail: {\n      file_id: ID_\u0418\u0417\u041e\u0411\u0420\u0410\u0416\u0415\u041d\u0418\u042f,\n      file_unique_id: \u0423\u041d\u0418\u041a\u0410\u041b\u042c\u041d\u041e\u0415_ID_\u0418\u0417\u041e\u0411\u0420\u0410\u0416\u0415\u041d\u0418\u042f,\n      file_size: \u0420\u0410\u0417\u041c\u0415\u0420_\u0418\u0417\u041e\u0411\u0420\u0410\u0416\u0415\u041d\u0418\u042f,\n      width: \u0428\u0418\u0420\u0418\u041d\u0410_\u0418\u0417\u041e\u0411\u0420\u0410\u0416\u0415\u041d\u0418\u042f,\n      height: \u0412\u042b\u0421\u041e\u0422\u0410_\u0418\u0417\u041e\u0411\u0420\u0410\u0416\u0415\u041d\u0418\u042f\n    },\n    thumb: {\n      file_id: ID_\u0418\u0417\u041e\u0411\u0420\u0410\u0416\u0415\u041d\u0418\u042f,\n      file_unique_id: \u0423\u041d\u0418\u041a\u0410\u041b\u042c\u041d\u041e\u0415_ID_\u0418\u0417\u041e\u0411\u0420\u0410\u0416\u0415\u041d\u0418\u042f,\n      file_size: \u0420\u0410\u0417\u041c\u0415\u0420_\u0418\u0417\u041e\u0411\u0420\u0410\u0416\u0415\u041d\u0418\u042f,\n      width: \u0428\u0418\u0420\u0418\u041d\u0410_\u0418\u0417\u041e\u0411\u0420\u0410\u0416\u0415\u041d\u0418\u042f,\n      height: \u0412\u042b\u0421\u041e\u0422\u0410_\u0418\u0417\u041e\u0411\u0420\u0410\u0416\u0415\u041d\u0418\u042f\n    },\n    file_id: ID_\u0412\u0418\u0414\u0415\u041e,\n    file_unique_id: \u0423\u041d\u0418\u041a\u0410\u041b\u042c\u041d\u041e\u0415_ID_\u0412\u0418\u0414\u0415\u041e,\n    file_size: \u0420\u0410\u0417\u041c\u0415\u0420_\u0412\u0418\u0414\u0415\u041e\n  }\n}<\/code><\/pre>\n\n\n\n<p>\u041a\u0430\u043a \u0432\u0438\u0434\u0438\u043c, \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043d\u0430\u043c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0432\u0438\u0434\u0435\u043e \u0438 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u0445. \u0418\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f &#8212; \u044d\u0442\u043e \u043c\u0438\u043d\u0438\u0430\u0442\u044e\u0440\u044b \u0432\u0438\u0434\u0435\u043e. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435: \u043a\u043e\u0433\u0434\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u0432\u0438\u0434\u0435\u043e, \u0431\u043e\u0442 \u0431\u0443\u0434\u0435\u0442 \u0432 \u043e\u0442\u0432\u0435\u0442 \u043a\u0438\u0434\u0430\u0442\u044c \u0441\u0430\u043c\u043e \u0432\u0438\u0434\u0435\u043e, \u043c\u0438\u043d\u0438\u0430\u0442\u044e\u0440\u0443 \u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0432\u0438\u0434\u0435\u043e. \u0412\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&quot;video&quot;, async video =&gt; {\n\n    try {\n\n        const thumbPath = await bot.downloadFile(video.video.thumbnail.file_id, &#039;.\/image&#039;);\n\n        await bot.sendMediaGroup(video.chat.id, [\n            \n            {\n\n                type: &#039;video&#039;,\n                media: video.video.file_id,\n                caption: `\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u0430: ${video.video.file_name}\\n\u0412\u0435\u0441 \u0444\u0430\u0439\u043b\u0430: ${video.video.file_size} \u0431\u0430\u0439\u0442\\n\u0414\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0432\u0438\u0434\u0435\u043e: ${video.video.duration} \u0441\u0435\u043a\u0443\u043d\u0434\\n\u0428\u0438\u0440\u0438\u043d\u0430 \u043a\u0430\u0434\u0440\u0430 \u0432 \u0432\u0438\u0434\u0435\u043e: ${video.video.width}\\n\u0412\u044b\u0441\u043e\u0442\u0430 \u043a\u0430\u0434\u0440\u0430 \u0432 \u0432\u0438\u0434\u0435\u043e: ${video.video.height}`\n\n            },\n            {\n\n                type: &#039;photo&#039;,\n                media: thumbPath,\n\n            }\n\n        ]);\n\n        fs.unlink(thumbPath, error =&gt; {\n\n            if(error) {\n\n                console.log(error);\n\n            }\n\n        })\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"558\" height=\"722\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/e2c1a1a4f692520e9318ec2c01996da6.png\" alt=\"\" class=\"wp-image-531\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/e2c1a1a4f692520e9318ec2c01996da6.png 558w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/e2c1a1a4f692520e9318ec2c01996da6-232x300.png 232w\" sizes=\"auto, (max-width: 558px) 100vw, 558px\" \/><\/figure>\n\n\n\n<p>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0432\u0438\u0434\u0435\u043e-\u0444\u0430\u0439\u043b \u044f \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u044e \u043f\u043e \u0435\u0433\u043e file_id, \u0430 \u043c\u0438\u043d\u0438\u0430\u0442\u044e\u0440\u0443 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u044e, \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u044e \u0438 \u0437\u0430\u0442\u0435\u043c \u0443\u0434\u0430\u043b\u044f\u044e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c \u043d\u0435 \u0434\u0430\u0451\u0442 \u0441\u043a\u0438\u043d\u0443\u0442\u044c \u043c\u0438\u043d\u0438\u0430\u0442\u044e\u0440\u0443 \u043c\u0435\u0442\u043e\u0434\u043e\u043c sendPhoto \u043f\u043e file_id. \u0422\u0430\u043a\u0436\u0435 \u0432\u0430\u0436\u043d\u043e, \u0447\u0442\u043e \u0432 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u044f \u0434\u043e\u0431\u0430\u0432\u0438\u043b \u0432 \u043c\u0435\u0442\u043e\u0434\u0435 sendMediaGroup \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 caption \u043b\u0438\u0448\u044c \u043a \u043e\u0434\u043d\u043e\u043c\u0443 \u043c\u0435\u0434\u0438\u0430-\u0444\u0430\u0439\u043b\u0443 \u0438 \u043d\u0430\u0434\u043f\u0438\u0441\u044c \u043e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u043b\u0430\u0441\u044c \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438.<\/p>\n\n\n\n<p>\u0422\u0430\u043a\u0436\u0435 \u0435\u0441\u0442\u044c \u0432\u0430\u0436\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0443\u0436\u043d\u043e \u0443\u0447\u0435\u0441\u0442\u044c. \u0418\u043d\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u0432\u0438\u0434\u0435\u043e, \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c \u0432 \u0442\u043e\u043c \u0436\u0435 .mp4, \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c \u043c\u043e\u0436\u0435\u0442 \u044d\u0442\u043e \u0441\u0436\u0430\u0442\u044c \u0438 \u0441\u043a\u0438\u043d\u0443\u0442\u044c \u0432 .gif.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0438 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0430\u0443\u0434\u0438\u043e<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u0421\u0438\u0442\u0443\u0430\u0446\u0438\u044f \u0443\u0436\u0435 \u0437\u043d\u0430\u043a\u043e\u043c\u0430\u044f \u043d\u0430\u043c, \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0430\u0443\u0434\u0438\u043e \u0442\u0430\u043a\u0436\u0435, \u043a\u0430\u043a \u0432\u0438\u0434\u0435\u043e \u0438 \u0444\u043e\u0442\u043e, \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u044f \u043a\u043d\u043e\u043f\u043a\u0443 &#171;\u2b50\ufe0f \u0410\u0443\u0434\u0438\u043e&#187;:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\u2b50\ufe0f \u0410\u0443\u0434\u0438\u043e&#039;) {\n\n    await bot.sendAudio(msg.chat.id, &#039;.\/audio.mp3&#039;, {\n\n        caption: &#039;&lt;b&gt;\u2b50\ufe0f \u0410\u0443\u0434\u0438\u043e&lt;\/b&gt;&#039;,\n        parse_mode: &#039;HTML&#039;\n\n    });\n\n}<\/code><\/pre>\n\n\n\n<p>\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0430\u0443\u0434\u0438\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0442\u043e\u0436\u0435 \u043f\u043e\u0445\u043e\u0436\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c \u0441 \u0442\u0438\u043f\u043e\u043c &#171;audio&#187;:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;audio&#039;, async audio =&gt; {\n\n    try {\n\n        await bot.sendAudio(audio.chat.id, audio.audio.file_id, {\n\n            caption: `\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u0430: ${audio.audio.file_name}\\n\u0412\u0435\u0441 \u0444\u0430\u0439\u043b\u0430: ${audio.audio.file_size} \u0431\u0430\u0439\u0442\\n\u0414\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0430\u0443\u0434\u0438\u043e: ${audio.audio.duration} \u0441\u0435\u043a\u0443\u043d\u0434`\n\n        })\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"549\" height=\"253\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/d8cba56ee50a670f79cdff519a50f671.png\" alt=\"\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0430\u0443\u0434\u0438\u043e-\u0444\u0430\u0439\u043b\u043e\u043c\" class=\"wp-image-520\" title=\"\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0430\u0443\u0434\u0438\u043e-\u0444\u0430\u0439\u043b\u043e\u043c\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/d8cba56ee50a670f79cdff519a50f671.png 549w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/d8cba56ee50a670f79cdff519a50f671-300x138.png 300w\" sizes=\"auto, (max-width: 549px) 100vw, 549px\" \/><figcaption class=\"wp-element-caption\">\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0430\u0443\u0434\u0438\u043e-\u0444\u0430\u0439\u043b\u043e\u043c<\/figcaption><\/figure>\n\n\n\n<p>\u0422\u0435\u043b\u0435\u0433\u0440\u0430\u043c-\u0441\u0435\u0440\u0432\u0435\u0440 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043f\u043e\u0445\u043e\u0436\u0438\u0439 \u043d\u0430 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u043e\u0431\u044a\u0435\u043a\u0442:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-json\" data-line=\"\">{\n  message_id: 653,\n  from: {\n    id: 764548588,\n    is_bot: false,\n    first_name: &#039;shavrin&#039;,\n    username: &#039;zloishavrin&#039;,\n    language_code: &#039;ru&#039;\n  },\n  chat: {\n    id: 764548588,\n    first_name: &#039;shavrin&#039;,\n    username: &#039;zloishavrin&#039;,\n    type: &#039;private&#039;\n  },\n  date: 1686339341,\n  audio: {\n    duration: 1,\n    file_name: &#039;audio.mp3&#039;,\n    mime_type: &#039;audio\/mpeg&#039;,\n    file_id: &#039;CQACAgIAAxkBAAICjWSDfw0AAZdXcrZjG-2n840P-NqNIQACOzEAAi3wIUh2fGtPn59fBi8E&#039;,\n    file_unique_id: &#039;AgADOzEAAi3wIUg&#039;,\n    file_size: 19776\n  }\n}<\/code><\/pre>\n\n\n\n<p>\u0425\u043e\u0447\u0443 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0441\u043a\u0438\u043d\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0438\u0434\u0435\u043e, \u0444\u043e\u0442\u043e \u0438\u043b\u0438 \u0430\u0443\u0434\u0438\u043e \u043e\u0434\u043d\u0438\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435\u043c, \u0442\u043e \u043e\u043d\u0438 \u043d\u0435 \u0432\u0435\u0440\u043d\u0443\u0442\u0441\u044f \u0412\u0430\u043c \u043e\u0434\u043d\u0438\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435\u043c \u0441 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c audio \u0438\u043b\u0438 video-\u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u0435\u0439 \u0438 \u044d\u0442\u0438 \u0444\u0430\u0439\u043b\u044b \u0431\u0443\u0434\u0443\u0442 \u0441\u0447\u0438\u0442\u0430\u0442\u044c\u0441\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u043c\u0438 \u0438 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u0431\u0443\u0434\u0443\u0442 \u0442\u0430\u043a\u0436\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e.<\/p>\n\n\n\n<p>\u0421 \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u044b\u043c\u0438 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u0430\u044f, \u043d\u0438\u0447\u0435\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0433\u043e:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\u2b50\ufe0f \u0413\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435&#039;) {\n\n    await bot.sendVoice(msg.chat.id, &#039;.\/audio.mp3&#039;, {\n\n        caption: &#039;&lt;b&gt;\u2b50\ufe0f \u0413\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435&lt;\/b&gt;&#039;,\n        parse_mode: &#039;HTML&#039;\n\n    });\n\n}<\/code><\/pre>\n\n\n\n<p>\u0418 \u0442\u0430\u043a\u0436\u0435 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u044b\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;voice&#039;, async voice =&gt; {\n\n    try {\n\n        await bot.sendAudio(voice.chat.id, voice.voice.file_id, {\n\n            caption: `\u0412\u0435\u0441 \u0444\u0430\u0439\u043b\u0430: ${voice.voice.file_size} \u0431\u0430\u0439\u0442\\n\u0414\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0430\u0443\u0434\u0438\u043e: ${voice.voice.duration} \u0441\u0435\u043a\u0443\u043d\u0434`\n\n        })\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"547\" height=\"212\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/ae67b50fe069dbeda559d88fb5001eff.png\" alt=\"\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u044b\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f\" class=\"wp-image-521\" title=\"\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u044b\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/ae67b50fe069dbeda559d88fb5001eff.png 547w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/ae67b50fe069dbeda559d88fb5001eff-300x116.png 300w\" sizes=\"auto, (max-width: 547px) 100vw, 547px\" \/><figcaption class=\"wp-element-caption\">\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u044b\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c, \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u043c \u0438 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u043a\u043e\u043d\u0442\u0430\u043a\u0442<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u0414\u0430\u043b\u044c\u0448\u0435 \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c\u0441\u044f \u0441 \u0442\u0435\u043c, \u043a\u0430\u043a \u0441\u043a\u0438\u043d\u0443\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043a\u043e\u043d\u0442\u0430\u043a\u0442. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u043a\u043d\u043e\u043f\u043a\u0443 &#171;\u2b50\ufe0f \u041a\u043e\u043d\u0442\u0430\u043a\u0442&#187;, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043c\u0435\u0442\u043e\u0434 sendContact, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0434\u0438\u043c \u0441\u0442\u0440\u043e\u043a\u0443 \u0441 \u043d\u043e\u043c\u0435\u0440\u043e\u043c \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u0438 \u0438\u043c\u0435\u043d\u0435\u043c \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u0430:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\u2b50\ufe0f \u041a\u043e\u043d\u0442\u0430\u043a\u0442&#039;) {\n\n    \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u043a\u043e\u043d\u0442\u0430\u043a\u0442\n    await bot.sendContact(msg.chat.id, process.env.CONTACT, `\u041a\u043e\u043d\u0442\u0430\u043a\u0442`, {\n\n        reply_to_message_id: msg.message_id\n\n    });\n\n}<\/code><\/pre>\n\n\n\n<p>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0432 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u0435 \u0441\u0442\u043e\u0438\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u0444\u043e\u0440\u043c\u0430\u0442 \u043d\u043e\u043c\u0435\u0440\u0430, \u0438 \u0435\u0441\u043b\u0438 \u043c\u044b \u0443\u043a\u0430\u0436\u0435\u043c \u043d\u0435 \u043d\u043e\u043c\u0435\u0440, \u0442\u043e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c \u0432\u0435\u0440\u043d\u0451\u0442 \u043d\u0430\u043c \u043e\u0448\u0438\u0431\u043a\u0443.<\/p>\n\n\n\n<p>\u0422\u0430\u043a\u0436\u0435 \u044f \u0434\u043e\u0431\u0430\u0432\u0438\u043b \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 reply_to_message_id &#8212; \u0432 \u044d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c message_id \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u043e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435\u043c, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u043c message_id.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"555\" height=\"191\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/8de3c873bca7992144ed12fd46c6d1ac.png\" alt=\"\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\" class=\"wp-image-523\" title=\"\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/8de3c873bca7992144ed12fd46c6d1ac.png 555w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/8de3c873bca7992144ed12fd46c6d1ac-300x103.png 300w\" sizes=\"auto, (max-width: 555px) 100vw, 555px\" \/><figcaption class=\"wp-element-caption\">\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u043a\u043e\u043d\u0442\u0430\u043a\u0442<\/figcaption><\/figure>\n\n\n\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u043c \u043d\u0430\u0448\u0443 \u043a\u043d\u043e\u043f\u043a\u0443. \u0418 \u0432\u043c\u0435\u0441\u0442\u043e \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0442\u044c \u043a\u043e\u043d\u0442\u0430\u043a\u0442, \u043c\u044b \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0431\u0443\u0434\u0435\u043c \u0435\u0433\u043e \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044c, \u0430 \u0437\u0430\u0442\u0435\u043c \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u043c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u043a\u043e\u043c\u0430\u043d\u0434\u044b &#171;\/menu&#187;, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043c\u044b \u043f\u0440\u0438\u0441\u044b\u043b\u0430\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043d\u0430\u0448\u0443 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0443:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\/menu&#039;) {\n\n    await bot.sendMessage(msg.chat.id, `\u041c\u0435\u043d\u044e \u0431\u043e\u0442\u0430`, {\n\n        reply_markup: {\n\n            keyboard: [\n\n                [&#039;\u2b50\ufe0f \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430&#039;, &#039;\u2b50\ufe0f \u0412\u0438\u0434\u0435\u043e&#039;],\n                [&#039;\u2b50\ufe0f \u0410\u0443\u0434\u0438\u043e&#039;, &#039;\u2b50\ufe0f \u0413\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435&#039;],\n                [{text: &#039;\u2b50\ufe0f \u041a\u043e\u043d\u0442\u0430\u043a\u0442&#039;, request_contact: true}, &#039;\u2b50\ufe0f \u0413\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044f&#039;],\n                [&#039;\u274c \u0417\u0430\u043a\u0440\u044b\u0442\u044c \u043c\u0435\u043d\u044e&#039;]\n\n            ],\n            resize_keyboard: true\n\n        }\n\n    })\n\n}<\/code><\/pre>\n\n\n\n<p>\u041a\u0430\u043a \u0432\u0438\u0434\u0438\u0442\u0435, \u0442\u0435\u043f\u0435\u0440\u044c \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u043c \u0432\u043c\u0435\u0441\u0442\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u0442\u0440\u043e\u043a\u0438 &#8216;\u2b50\ufe0f \u041a\u043e\u043d\u0442\u0430\u043a\u0442&#8217; \u043e\u0431\u044a\u0435\u043a\u0442 \u0441 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438 text \u0438 request_contact, \u0442\u0435\u043c \u0441\u0430\u043c\u044b\u043c \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u044f \u043a\u043e\u043d\u0442\u0430\u043a\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0438 \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"387\" height=\"174\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/5baf8f1dc09813afb022ff941f025e8d.png\" alt=\"\u0411\u043e\u0442 \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442 \u043a\u043e\u043d\u0442\u0430\u043a\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\" class=\"wp-image-524\" title=\"\u0411\u043e\u0442 \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442 \u043a\u043e\u043d\u0442\u0430\u043a\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/5baf8f1dc09813afb022ff941f025e8d.png 387w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/5baf8f1dc09813afb022ff941f025e8d-300x135.png 300w\" sizes=\"auto, (max-width: 387px) 100vw, 387px\" \/><figcaption class=\"wp-element-caption\">\u0411\u043e\u0442 \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442 \u043a\u043e\u043d\u0442\u0430\u043a\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f<\/figcaption><\/figure>\n\n\n\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u043a\u043e\u043d\u0442\u0430\u043a\u0442. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c \u0441 \u0442\u0438\u043f\u043e\u043c &#171;contact&#187;. \u042d\u0442\u043e\u0442 \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c \u0432\u0435\u0440\u043d\u0451\u0442 \u043d\u0430\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043e\u0431\u044a\u0435\u043a\u0442, \u0435\u0441\u043b\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0441\u043a\u0438\u043d\u0443\u043b \u043a\u043e\u043d\u0442\u0430\u043a\u0442:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-json\" data-line=\"\">{\n  message_id: ID_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f,\n  from: {\n    id: ID_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    is_bot: false,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    language_code: &#039;ru&#039;\n  },\n  chat: {\n    id: ID_\u0427\u0410\u0422\u0410,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    type: &#039;private&#039;\n  },\n  date: \u0414\u0410\u0422\u0410,\n  reply_to_message: {\n    message_id: ID_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f_\u0412_\u041a\u041e\u0422\u041e\u0420\u041e\u041c_\u0421\u041a\u0418\u0414\u042b\u0412\u0410\u041b\u0418_\u041a\u041d\u041e\u041f\u041a\u0423,\n    from: {\n      id: ID_\u0411\u041e\u0422\u0410,\n      is_bot: true,\n      first_name: \u0418\u041c\u042f_\u0411\u041e\u0422\u0410,\n      username: \u041d\u0418\u041a_\u0411\u041e\u0422\u0410\n    },\n    chat: {\n      id: ID_\u0427\u0410\u0422\u0410,\n      first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n      username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n      type: &#039;private&#039;\n    },\n    date: \u0414\u0410\u0422\u0410_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f_\u0412_\u041a\u041e\u0422\u041e\u0420\u041e\u041c_\u0421\u041a\u0418\u0414\u042b\u0412\u0410\u041b\u0418_\u041a\u041d\u041e\u041f\u041a\u0423,\n    text: \u0422\u0415\u041a\u0421\u0422_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f_\u0412_\u041a\u041e\u0422\u041e\u0420\u041e\u041c_\u0421\u041a\u0418\u0414\u042b\u0412\u0410\u041b\u0418_\u041a\u041d\u041e\u041f\u041a\u0423\n  },\n  contact: {\n    phone_number: \u041d\u041e\u041c\u0415\u0420_\u041a\u041e\u041d\u0422\u0410\u041a\u0422\u0410,\n    first_name: \u0418\u041c\u042f_\u041a\u041e\u041d\u0422\u0410\u041a\u0422\u0410,\n    user_id: ID_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f\n  }\n}<\/code><\/pre>\n\n\n\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u044d\u0442\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c: \u043a\u043e\u0433\u0434\u0430 \u0431\u043e\u0442\u0443 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u043a\u043e\u043d\u0442\u0430\u043a\u0442, \u0431\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u043d\u043e\u043c\u0435\u0440 \u0438 \u0438\u043c\u044f \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u0430, \u043e\u0442\u0432\u0435\u0447\u0430\u044f \u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u043c:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;contact&#039;, async contact =&gt; {\n\n    try {\n\n        await bot.sendMessage(contact.chat.id, `\u041d\u043e\u043c\u0435\u0440 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u0430: ${contact.contact.phone_number}\\n\u0418\u043c\u044f \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u0430: ${contact.contact.first_name}`);\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<p>\u0412\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0442\u0430\u043a:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"552\" height=\"162\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/84da8183b7c47d2c350596fe1fb12872.png\" alt=\"\u0411\u043e\u0442 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u043c\" class=\"wp-image-522\" title=\"\u0411\u043e\u0442 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u043c\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/84da8183b7c47d2c350596fe1fb12872.png 552w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/84da8183b7c47d2c350596fe1fb12872-300x88.png 300w\" sizes=\"auto, (max-width: 552px) 100vw, 552px\" \/><figcaption class=\"wp-element-caption\">\u0411\u043e\u0442 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u043c<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c, \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u043c \u0438 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044e<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u043d\u0430\u0436\u0430\u0442\u0438\u0435 \u043a\u043d\u043e\u043f\u043a\u0438 &#171;\u2b50\ufe0f \u0413\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044f&#187; \u0438 \u0431\u0443\u0434\u0435\u043c \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044e \u041a\u0440\u0430\u0441\u043d\u043e\u0439 \u041f\u043b\u043e\u0449\u0430\u0434\u0438, \u0443\u043a\u0430\u0437\u0430\u0432 \u0448\u0438\u0440\u043e\u0442\u0443 \u0438 \u0434\u043e\u043b\u0433\u043e\u0442\u0443 \u043d\u0443\u0436\u043d\u043e\u0439 \u043d\u0430\u043c \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\u2b50\ufe0f \u0413\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044f&#039;) {\n\n    const latitudeOfRedSquare = 55.753700;\n    const longitudeOfReadSquare = 37.621250;\n\n    await bot.sendLocation(msg.chat.id, latitudeOfRedSquare, longitudeOfReadSquare, {\n\n        reply_to_message_id: msg.message_id\n\n    })\n\n}<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1145\" height=\"422\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/1d22ef99d16f0839ad20a045b30fddae.png\" alt=\"\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044e\" class=\"wp-image-534\" title=\"\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044e\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/1d22ef99d16f0839ad20a045b30fddae.png 1145w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/1d22ef99d16f0839ad20a045b30fddae-300x111.png 300w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/1d22ef99d16f0839ad20a045b30fddae-1024x377.png 1024w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/1d22ef99d16f0839ad20a045b30fddae-768x283.png 768w\" sizes=\"auto, (max-width: 1145px) 100vw, 1145px\" \/><figcaption class=\"wp-element-caption\">\u0411\u043e\u0442 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044e<\/figcaption><\/figure>\n\n\n\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u043d\u0451\u043c \u0442\u043e\u0436\u0435 \u0441\u0430\u043c\u043e\u0435, \u0447\u0442\u043e \u043c\u044b \u0434\u0435\u043b\u0430\u043b\u0438 \u0441 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u0430\u043c\u0438, \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u0438 &#8212; \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u0437\u0430\u043f\u0440\u043e\u0441 \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u0438 \u043f\u043e \u043a\u043d\u043e\u043f\u043a\u0435 \u0438 \u0431\u0443\u0434\u0435\u043c \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u0432 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u0435\u0439 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u0438 (\u0448\u0438\u0440\u043e\u0442\u0443 \u0438 \u0434\u043e\u043b\u0433\u043e\u0442\u0443). \u041d\u0430\u0447\u043d\u0451\u043c \u0441 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u043c \u043a\u043d\u043e\u043f\u043a\u0443 &#171;\u2b50\ufe0f \u0413\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044f&#187;:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\/menu&#039;) {\n\n    await bot.sendMessage(msg.chat.id, `\u041c\u0435\u043d\u044e \u0431\u043e\u0442\u0430`, {\n\n        reply_markup: {\n\n            keyboard: [\n\n                [&#039;\u2b50\ufe0f \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430&#039;, &#039;\u2b50\ufe0f \u0412\u0438\u0434\u0435\u043e&#039;],\n                [&#039;\u2b50\ufe0f \u0410\u0443\u0434\u0438\u043e&#039;, &#039;\u2b50\ufe0f \u0413\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435&#039;],\n                [{text: &#039;\u2b50\ufe0f \u041a\u043e\u043d\u0442\u0430\u043a\u0442&#039;, request_contact: true}, {text: &#039;\u2b50\ufe0f \u0413\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044f&#039;, request_location: true}],\n                [&#039;\u274c \u0417\u0430\u043a\u0440\u044b\u0442\u044c \u043c\u0435\u043d\u044e&#039;]\n\n            ],\n            resize_keyboard: true\n\n        }\n\n    })\n\n}<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1080\" height=\"427\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/03461519d85824f66474cbd0c0f20268.png\" alt=\"\u0411\u043e\u0442 \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442 \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044e\" class=\"wp-image-532\" title=\"\u0411\u043e\u0442 \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442 \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044e\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/03461519d85824f66474cbd0c0f20268.png 1080w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/03461519d85824f66474cbd0c0f20268-300x119.png 300w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/03461519d85824f66474cbd0c0f20268-1024x405.png 1024w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/03461519d85824f66474cbd0c0f20268-768x304.png 768w\" sizes=\"auto, (max-width: 1080px) 100vw, 1080px\" \/><figcaption class=\"wp-element-caption\">\u0411\u043e\u0442 \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442 \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044e<\/figcaption><\/figure>\n\n\n\n<p>\u0414\u0430\u043b\u0435\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0441 \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u0435\u0439. \u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u0435\u0439 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043e\u0431\u044a\u0435\u043a\u0442:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-json\" data-line=\"\">{\n  message_id: ID_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f,\n  from: {\n    id: ID_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    is_bot: false,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    language_code: &#039;ru&#039;\n  },\n  chat: {\n    id: ID_\u0427\u0410\u0422\u0410,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    type: &#039;private&#039;\n  },\n  date: \u0414\u0410\u0422\u0410,\n  reply_to_message: {\n    message_id: ID_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f_\u0412_\u041a\u041e\u0422\u041e\u0420\u041e\u041c_\u0421\u041a\u0418\u0414\u042b\u0412\u0410\u041b\u0418_\u041a\u041d\u041e\u041f\u041a\u0423,\n    from: {\n      id: ID_\u0411\u041e\u0422\u0410,\n      is_bot: true,\n      first_name: \u0418\u041c\u042f_\u0411\u041e\u0422\u0410,\n      username: \u041d\u0418\u041a_\u0411\u041e\u0422\u0410\n    },\n    chat: {\n      id: ID_\u0427\u0410\u0422\u0410,\n      first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n      username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n      type: &#039;private&#039;\n    },\n    date: \u0414\u0410\u0422\u0410_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f_\u0412_\u041a\u041e\u0422\u041e\u0420\u041e\u041c_\u0421\u041a\u0418\u0414\u042b\u0412\u0410\u041b\u0418_\u041a\u041d\u041e\u041f\u041a\u0423,\n    text: \u0422\u0415\u041a\u0421\u0422_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f_\u0412_\u041a\u041e\u0422\u041e\u0420\u041e\u041c_\u0421\u041a\u0418\u0414\u042b\u0412\u0410\u041b\u0418_\u041a\u041d\u041e\u041f\u041a\u0423\n  },\n  location: { latitude: \u0428\u0418\u0420\u041e\u0422\u0410_\u0413\u0415\u041e\u041b\u041e\u041a\u0410\u0426\u0418\u0418, longitude: \u0414\u041e\u041b\u0413\u041e\u0422\u0410_\u0413\u0415\u041e\u041b\u041e\u041a\u0410\u0426\u0418\u0418 }\n}<\/code><\/pre>\n\n\n\n<p>\u0421\u0434\u0435\u043b\u0430\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;location&#039;, async location =&gt; {\n\n    try {\n\n        await bot.sendMessage(location.chat.id, `\u0428\u0438\u0440\u043e\u0442\u0430: ${location.location.latitude}\\n\u0414\u043e\u043b\u0433\u043e\u0442\u0430: ${location.location.longitude}`);\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"548\" height=\"375\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/6e49915bd9de1e45e19dd4ee70bb8f59.png\" alt=\"\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u0435\u0439\" class=\"wp-image-525\" title=\"\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u0435\u0439\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/6e49915bd9de1e45e19dd4ee70bb8f59.png 548w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/6e49915bd9de1e45e19dd4ee70bb8f59-300x205.png 300w\" sizes=\"auto, (max-width: 548px) 100vw, 548px\" \/><figcaption class=\"wp-element-caption\">\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u0435\u0439<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u0414\u0435\u043b\u0430\u0435\u043c \u0435\u0449\u0451 \u043e\u0434\u043d\u043e \u043c\u0435\u043d\u044e<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u0412\u044b\u0448\u0435 \u044f \u0443\u0436\u0435 \u0433\u043e\u0432\u043e\u0440\u0438\u043b, \u0447\u0442\u043e \u043c\u0435\u043d\u044e \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0432\u0438\u0434\u043e\u0432. \u0412\u044b\u0448\u0435 \u043c\u044b \u0443\u0436\u0435 \u0441\u043e\u0437\u0434\u0430\u043b\u0438 \u043c\u0435\u043d\u044e-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0443 \u0438 \u043c\u0435\u043d\u044e \u043a\u043e\u043c\u0430\u043d\u0434. \u0422\u0435\u043f\u0435\u0440\u044c \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043c\u0435\u043d\u044e, \u043a\u0430\u043a \u044f \u043f\u0438\u0441\u0430\u043b \u0432\u044b\u0448\u0435, \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d\u043d\u043e\u0435 \u043a \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044e. \u0414\u0430\u043b\u0435\u0435 \u0431\u0443\u0434\u0435\u043c \u043d\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u044d\u0442\u043e \u0438\u043d\u043b\u0430\u0439\u043d-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043d\u043e\u0432\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u0435\u0451:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\/second_menu&#039;) {\n\n    await bot.sendMessage(msg.chat.id, `\u0412\u0442\u043e\u0440\u043e\u0435 \u043c\u0435\u043d\u044e`, {\n\n        reply_markup: {\n\n            inline_keyboard: [\n\n                [{text: &#039;\u0421\u0442\u0438\u043a\u0435\u0440&#039;, callback_data: &#039;sticker&#039;}, {text: &#039;\u041a\u0440\u0443\u0433\u043b\u043e\u0435 \u0412\u0438\u0434\u0435\u043e&#039;, callback_data: &#039;circleVideo&#039;}],\n                [{text: &#039;\u041a\u0443\u043f\u0438\u0442\u044c \u0424\u0430\u0439\u043b&#039;, callback_data: &#039;buyFile&#039;}],\n                [{text: &#039;\u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u041f\u043e\u0434\u043f\u0438\u0441\u043a\u0443&#039;, callback_data: &#039;checkSubs&#039;}],\n                [{text: &#039;\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u041c\u0435\u043d\u044e&#039;, callback_data: &#039;closeMenu&#039;}]\n\n            ]\n\n        }\n\n    })\n\n}<\/code><\/pre>\n\n\n\n<p>\u041a\u0430\u043a \u0432\u0438\u0434\u0438\u043c \u043c\u044b \u0442\u0430\u043a\u0436\u0435, \u043a\u0430\u043a \u0441 \u043e\u0431\u044b\u0447\u043d\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u043e\u0439, \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u043c\u0430\u0441\u0441\u0438\u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u0435 reply_markup. \u041a\u0430\u0436\u0434\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0432 inline_keyboard &#8212; \u044d\u0442\u043e \u043d\u043e\u0432\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u0432 \u043c\u0435\u043d\u044e. \u0412 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u043e\u0431\u044b\u0447\u043d\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b, \u043c\u044b \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u043c \u0432 \u043c\u0430\u0441\u0441\u0438\u0432 \u043d\u0435 \u0441\u0442\u0440\u043e\u043a\u0438, \u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u0441 \u0442\u0435\u043a\u0441\u0442\u043e\u043c \u0438 callback_data. \u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u043d\u0430\u0436\u0430\u0442\u0438\u044f \u043a\u043d\u043e\u043f\u043e\u043a \u043d\u0435 \u043e\u0431\u044b\u0447\u043d\u044b\u043c \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435\u043c, \u0430 \u0443\u0436\u0435 \u043a\u043e\u043b\u043b\u0431\u0435\u043a\u0430\u043c\u0438. \u0412\u043e\u0442 \u0442\u0430\u043a \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u0430\u044f \u043d\u0430\u043c\u0438 \u0438\u043d\u043b\u0430\u0439\u043d-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"365\" height=\"234\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/419b1554a84b4b76223f996cd1ec4371.png\" alt=\"\u0418\u043d\u043b\u0430\u0439\u043d-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430\" class=\"wp-image-527\" title=\"\u0418\u043d\u043b\u0430\u0439\u043d-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/419b1554a84b4b76223f996cd1ec4371.png 365w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/419b1554a84b4b76223f996cd1ec4371-300x192.png 300w\" sizes=\"auto, (max-width: 365px) 100vw, 365px\" \/><figcaption class=\"wp-element-caption\">\u0418\u043d\u043b\u0430\u0439\u043d-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430<\/figcaption><\/figure>\n\n\n\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043a\u043d\u043e\u043f\u043a\u0443 &#171;\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u041c\u0435\u043d\u044e&#187;. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c \u0441 \u0442\u0438\u043f\u043e\u043c &#171;callback_query&#187;:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;callback_query&#039;, async ctx =&gt; {\n\n    try {\n\n        console.log(ctx);\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<p>\u041a\u043e\u043b\u043b\u0431\u0435\u043a\u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u044e\u0442 \u043d\u0430\u043c \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043e\u0431\u044a\u0435\u043a\u0442:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-json\" data-line=\"\">{\n  id: ID_\u041a\u041e\u041b\u041b\u0411\u0415\u041a\u0410,\n  from: {\n    id: ID_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    is_bot: false,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    language_code: &#039;ru&#039;\n  },\n  message: {\n    message_id: ID_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f,\n    from: {\n      id: ID_\u0411\u041e\u0422\u0410,\n      is_bot: true,\n      first_name: \u0418\u041c\u042f_\u0411\u041e\u0422\u0410,\n      username: \u041d\u0418\u041a_\u0411\u041e\u0422\u0410\n    },\n    chat: {\n      id: ID_\u0427\u0410\u0422\u0410,\n      first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n      username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n      type: &#039;private&#039;\n    },\n    date: \u0414\u0410\u0422\u0410,\n    text: \u0422\u0415\u041a\u0421\u0422_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f,\n    reply_markup: { inline_keyboard: [Array] }\n  },\n  chat_instance: \u0417\u0410\u0412\u0418\u0421\u0418\u041c\u042b\u0419_\u0427\u0410\u0422,\n  data: \u041a\u041e\u041b\u041b\u0411\u0415\u041a_\u0414\u0410\u0422\u0410\n}<\/code><\/pre>\n\n\n\n<p>\u041a\u0430\u043a \u0432\u0438\u0434\u0438\u043c, \u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u0435 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438, \u043a \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0430, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043d\u0430\u0436\u0430\u043b\u0438, \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u0436\u0430\u043b \u043a\u043d\u043e\u043f\u043a\u0443, \u0438 \u0441\u0430\u043c\u043e\u0435 \u0432\u0430\u0436\u043d\u043e\u0435 &#8212; callback_data, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u044b \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u043b\u0438 \u0432 \u043a\u043d\u043e\u043f\u043a\u0435. \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0432\u043e\u0442 \u044d\u0442\u043e\u0433\u043e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 callback_data \u0431\u0443\u0434\u0435\u043c \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043d\u0430\u0436\u0430\u0442\u0438\u0435 \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;callback_query&#039;, async ctx =&gt; {\n\n    try {\n\n        switch(ctx.data) {\n\n            case &quot;closeMenu&quot;:\n\n                await bot.deleteMessage(ctx.message.chat.id, ctx.message.message_id);\n                break;\n\n        }\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u043c\u044b \u0443\u0434\u0430\u043b\u044f\u0435\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u043d\u0430\u0448\u0435\u0439 \u0438\u043d\u043b\u0430\u0439\u043d-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u043e\u0439 \u043f\u043e \u043d\u0430\u0436\u0430\u0442\u0438\u044e \u043a\u043d\u043e\u043f\u043a\u0438 &#171;\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u041c\u0435\u043d\u044e&#187;. \u0414\u0430\u043b\u044c\u0448\u0435 \u0432 \u044d\u0442\u043e\u043c \u0436\u0435 \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u0435 \u0431\u0443\u0434\u0435\u043c \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043d\u0430\u0436\u0430\u0442\u0438\u044f \u0434\u0440\u0443\u0433\u0438\u0445 \u043a\u043d\u043e\u043f\u043e\u043a \u043f\u043e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0443 callback_data.<\/p>\n\n\n\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u0443\u0435\u043c \u0432\u0441\u0451 \u044d\u0442\u043e \u0434\u0435\u043b\u043e. \u0418 \u043d\u0430\u0448\u0435 \u043c\u0435\u043d\u044e \u0431\u0443\u0434\u0435\u043c \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0442\u044c \u043d\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435\u043c \u043f\u043e \u043a\u043e\u043c\u0430\u043d\u0434\u0435, \u0430 \u0432 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435-\u043a\u043e\u043c\u0430\u043d\u0434\u0443:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(msg.text == &#039;\/second_menu&#039;) {\n\n    await bot.sendMessage(msg.chat.id, `\u0412\u0442\u043e\u0440\u043e\u0435 \u043c\u0435\u043d\u044e`, {\n\n        reply_markup: {\n\n            inline_keyboard: [\n\n                [{text: &#039;\u0421\u0442\u0438\u043a\u0435\u0440&#039;, callback_data: &#039;sticker&#039;}, {text: &#039;\u041a\u0440\u0443\u0433\u043b\u043e\u0435 \u0412\u0438\u0434\u0435\u043e&#039;, callback_data: &#039;circleVideo&#039;}],\n                [{text: &#039;\u041a\u0443\u043f\u0438\u0442\u044c \u0424\u0430\u0439\u043b&#039;, callback_data: &#039;buyFile&#039;}],\n                [{text: &#039;\u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u041f\u043e\u0434\u043f\u0438\u0441\u043a\u0443&#039;, callback_data: &#039;checkSubs&#039;}],\n                [{text: &#039;\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u041c\u0435\u043d\u044e&#039;, callback_data: &#039;closeMenu&#039;}]\n\n            ]\n\n        },\n        reply_to_message_id: msg.message_id\n\n    })\n\n}<\/code><\/pre>\n\n\n\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435: \u0432 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0435 \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f \u043c\u0435\u043d\u044e \u0443\u0434\u0430\u043b\u044f\u0442\u044c \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0441\u0430\u043c\u0438\u043c \u043c\u0435\u043d\u044e, \u0430 \u0435\u0449\u0451 \u0438 \u0443\u0434\u0430\u043b\u044f\u0442\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435-\u043a\u043e\u043c\u0430\u043d\u0434\u0443, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u0431\u044b\u043b\u043e \u0432\u044b\u0437\u0432\u0430\u043d\u043e \u043c\u0435\u043d\u044e:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">case &quot;closeMenu&quot;:\n\n  await bot.deleteMessage(ctx.message.chat.id, ctx.message.message_id);\n  await bot.deleteMessage(ctx.message.reply_to_message.chat.id, ctx.message.reply_to_message.message_id);\n  break;<\/code><\/pre>\n\n\n\n<p>\u041c\u044b \u043c\u043e\u0436\u0435\u043c \u0442\u0430\u043a\u043e\u0435 \u0441\u0434\u0435\u043b\u0430\u0442\u044c, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0442\u043e\u0433\u0434\u0430 \u043d\u0430\u0448 \u043a\u043e\u043b\u043b\u0431\u0435\u043a \u0431\u0443\u0434\u0435\u0442 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043e\u0431\u044a\u0435\u043a\u0442:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-json\" data-line=\"\">{\n  id: ID_\u041a\u041e\u041b\u041b\u0411\u0415\u041a\u0410,\n  from: {\n    id: ID_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    is_bot: false,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    language_code: &#039;ru&#039;\n  },\n  message: {\n    message_id: ID_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f,\n    from: {\n      id: ID_\u0411\u041e\u0422\u0410,\n      is_bot: true,\n      first_name: \u0418\u041c\u042f_\u0411\u041e\u0422\u0410,\n      username: \u041d\u0418\u041a_\u0411\u041e\u0422\u0410\n    },\n    chat: {\n      id: ID_\u0427\u0410\u0422\u0410,\n      first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n      username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n      type: &#039;private&#039;\n    },\n    date: \u0414\u0410\u0422\u0410,\n    reply_to_message: {\n      message_id: ID_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f_2,\n      from: [Object],\n      chat: [Object],\n      date: \u0414\u0410\u0422\u0410,\n      text: \u041a\u041e\u041c\u0410\u041d\u0414\u0410_\u0412\u042b\u0417\u041e\u0412\u0410_\u041c\u0415\u041d\u042e,\n      entities: [Array]\n    },\n    text: \u0422\u0415\u041a\u0421\u0422_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f,\n    reply_markup: { inline_keyboard: [Array] }\n  },\n  chat_instance: \u0417\u0410\u0412\u0418\u0421\u0418\u041c\u042b\u0419_\u0427\u0410\u0422,\n  data: \u041a\u041e\u041b\u041b\u0411\u0415\u041a_\u0414\u0410\u0422\u0410\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0438 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0441\u0442\u0438\u043a\u0435\u0440\u044b<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u0414\u0430\u043b\u0435\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u043d\u0430\u0436\u0430\u0442\u0438\u0435 \u043a\u043d\u043e\u043f\u043a\u0438 &#171;\u0421\u0442\u0438\u043a\u0435\u0440&#187; \u043d\u0430 \u043d\u0430\u0448\u0435\u0439 \u0438\u043d\u043b\u0430\u0439\u043d-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0435. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434 sendSticker:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">case &quot;sticker&quot;:\n\n  await bot.sendSticker(ctx.message.chat.id, `.\/image.jpg`);\n  break;<\/code><\/pre>\n\n\n\n<p>\u0425\u043e\u0447\u0443 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c \u0432\u0430\u0448\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0441\u043a\u0438\u043d\u0443\u0442\u044c \u043b\u044e\u0431\u043e\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441\u0442\u0438\u043a\u0435\u0440\u043e\u043c, \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e \u0442\u043e\u043c\u0443, \u043a\u0430\u043a \u043c\u044b \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u043b\u0438 \u0441 \u043c\u0435\u0442\u043e\u0434\u043e\u043c sendPhoto.<\/p>\n\n\n\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0441\u043e \u0441\u0442\u0438\u043a\u0435\u0440\u043e\u043c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044f \u0441 \u0442\u0438\u043f\u043e\u043c &#171;sticker&#187;, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u043d\u0430\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043e\u0431\u044a\u0435\u043a\u0442:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-json\" data-line=\"\">{\n  message_id: ID_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f,\n  from: {\n    id: ID_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    is_bot: false,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    language_code: &#039;ru&#039;\n  },\n  chat: {\n    id: ID_\u0427\u0410\u0422\u0410,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    type: &#039;private&#039;\n  },\n  date: \u0414\u0410\u0422\u0410,\n  sticker: {\n    width: \u0428\u0418\u0420\u0418\u041d\u0410_\u0421\u0422\u0418\u041a\u0415\u0420\u0410,\n    height: \u0414\u041b\u0418\u041d\u0410_\u0421\u0422\u0418\u041a\u0415\u0420\u0410,\n    emoji: &#039;\ud83d\ude0a&#039;, \/\/\u042d\u041c\u041e\u0414\u0417\u0418 \u041a \u041a\u041e\u0422\u041e\u0420\u041e\u041c\u0423 \u041f\u0420\u0418\u0412\u042f\u0417\u0410\u041d \u0421\u0422\u0418\u041a\u0415\u0420\n    set_name: \u0418\u041c\u042f_\u0421\u0422\u0418\u041a\u0415\u0420\u0410,\n    is_animated: false, \/\/\u0411\u0423\u041b\u0415\u0412\u0410 \u041f\u0415\u0420\u0415\u041c\u0415\u041d\u041d\u0410\u042f, \u041a\u041e\u0422\u041e\u0420\u0410\u042f \u041e\u0422\u041e\u0411\u0420\u0410\u0416\u0410\u0415\u0422 \u0410\u041d\u0418\u041c\u0418\u0420\u041e\u0412\u0410\u041d \u0421\u0422\u0418\u041a\u0415\u0420 \u0418\u041b\u0418 \u041d\u0415\u0422\n    is_video: false, \/\/\u0411\u0423\u041b\u0415\u0412\u0410 \u041f\u0415\u0420\u0415\u041c\u0415\u041d\u041d\u0410\u042f, \u041a\u041e\u0422\u041e\u0420\u0410\u042f \u041e\u0422\u041e\u0411\u0420\u0410\u0416\u0410\u0415\u0422 \u0421\u0422\u0418\u041a\u0415\u0420 \u0412\u0418\u0414\u0415\u041e\u0424\u041e\u0420\u041c\u0410\u0422\u0410 \u0418\u041b\u0418 \u041d\u0415\u0422\n    type: &#039;regular&#039;,\n    thumbnail: {\n      file_id: ID_\u041c\u0418\u041d\u0418\u0410\u0422\u042e\u0420\u042b,\n      file_unique_id: \u0423\u041d\u0418\u041a\u0410\u041b\u042c\u041d\u042b\u0419_ID_\u041c\u0418\u041d\u0418\u0410\u0422\u042e\u0420\u042b,\n      file_size: \u0420\u0410\u0417\u041c\u0415\u0420_\u041c\u0418\u041d\u0418\u0410\u0422\u042e\u0420\u042b,\n      width: \u0428\u0418\u0420\u0418\u041d\u0410_\u041c\u0418\u041d\u0418\u0410\u0422\u042e\u0420\u042b,\n      height: \u0414\u041b\u0418\u041d\u0410_\u041c\u0418\u041d\u0418\u0410\u0422\u042e\u0420\u042b\n    },\n    thumb: {\n      file_id: ID_\u041c\u0418\u041d\u0418\u0410\u0422\u042e\u0420\u042b,\n      file_unique_id: \u0423\u041d\u0418\u041a\u0410\u041b\u042c\u041d\u042b\u0419_ID_\u041c\u0418\u041d\u0418\u0410\u0422\u042e\u0420\u042b,\n      file_size: \u0420\u0410\u0417\u041c\u0415\u0420_\u041c\u0418\u041d\u0418\u0410\u0422\u042e\u0420\u042b,\n      width: \u0428\u0418\u0420\u0418\u041d\u0410_\u041c\u0418\u041d\u0418\u0410\u0422\u042e\u0420\u042b,\n      height: \u0414\u041b\u0418\u041d\u0410_\u041c\u0418\u041d\u0418\u0410\u0422\u042e\u0420\u042b\n    },\n    file_id: ID_\u0424\u0410\u0419\u041b\u0410_\u0421\u0422\u0418\u041a\u0415\u0420\u0410,\n    file_unique_id: \u0423\u041d\u0418\u041a\u0410\u041b\u042c\u041d\u042b\u0419_ID_\u0424\u0410\u0419\u041b\u0410_\u0421\u0422\u0418\u041a\u0415\u0420\u0410,\n    file_size: \u0420\u0410\u0417\u041c\u0415\u0420_\u0424\u0410\u0419\u041b\u0410_\u0421\u0422\u0418\u041a\u0415\u0420\u0410\n  }\n}<\/code><\/pre>\n\n\n\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0442\u0435\u043f\u0435\u0440\u044c \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435: \u043a\u043e\u0433\u0434\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u0441\u0442\u0438\u043a\u0435\u0440, \u0431\u0443\u0434\u0435\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c, \u043a\u0430\u043a\u043e\u0433\u043e \u0432\u0438\u0434\u0430 \u0441\u0442\u0438\u043a\u0435\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0438\u0437 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 (\u0431\u0443\u043b\u0435\u0432\u044b \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435) \u0438 \u0431\u0443\u0434\u0435\u043c \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0442\u044c \u0441\u0442\u0438\u043a\u0435\u0440 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u043e\u0439, \u0432\u0438\u0434\u0435\u043e \u0438\u043b\u0438 \u0430\u043d\u0438\u043c\u0430\u0446\u0438\u0435\u0439:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;sticker&#039;, async sticker =&gt; {\n\n    try {\n\n        const stickerPath = await bot.downloadFile(sticker.sticker.file_id, &#039;.\/image&#039;);\n\n        if(sticker.sticker.is_video) {\n\n            await bot.sendVideo(sticker.chat.id, stickerPath);\n\n        }\n        else if(sticker.sticker.is_animated) {\n\n            await bot.sendAnimation(sticker.chat.id, stickerPath);\n\n        }\n        else {\n\n            await bot.sendPhoto(sticker.chat.id, stickerPath);\n\n        }\n\n        fs.unlink(stickerPath, error =&gt; {\n\n            if(error) {\n\n                console.log(error);\n\n            }\n\n        })\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"556\" height=\"704\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/ac6c72556f49d0ffe35ff3a1276a99dd.png\" alt=\"\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441\u043e \u0441\u0442\u0438\u043a\u0435\u0440\u043e\u043c\" class=\"wp-image-533\" title=\"\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441\u043e \u0441\u0442\u0438\u043a\u0435\u0440\u043e\u043c\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/ac6c72556f49d0ffe35ff3a1276a99dd.png 556w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/ac6c72556f49d0ffe35ff3a1276a99dd-237x300.png 237w\" sizes=\"auto, (max-width: 556px) 100vw, 556px\" \/><figcaption class=\"wp-element-caption\">\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441\u043e \u0441\u0442\u0438\u043a\u0435\u0440\u043e\u043c<\/figcaption><\/figure>\n\n\n\n<p>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u044f \u0441\u0434\u0435\u043b\u0430\u043b \u043d\u0435\u043a\u0440\u0430\u0441\u0438\u0432\u043e: \u0432 \u043b\u044e\u0431\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u0431\u0443\u0434\u044c \u0441\u0442\u0438\u043a\u0435\u0440 \u0430\u043d\u0438\u043c\u0430\u0446\u0435\u0439, \u0432\u0438\u0434\u0435\u043e \u0438\u043b\u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u043e\u0439 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u044e \u0444\u0430\u0439\u043b \u0432 \u043f\u0430\u043f\u043a\u0443 \u0441 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c &#171;image&#187; &#8212; \u0442\u0430\u043a \u043b\u0443\u0447\u0448\u0435, \u043a\u043e\u043d\u0435\u0447\u043d\u043e, \u043d\u0435 \u0434\u0435\u043b\u0430\u0442\u044c. \u0422\u0430\u043a\u0436\u0435 \u044f \u043d\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u044e \u0444\u0430\u0439\u043b\u044b \u043f\u043e file_id, \u0430 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u044e \u0438 \u0437\u0430\u0442\u0435\u043c \u0438\u0445 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u044e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0441\u043a\u0438\u043d\u0443\u0442\u044c \u0441\u0442\u0438\u043a\u0435\u0440-\u0444\u0430\u0439\u043b \u043f\u043e file_id \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043c\u0435\u0442\u043e\u0434\u044b sendPhoto \u0438\u043b\u0438 sendVideo, \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c \u0432\u0435\u0440\u043d\u0451\u0442 \u043e\u0448\u0438\u0431\u043a\u0443 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043d\u0435\u043b\u044c\u0437\u044f \u0441\u043a\u0438\u043d\u0443\u0442\u044c \u0444\u0430\u0439\u043b \u0442\u0438\u043f\u0430 &#171;\u0441\u0442\u0438\u043a\u0435\u0440&#187;, \u043a\u0430\u043a &#171;\u0444\u043e\u0442\u043e&#187; \u0438\u043b\u0438 &#171;\u0432\u0438\u0434\u0435\u043e&#187;, \u043e\u0434\u043d\u0430\u043a\u043e, \u043c\u0435\u0442\u043e\u0434 sendAnimation \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0441\u0442\u0438\u043a\u0435\u0440\u044b \u0430\u043d\u0438\u043c\u0430\u0446\u0438\u0435\u0439 \u043f\u043e \u0438\u0445 file_id, \u0442\u043e\u0433\u0434\u0430 \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">else if(sticker.sticker.is_animated) {\n\n    await bot.sendAnimation(sticker.chat.id, sticker.sticker.file_id);\n\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u041a\u0440\u0443\u0433\u043b\u043e\u0435 \u0432\u0438\u0434\u0435\u043e<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u043a\u043d\u043e\u043f\u043a\u0443 &#171;\u041a\u0440\u0443\u0433\u043b\u043e\u0435 \u0412\u0438\u0434\u0435\u043e&#187;, \u043f\u043e \u043d\u0430\u0436\u0430\u0442\u0438\u044e \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0431\u0443\u0434\u0435\u043c \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0432\u0438\u0434\u0435\u043e \u043a\u0440\u0443\u0433\u043b\u043e\u0433\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0430. \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u0435\u0442\u043e\u0434\u0430 sendVideoNote:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">case &quot;circleVideo&quot;:\n\n      await bot.sendVideoNote(ctx.message.chat.id, &#039;.\/video.mp4&#039;);\n      break;<\/code><\/pre>\n\n\n\n<p>\u0412 \u043e\u0431\u0449\u0435\u043c-\u0442\u043e \u0441 \u043a\u0440\u0443\u0433\u043b\u044b\u043c\u0438 \u0432\u0438\u0434\u0435\u043e \u043d\u0438\u0447\u0435\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0433\u043e \u043d\u0435\u0442\u0443 &#8212; \u0432\u0441\u0451 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e \u043e\u0431\u044b\u0447\u043d\u043e\u043c\u0443 \u0432\u0438\u0434\u0435\u043e. \u041a\u0441\u0442\u0430\u0442\u0438, \u0432 \u043e\u0431\u044a\u0435\u043a\u0442 \u043e\u043f\u0446\u0438\u0439 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 protect_content \u0441\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c true \u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442 \u043f\u0435\u0440\u0435\u0441\u044b\u043b\u0430\u0442\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">case &quot;circleVideo&quot;:\n\n  await bot.sendVideoNote(ctx.message.chat.id, &#039;.\/video.mp4&#039;, {\n\n      protect_content: true\n\n  });\n  break;<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0438 \u043d\u0430 \u043a\u0430\u043d\u0430\u043b<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u0414\u0430\u043b\u0435\u0435 \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c\u0441\u044f \u0441 \u0442\u0435\u043c, \u043a\u0430\u043a \u0441\u0434\u0435\u043b\u0430\u0442\u044c, \u0447\u0442\u043e\u0431\u044b \u0431\u043e\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u043b \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0443 \u043d\u0430 \u043a\u0430\u043d\u0430\u043b. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0431\u043e\u0442\u0430 \u0430\u0434\u043c\u0438\u043d\u043e\u043c \u043a\u0430\u043d\u0430\u043b\u0430, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0443 \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434 getChatMember:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">case &quot;checkSubs&quot;:\n\n  const subscribe = await bot.getChatMember(process.env.ID_CHAT, ctx.from.id);\n  console.log(subscribe);\n  break;<\/code><\/pre>\n\n\n\n<p>\u0412 \u044d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u043c ID \u043d\u0430\u0448\u0435\u0433\u043e \u043a\u0430\u043d\u0430\u043b\u0430 \u0438\u043b\u0438 \u0447\u0430\u0442\u0430 &#8212; \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u044d\u0442\u043e\u0442 ID \u043c\u043e\u0436\u043d\u043e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0441\u043a\u0438\u043d\u0443\u0432 \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u043a\u0430\u043d\u0430\u043b \u0438\u043b\u0438 \u0447\u0430\u0442 \u0432 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u043e\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 ID, \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 &#171;-100XXXXXXXXXX&#187;, \u0438 \u0442\u0430\u043a\u0436\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u043c \u0432 \u044d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 ID \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0443 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0431\u0443\u0434\u0435\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c. \u0414\u0430\u043d\u043d\u044b\u0439 \u043c\u0435\u0442\u043e\u0434 \u0432\u0435\u0440\u043d\u0451\u0442 \u043e\u0431\u044a\u0435\u043a\u0442 \u0442\u0430\u043a\u043e\u0433\u043e \u0432\u0438\u0434\u0430:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-json\" data-line=\"\">{\n  user: {\n    id: ID_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    is_bot: false,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    language_code: &#039;ru&#039;\n  },\n  status: \u0421\u0422\u0410\u0422\u0423\u0421_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n  is_anonymous: false\n}<\/code><\/pre>\n\n\n\n<p>\u0411\u0443\u0434\u0435\u043c \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u043a \u0441\u0442\u0430\u0442\u0443\u0441\u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. \u0421\u0442\u0430\u0442\u0443\u0441\u044b \u0431\u044b\u0432\u0430\u044e\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>left &#8212; \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0435 \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d<\/li>\n\n\n\n<li>kicked &#8212; \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d<\/li>\n\n\n\n<li>member &#8212; \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d<\/li>\n\n\n\n<li>administrator &#8212; \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u043c<\/li>\n\n\n\n<li>creator &#8212; \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u0435\u043c<\/li>\n<\/ul>\n\n\n\n<p>\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u0441\u0442\u0430\u0442\u0443\u0441 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u043d\u0435\u0433\u043e \u0431\u0443\u0434\u0435\u043c \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">case &quot;checkSubs&quot;:\n\n  const subscribe = await bot.getChatMember(process.env.ID_CHAT, ctx.from.id);\n  \n  if(subscribe.status == &#039;left&#039; || subscribe.status == &#039;kicked&#039;) {\n\n      await bot.sendMessage(ctx.message.chat.id, `&lt;b&gt;\u0412\u044b \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0435\u0441\u044c \u043f\u043e\u0434\u043f\u0438\u0441\u0447\u0438\u043a\u043e\u043c!&lt;\/b&gt;`, {\n\n          parse_mode: &#039;HTML&#039;\n\n      })\n\n  }\n  else {\n\n      await bot.sendMessage(ctx.message.chat.id, &#039;&lt;b&gt;\u0412\u044b \u044f\u0432\u043b\u044f\u0435\u0442\u0435\u0441\u044c \u043f\u043e\u0434\u043f\u0438\u0441\u0447\u0438\u043a\u043e\u043c!&lt;\/b&gt;&#039;, {\n\n          parse_mode: &#039;HTML&#039;\n\n      })\n\n  }\n\n  break;<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043e\u043f\u043b\u0430\u0442\u0443<\/h2>\n\n\n\n<p><a target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/p>\n\n\n\n<p>\u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043e\u043f\u043b\u0430\u0442\u0443 \u043a \u0441\u0432\u043e\u0435\u043c\u0443 \u0431\u043e\u0442\u0430 \u0434\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u0442\u043e\u0438\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u0441 \u043f\u043b\u0430\u0442\u0435\u0436\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0431\u0443\u0434\u0443\u0442 \u0441\u043e\u0432\u0435\u0440\u0448\u0430\u0442\u044c\u0441\u044f \u043f\u043b\u0430\u0442\u0435\u0436\u0438. \u0423 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u0430 \u0435\u0441\u0442\u044c \u0445\u043e\u0440\u043e\u0448\u0438\u0439 \u0432\u044b\u0431\u043e\u0440 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 \u043f\u043b\u0430\u0442\u0435\u0436\u043d\u044b\u0439 \u0441\u0438\u0441\u0442\u0435\u043c, \u043e\u0434\u043d\u0430\u043a\u043e, \u043d\u0438\u043a\u0442\u043e \u043d\u0435 \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u0435\u0442 \u0412\u0430\u043c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u044e\u044e \u043f\u043b\u0430\u0442\u0435\u0436\u043d\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443, \u043d\u043e \u0441\u0435\u0439\u0447\u0430\u0441 \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c\u0441\u044f \u0438\u043c\u0435\u043d\u043d\u043e \u0441\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u043c\u0438 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u043e\u0432\u0441\u043a\u0438\u043c\u0438 \u043f\u043b\u0430\u0442\u0435\u0436\u043d\u044b\u043c\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u043c\u0438. \u0414\u043b\u044f \u0438\u0445 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u0432 BotFather, \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0441\u0432\u043e\u0435\u0433\u043e \u0431\u043e\u0442\u0430, \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u0432 \u0440\u0430\u0437\u0434\u0435\u043b Payments, \u0430 \u0434\u0430\u043b\u044c\u0448\u0435 \u0432 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u043e\u0439 \u0412\u0430\u043c\u0438 \u043f\u043b\u0430\u0442\u0435\u0436\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c provider token &#8212; \u043a\u043b\u044e\u0447, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u043e\u043f\u043b\u0430\u0442\u0443.<\/p>\n\n\n\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u043c \u0441\u0447\u0451\u0442 \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043f\u043e \u043d\u0430\u0436\u0430\u0442\u0438\u044e \u043a\u043d\u043e\u043f\u043a\u0438 &#171;\u041a\u0443\u043f\u0438\u0442\u044c \u0424\u0430\u0439\u043b&#187;. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434 sendInvoice:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">case &quot;buyFile&quot;:\n\n  await bot.sendInvoice(ctx.message.chat.id, \n                      &#039;\u041a\u0443\u043f\u0438\u0442\u044c \u0424\u0430\u0439\u043b&#039;, \n                      &#039;\u041f\u043e\u043a\u0443\u043f\u043a\u0430 \u0444\u0430\u0439\u043b\u0430&#039;, \n                      &#039;file&#039;, \n                      process.env.PROVIDER_TOKEN, \n                      &#039;RUB&#039;, \n                      [{\n                          \n                          label: &#039;\u0424\u0430\u0439\u043b&#039;,\n                          amount: 20000\n                      \n                      }]);\n\n  break;<\/code><\/pre>\n\n\n\n<p>\u0412 \u044d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 \u043c\u044b \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u043c \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043f\u043b\u0430\u0442\u0435\u0436\u0430, \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043f\u043b\u0430\u0442\u0435\u0436\u0430, payload &#8212; \u044d\u0442\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442\u0441\u044f \u0432 \u043f\u043b\u0430\u0442\u0435\u0436, \u043f\u043e \u043d\u0435\u0439 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u044b\u0439 \u043f\u043b\u0430\u0442\u0435\u0436, \u0430 \u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043e\u043d\u0430 \u043d\u0438\u0433\u0434\u0435 \u043d\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u0442\u0441\u044f, \u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440-\u0442\u043e\u043a\u0435\u043d, \u0432\u0430\u043b\u044e\u0442\u0430 (\u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u043b\u0430\u0442\u0435\u0436\u043a\u0430\u0445 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0440\u0430\u0437\u043d\u044b\u0435 \u0432\u0430\u043b\u044e\u0442\u044b) \u0438 \u0442\u0430\u043a\u0436\u0435 \u043c\u0430\u0441\u0441\u0438\u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u0441 \u0442\u043e\u0432\u0430\u0440\u0430\u043c\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0435\u0442 \u043e\u043f\u043b\u0430\u0447\u0438\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0432\u0430\u043b\u044e\u0442\u043e\u0439 \u044f \u0443\u043a\u0430\u0437\u0430\u043b \u0440\u0443\u0431\u043b\u0438 (\u043a\u043e\u0434 \u0432\u0430\u043b\u044e\u0442\u044b \u0432 ISO 4217), \u0430 \u0446\u0435\u043d\u0443 \u043d\u0430 \u0442\u043e\u0432\u0430\u0440 \u0443\u043a\u0430\u0437\u0430\u043b \u0432 \u043a\u043e\u043f\u0435\u0439\u043a\u0430\u0445. \u0422\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0432 \u043c\u0435\u0442\u043e\u0434 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043c\u0438\u043d\u0438\u0430\u0442\u044e\u0440\u0443 \u043f\u043b\u0430\u0442\u0435\u0436\u0430, \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u0432\u0432\u043e\u0434\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0444\u0438\u0441\u043a\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u043b\u0430\u0442\u0435\u0436\u0430.<\/p>\n\n\n\n<p>\u0414\u0430\u043b\u0435\u0435 \u043f\u043e \u043a\u043d\u043e\u043f\u043a\u0435 &#171;\u041a\u0443\u043f\u0438\u0442\u044c \u0424\u0430\u0439\u043b&#187; \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"366\" height=\"144\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/ac2cb1cccabb74d17316a16d48877a68.png\" alt=\"\u0411\u043e\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u0447\u0451\u0442 \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443\" class=\"wp-image-526\" title=\"\u0411\u043e\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u0447\u0451\u0442 \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/ac2cb1cccabb74d17316a16d48877a68.png 366w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/ac2cb1cccabb74d17316a16d48877a68-300x118.png 300w\" sizes=\"auto, (max-width: 366px) 100vw, 366px\" \/><figcaption class=\"wp-element-caption\">\u0411\u043e\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u0447\u0451\u0442 \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443<\/figcaption><\/figure>\n\n\n\n<p>\u0414\u0430\u043b\u0435\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0430\u0436\u043c\u0451\u0442 \u043a\u043d\u043e\u043f\u043a\u0443 \u043e\u043f\u043b\u0430\u0442\u044b, \u0432\u0432\u0435\u0434\u0451\u0442 \u0441\u0432\u043e\u0438 \u0434\u0430\u043d\u043d\u044b\u0435, \u0438 \u043a\u043e\u0433\u0434\u0430 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442 \u0432\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435, \u0431\u043e\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043e\u043a\u043e\u043d\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u0434 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435\u043c \u0437\u0430\u043a\u0430\u0437\u0430. \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0442\u0430\u043a\u043e\u0433\u043e \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044f:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;pre_checkout_query&#039;, async ctx =&gt; {\n\n    try {\n\n        await bot.answerPreCheckoutQuery(ctx.id, true);\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<p>\u041a\u043e\u0433\u0434\u0430 \u043c\u044b \u043e\u043a\u043e\u043d\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u043b\u0438 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435 \u0437\u0430\u043a\u0430\u0437\u0430, \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043c\u043e\u0436\u0435\u0442 \u0441\u043e\u0432\u0435\u0440\u0448\u0438\u0442\u044c \u043f\u043b\u0430\u0442\u0435\u0436 \u0438 \u043c\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0435\u0433\u043e \u043a\u0430\u043a-\u0442\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c \u0441 \u0442\u0438\u043f\u043e\u043c &#171;successful_payment&#187;, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043e\u0431\u044a\u0435\u043a\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0432\u0438\u0434\u0430:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-json\" data-line=\"\">{\n  message_id: ID_\u0421\u041e\u041e\u0411\u0429\u0415\u041d\u0418\u042f,\n  from: {\n    id: ID_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    is_bot: false,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    language_code: &#039;ru&#039;\n  },\n  chat: {\n    id: ID_\u0427\u0410\u0422\u0410,\n    first_name: \u0418\u041c\u042f_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    username: \u041d\u0418\u041a_\u041f\u041e\u041b\u042c\u0417\u041e\u0412\u0410\u0422\u0415\u041b\u042f,\n    type: &#039;private&#039;\n  },\n  date: \u0414\u0410\u0422\u0410,\n  successful_payment: {\n    currency: \u041a\u041e\u0414_\u0412\u0410\u041b\u042e\u0422\u042b,\n    total_amount: \u0421\u0423\u041c\u041c\u0410_\u041f\u041b\u0410\u0422\u0415\u0416\u0410,\n    invoice_payload: PAYLOAD,\n    telegram_payment_charge_id: ID_\u041f\u041b\u0410\u0422\u0415\u0416\u0410_\u0422\u0415\u041b\u0415\u0413\u0420\u0410\u041c,\n    provider_payment_charge_id: ID_\u041f\u041b\u0410\u0422\u0415\u0416\u0410_\u041f\u041b\u0410\u0422\u0415\u0416\u041d\u0410\u042f_\u0421\u0418\u0421\u0422\u0415\u041c\u0410\n  }\n}<\/code><\/pre>\n\n\n\n<p>\u0418\u0441\u0445\u043e\u0434\u044f \u0438\u0437 \u044d\u0442\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441\u043e\u0432\u0435\u0440\u0448\u0451\u043d\u043d\u044b\u0439 \u043f\u043b\u0430\u0442\u0435\u0436, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">bot.on(&#039;successful_payment&#039;, async ctx =&gt; {\n\n    try {\n\n        await bot.sendDocument(ctx.chat.id, `.\/${ctx.successful_payment.invoice_payload}.txt`, {\n\n            caption: `\u0421\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u043e\u043f\u043b\u0430\u0442\u0443 ${ctx.successful_payment.invoice_payload}!`\n\n        })\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})<\/code><\/pre>\n\n\n\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u043c\u0435\u0442\u043e\u0434 sendDocument \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0441\u043a\u0438\u043d\u0443\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0444\u0430\u0439\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u044b \u043d\u0430\u0445\u043e\u0434\u0438\u043c \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0438\u0437 payload, \u0438 \u0432 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u043a \u043d\u0435\u043c\u0443 \u0432\u044b\u0432\u043e\u0434\u0438\u043c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0438\u0437 payload, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u044b \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u043b\u0438 \u0432 \u043c\u0435\u0442\u043e\u0434\u0435 sendInvoice. \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0443\u0432\u0438\u0434\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"556\" height=\"164\" src=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/73c5e11dab6858fefa3cb1b44dfad2a0.png\" alt=\"\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0443\u0441\u043f\u0435\u0448\u043d\u044b\u0439 \u043f\u043b\u0430\u0442\u0435\u0436\" class=\"wp-image-504\" title=\"\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0443\u0441\u043f\u0435\u0448\u043d\u044b\u0439 \u043f\u043b\u0430\u0442\u0435\u0436\" srcset=\"https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/73c5e11dab6858fefa3cb1b44dfad2a0.png 556w, https:\/\/kb.astrocroc.com\/wp-content\/uploads\/2025\/11\/73c5e11dab6858fefa3cb1b44dfad2a0-300x88.png 300w\" sizes=\"auto, (max-width: 556px) 100vw, 556px\" \/><figcaption class=\"wp-element-caption\">\u0411\u043e\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043d\u0430 \u0443\u0441\u043f\u0435\u0448\u043d\u044b\u0439 \u043f\u043b\u0430\u0442\u0435\u0436<\/figcaption><\/figure>\n\n\n\n<p>\u041f\u043e\u043b\u043d\u044b\u0439 \u043a\u043e\u0434 \u0432\u0441\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0438:<\/p>\n\n\n\n<pre class=\"wp-block-prismatic-blocks\"><code class=\"language-javascript\" data-line=\"\">const TelegramBot = require(&#039;node-telegram-bot-api&#039;);\nconst fs = require(&#039;fs&#039;);\n\n\/\/\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0438\u0437 .env\nrequire(&#039;dotenv&#039;).config();\n\n\/\/\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0431\u043e\u0442\u0430\nconst bot = new TelegramBot(process.env.API_KEY_BOT, {\n\n    polling: true\n\n});\n\n\/\/\u041c\u0430\u0441\u0441\u0438\u0432 \u0441 \u043e\u0431\u044a\u0435\u043a\u0442\u0430\u043c\u0438 \u0434\u043b\u044f \u043c\u0435\u043d\u044e \u043a\u043e\u043c\u0430\u043d\u0434\nconst commands = [\n\n    {command: &quot;start&quot;, description: &quot;\u0417\u0430\u043f\u0443\u0441\u043a \u0431\u043e\u0442\u0430&quot;},\n    {command: &quot;ref&quot;, description: &quot;\u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0440\u0435\u0444\u0435\u0440\u0430\u043b\u044c\u043d\u0443\u044e \u0441\u0441\u044b\u043b\u043a\u0443&quot;},\n    {command: &quot;help&quot;, description: &quot;\u0420\u0430\u0437\u0434\u0435\u043b \u043f\u043e\u043c\u043e\u0449\u0438&quot;},\n    {command: &quot;link&quot;, description: &quot;\u0421\u0441\u044b\u043b\u043a\u0430&quot;},\n    {command: &quot;menu&quot;, description: &quot;\u041c\u0435\u043d\u044e-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430&quot;},\n    {command: &#039;second_menu&#039;, description: &quot;\u0412\u0442\u043e\u0440\u043e\u0435 \u043c\u0435\u043d\u044e&quot;}\n\n]\n\n\/\/\u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u043c\u0435\u043d\u044e \u043a\u043e\u043c\u0430\u043d\u0434\nbot.setMyCommands(commands);\n\n\/\/\u0421\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c \u0434\u043b\u044f \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f\nbot.on(&#039;text&#039;, async msg =&gt; {\n\n    try {\n\n        \/\/\u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u043a \u0431\u043e\u0442\u0430\n        if(msg.text.startsWith(&#039;\/start&#039;)) {\n            \n            \/\/\u041f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435\n            await bot.sendMessage(msg.chat.id, `\u0412\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u0431\u043e\u0442\u0430! \ud83d\udc4b\ud83c\udffb`);\n\n            \/\/\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c, \u0431\u044b\u043b \u043b\u0438 \u0437\u0430\u043f\u0443\u0449\u0435\u043d \u0431\u043e\u0442 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 \u0438\u0437 \u0440\u0430\u0437\u0434\u0435\u043b\u0430 \/ref\n            if(msg.text.length &gt; 6) {\n                \/\/\u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c ID \u0438\u0437 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0431\u043e\u0442\u0430\n                const refID = msg.text.slice(7);\n                \/\/\u0415\u0441\u043b\u0438 \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u0437\u0430\u0448\u0451\u043b \u043f\u043e ref-\u0441\u0441\u044b\u043b\u043a\u0435, \u0442\u043e \u0435\u043c\u0443 \u043f\u0440\u0438\u0434\u0451\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439 \u043e\u0431 \u044d\u0442\u043e\u043c\n                await bot.sendMessage(msg.chat.id, `\u0412\u044b \u0437\u0430\u0448\u043b\u0438 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0441 ID ${refID}`);\n\n            }\n\n        }\n        else if(msg.text == &#039;\/ref&#039;) {\n\n            \/\/\u0414\u0435\u043b\u0430\u0435\u043c \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u0437\u0430\u043f\u0443\u0441\u043a \u0432 \u0431\u043e\u0442\u0430, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u043c ID \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\n            await bot.sendMessage(msg.chat.id, `${process.env.URL_TO_BOT}?start=${msg.from.id}`);\n\n        }\n        else if(msg.text == &#039;\/help&#039;) {\n\n            \/\/\u041f\u0440\u0438\u043c\u0435\u0440 HTML-\u0441\u0442\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0442\u0435\u043a\u0441\u0442\u0430\n            await bot.sendMessage(msg.chat.id, `\u0420\u0430\u0437\u0434\u0435\u043b \u043f\u043e\u043c\u043e\u0449\u0438 HTML\\n\\n&lt;b&gt;\u0416\u0438\u0440\u043d\u044b\u0439 \u0422\u0435\u043a\u0441\u0442&lt;\/b&gt;\\n&lt;i&gt;\u0422\u0435\u043a\u0441\u0442 \u041a\u0443\u0440\u0441\u0438\u0432\u043e\u043c&lt;\/i&gt;\\n&lt;code&gt;\u0422\u0435\u043a\u0441\u0442 \u0441 \u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c&lt;\/code&gt;\\n&lt;s&gt;\u041f\u0435\u0440\u0435\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442&lt;\/s&gt;\\n&lt;u&gt;\u041f\u043e\u0434\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442&lt;\/u&gt;\\n&lt;pre language=&#039;c++&#039;&gt;\u043a\u043e\u0434 \u043d\u0430 c++&lt;\/pre&gt;\\n&lt;a href=&#039;t.me&#039;&gt;\u0413\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0430&lt;\/a&gt;`, {\n\n                parse_mode: &quot;HTML&quot;\n\n            });\n\n            \/\/\u041f\u0440\u0438\u043c\u0435\u0440 Markdown-\u0441\u0442\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0442\u0435\u043a\u0441\u0442\u0430\n            await bot.sendMessage(msg.chat.id, &#039;\u0420\u0430\u0437\u0434\u0435\u043b \u043f\u043e\u043c\u043e\u0449\u0438 Markdown\\n\\n*\u0416\u0438\u0440\u043d\u044b\u0439 \u0422\u0435\u043a\u0441\u0442*\\n_\u0422\u0435\u043a\u0441\u0442 \u041a\u0443\u0440\u0441\u0438\u0432\u043e\u043c_\\n`\u0422\u0435\u043a\u0441\u0442 \u0441 \u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c`\\n~\u041f\u0435\u0440\u0435\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442~\\n``` \u043a\u043e\u0434 ```\\n||\u0441\u043a\u0440\u044b\u0442\u044b\u0439 \u0442\u0435\u043a\u0441\u0442||\\n[\u0413\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0430](t.me)&#039;, {\n\n                parse_mode: &quot;MarkdownV2&quot;\n\n            });\n\n        }\n        else if(msg.text == &#039;\/link&#039;) {\n\n            await bot.sendMessage(msg.chat.id, `https:\/\/habr.com\/`, {\n\n                \/\/\u0412\u044b\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043f\u0440\u0435\u0432\u044c\u044e \u0441\u0441\u044b\u043b\u043a\u0438 \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438\n                disable_web_page_preview: true,\n                \/\/\u041e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0435 \u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438 \u0434\u043b\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\n                disable_notification: true\n\n            });\n\n        }\n        else if(msg.text == &#039;\/menu&#039;) {\n\n            await bot.sendMessage(msg.chat.id, `\u041c\u0435\u043d\u044e \u0431\u043e\u0442\u0430`, {\n\n                reply_markup: {\n                    \/\/\u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043c\u0435\u043d\u044e-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0443\n                    keyboard: [\n\n                        [&#039;\u2b50\ufe0f \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430&#039;, &#039;\u2b50\ufe0f \u0412\u0438\u0434\u0435\u043e&#039;],\n                        [&#039;\u2b50\ufe0f \u0410\u0443\u0434\u0438\u043e&#039;, &#039;\u2b50\ufe0f \u0413\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435&#039;],\n                        [{text: &#039;\u2b50\ufe0f \u041a\u043e\u043d\u0442\u0430\u043a\u0442&#039;, request_contact: true}, {text: &#039;\u2b50\ufe0f \u0413\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044f&#039;, request_location: true}],\n                        [&#039;\u274c \u0417\u0430\u043a\u0440\u044b\u0442\u044c \u043c\u0435\u043d\u044e&#039;]\n\n                    ],\n                    \/\/\u041f\u043e\u0434\u0433\u043e\u043d\u044f\u0435\u043c \u0440\u0430\u0437\u043c\u0435\u0440 \u043c\u0435\u043d\u044e-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b\n                    resize_keyboard: true\n\n                }\n\n            })\n\n        }\n        else if(msg.text == &#039;\/second_menu&#039;) {\n\n            await bot.sendMessage(msg.chat.id, `\u0412\u0442\u043e\u0440\u043e\u0435 \u043c\u0435\u043d\u044e`, {\n\n                reply_markup: {\n                    \/\/\u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0438\u043d\u043b\u0430\u0439\u043d-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0443\n                    inline_keyboard: [\n\n                        [{text: &#039;\u0421\u0442\u0438\u043a\u0435\u0440&#039;, callback_data: &#039;sticker&#039;}, {text: &#039;\u041a\u0440\u0443\u0433\u043b\u043e\u0435 \u0412\u0438\u0434\u0435\u043e&#039;, callback_data: &#039;circleVideo&#039;}],\n                        [{text: &#039;\u041a\u0443\u043f\u0438\u0442\u044c \u0424\u0430\u0439\u043b&#039;, callback_data: &#039;buyFile&#039;}],\n                        [{text: &#039;\u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u041f\u043e\u0434\u043f\u0438\u0441\u043a\u0443&#039;, callback_data: &#039;checkSubs&#039;}],\n                        [{text: &#039;\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u041c\u0435\u043d\u044e&#039;, callback_data: &#039;closeMenu&#039;}]\n\n                    ]\n\n                },\n                \/\/\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0442\u043e\u043c \u043d\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\n                reply_to_message_id: msg.message_id\n\n            })\n\n        }\n        else if(msg.text == &#039;\u2b50\ufe0f \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430&#039;) {\n\n            \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441\u0441\u044b\u043b\u043a\u043e\u0439\n            \/\/await bot.sendPhoto(msg.chat.id, process.env.URL_TO_IMG);\n\n            \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0443\u043a\u0430\u0437\u0430\u0432 \u043f\u0443\u0442\u044c\n            \/\/await bot.sendPhoto(msg.chat.id, &#039;.\/image.jpg&#039;);\n\n            \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Readable Stream\n            const imageStream = fs.createReadStream(&#039;.\/image.jpg&#039;);\n            await bot.sendPhoto(msg.chat.id, imageStream, {\n\n                caption: &#039;&lt;b&gt;\u2b50\ufe0f \u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430&lt;\/b&gt;&#039;,\n                parse_mode: &#039;HTML&#039;\n\n            });\n\n            \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0431\u0443\u0444\u0435\u0440\u0430\n            \/\/const imageBuffer = fs.readFileSync(&#039;.\/image.jpg&#039;);\n            \/\/await bot.sendPhoto(msg.chat.id, imageBuffer);\n\n        }\n        else if(msg.text == &#039;\u2b50\ufe0f \u0412\u0438\u0434\u0435\u043e&#039;) {\n\n            \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0432\u0438\u0434\u0435\u043e (\u043c\u043e\u0436\u043d\u043e \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u043c\u0435\u0442\u043e\u0434\u0430\u043c\u0438 - \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430\u043c)\n            await bot.sendVideo(msg.chat.id, &#039;.\/video.mp4&#039;, {\n\n                caption: &#039;&lt;b&gt;\u2b50\ufe0f \u0412\u0438\u0434\u0435\u043e&lt;\/b&gt;&#039;,\n                parse_mode: &#039;HTML&#039;\n\n            });\n\n        }\n        else if(msg.text == &#039;\u2b50\ufe0f \u0410\u0443\u0434\u0438\u043e&#039;) {\n\n            \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0430\u0443\u0434\u0438\u043e\n            await bot.sendAudio(msg.chat.id, &#039;.\/audio.mp3&#039;, {\n\n                caption: &#039;&lt;b&gt;\u2b50\ufe0f \u0410\u0443\u0434\u0438\u043e&lt;\/b&gt;&#039;,\n                parse_mode: &#039;HTML&#039;\n\n            });\n\n        }\n        else if(msg.text == &#039;\u2b50\ufe0f \u0413\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435&#039;) {\n\n            \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435\n            await bot.sendVoice(msg.chat.id, &#039;.\/audio.mp3&#039;, {\n\n                caption: &#039;&lt;b&gt;\u2b50\ufe0f \u0413\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435&lt;\/b&gt;&#039;,\n                parse_mode: &#039;HTML&#039;\n\n            });\n\n        }\n        else if(msg.text == &#039;\u2b50\ufe0f \u041a\u043e\u043d\u0442\u0430\u043a\u0442&#039;) {\n\n            \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u043a\u043e\u043d\u0442\u0430\u043a\u0442\n            await bot.sendContact(msg.chat.id, process.env.CONTACT, `\u041a\u043e\u043d\u0442\u0430\u043a\u0442`, {\n\n                reply_to_message_id: msg.message_id\n\n            });\n\n        }\n        else if(msg.text == &#039;\u2b50\ufe0f \u0413\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044f&#039;) {\n\n            \/\/\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c \u0448\u0438\u0440\u043e\u0442\u0443 \u0438 \u0434\u043e\u043b\u0433\u043e\u0442\u0443 \u043d\u0443\u0436\u043d\u043e\u0439 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b\n            const latitudeOfRedSquare = 55.753700;\n            const longitudeOfReadSquare = 37.621250;\n            \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u044e \u043d\u0443\u0436\u043d\u043e\u0439 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b\n            await bot.sendLocation(msg.chat.id, latitudeOfRedSquare, longitudeOfReadSquare, {\n\n                reply_to_message_id: msg.message_id\n\n            })\n\n        }\n        else if(msg.text == &#039;\u274c \u0417\u0430\u043a\u0440\u044b\u0442\u044c \u043c\u0435\u043d\u044e&#039;) {\n\n            await bot.sendMessage(msg.chat.id, &#039;\u041c\u0435\u043d\u044e \u0437\u0430\u043a\u0440\u044b\u0442\u043e&#039;, {\n\n                reply_markup: {\n                    \/\/\u0412\u044b\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0443 \u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\n                    remove_keyboard: true\n\n                }\n\n            })\n\n        }\n        else {\n\n            \/\/\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435\n            const msgWait = await bot.sendMessage(msg.chat.id, `\u0411\u043e\u0442 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043e\u0442\u0432\u0435\u0442...`);\n\n            \/\/\u0427\u0435\u0440\u0435\u0437 5 \u0441\u0435\u043a\u0443\u043d\u0434 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u0443\u0435\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0438 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0442\u0443\u0434\u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f (\u044d\u0445\u043e-\u0431\u043e\u0442)\n            setTimeout(async () =&gt; {\n\n                await bot.editMessageText(msg.text, {\n\n                    chat_id: msgWait.chat.id,\n                    message_id: msgWait.message_id\n\n                });\n\n            }, 5000);\n\n        }\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})\n\n\/\/\u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u043e\u0439 \u043e\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\nbot.on(&#039;photo&#039;, async img =&gt; {\n\n    try {\n        \/\/\u041c\u0430\u0441\u0441\u0438\u0432, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u0442\u0430\u0449\u0438\u043c \u0432\u0441\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a\n        const photoGroup = [];\n        \/\/\u041f\u0435\u0440\u0435\u0431\u0438\u0440\u0430\u0435\u043c \u0432\u0441\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a (\u0441\u0436\u0430\u0442\u044b\u0435 \u0438 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b) \u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043d\u0438\u0445 \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\n        for(let index = 0; index &lt; img.photo.length; index++) {\n            \/\/\u0421\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u043c \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443\n            const photoPath = await bot.downloadFile(img.photo[index].file_id, &#039;.\/image&#039;);\n            \/\/\u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0435 \u0432 \u043c\u0430\u0441\u0441\u0438\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u0443\u0442\u044c \u0434\u043e \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430\u0445 \u0438\u0437 img\n            photoGroup.push({\n\n                type: &#039;photo&#039;,\n                media: photoPath,\n                caption: `\u0420\u0430\u0437\u043c\u0435\u0440 \u0444\u0430\u0439\u043b\u0430: ${img.photo[index].file_size} \u0431\u0430\u0439\u0442\\n\u0428\u0438\u0440\u0438\u043d\u0430: ${img.photo[index].width}\\n\u0412\u044b\u0441\u043e\u0442\u0430: ${img.photo[index].height}`\n\n            })\n\n        }\n        \/\/\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0432\u0441\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a\n        await bot.sendMediaGroup(img.chat.id, photoGroup);\n        \/\/\u041f\u0435\u0440\u0435\u0431\u0438\u0440\u0430\u0435\u043c \u0438 \u0443\u0434\u0430\u043b\u044f\u0435\u043c \u0432\u0441\u0435 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043a\u0430\u0447\u0430\u043b\u0438\n        for(let index = 0; index &lt; photoGroup.length; index++) {\n\n            fs.unlink(photoGroup[index].media, error =&gt; {\n\n                if(error) {\n\n                    console.log(error);\n\n                }\n\n            })\n\n        }\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})\n\n\/\/\u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0432\u0438\u0434\u0435\u043e \u043e\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\nbot.on(&quot;video&quot;, async video =&gt; {\n\n    try {\n        \/\/\u0421\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u043c \u043c\u0438\u043d\u0438\u0430\u0442\u044e\u0440\u0443 \u0432\u0438\u0434\u0435\u043e\n        const thumbPath = await bot.downloadFile(video.video.thumbnail.file_id, &#039;.\/image&#039;);\n        \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0432\u0438\u0434\u0435\u043e \u0441 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439 \u043e \u043d\u0451\u043c \u0438 \u043c\u0438\u043d\u0438\u0430\u0442\u044e\u0440\u0443\n        await bot.sendMediaGroup(video.chat.id, [\n            \n            {\n\n                type: &#039;video&#039;,\n                media: video.video.file_id,\n                caption: `\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u0430: ${video.video.file_name}\\n\u0412\u0435\u0441 \u0444\u0430\u0439\u043b\u0430: ${video.video.file_size} \u0431\u0430\u0439\u0442\\n\u0414\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0432\u0438\u0434\u0435\u043e: ${video.video.duration} \u0441\u0435\u043a\u0443\u043d\u0434\\n\u0428\u0438\u0440\u0438\u043d\u0430 \u043a\u0430\u0434\u0440\u0430 \u0432 \u0432\u0438\u0434\u0435\u043e: ${video.video.width}\\n\u0412\u044b\u0441\u043e\u0442\u0430 \u043a\u0430\u0434\u0440\u0430 \u0432 \u0432\u0438\u0434\u0435\u043e: ${video.video.height}`\n\n            },\n            {\n\n                type: &#039;photo&#039;,\n                media: thumbPath,\n\n            }\n\n        ]);\n        \/\/\u0423\u0434\u0430\u043b\u044f\u0435\u043c \u043c\u0438\u043d\u0438\u0430\u0442\u044e\u0440\u0443\n        fs.unlink(thumbPath, error =&gt; {\n\n            if(error) {\n\n                console.log(error);\n\n            }\n\n        })\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})\n\n\/\/\u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0430\u0443\u0434\u0438\u043e \u043e\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\nbot.on(&#039;audio&#039;, async audio =&gt; {\n\n    try {   \n        \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0430\u0443\u0434\u0438\u043e \u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e\u0431 \u0430\u0443\u0434\u0438\u043e\n        await bot.sendAudio(audio.chat.id, audio.audio.file_id, {\n\n            caption: `\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u0430: ${audio.audio.file_name}\\n\u0412\u0435\u0441 \u0444\u0430\u0439\u043b\u0430: ${audio.audio.file_size} \u0431\u0430\u0439\u0442\\n\u0414\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0430\u0443\u0434\u0438\u043e: ${audio.audio.duration} \u0441\u0435\u043a\u0443\u043d\u0434`\n\n        })\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})\n\n\/\/\u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043e\u0442 \u043f\u043e\u043b\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\nbot.on(&#039;voice&#039;, async voice =&gt; {\n\n    try {\n        \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0435\u0433\u043e \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0430\u0443\u0434\u0438\u043e-\u0444\u0430\u0439\u043b\u043e\u043c \u0438 \u043f\u0438\u0448\u0435\u043c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043d\u0435\u043c\n        await bot.sendAudio(voice.chat.id, voice.voice.file_id, {\n\n            caption: `\u0412\u0435\u0441 \u0444\u0430\u0439\u043b\u0430: ${voice.voice.file_size} \u0431\u0430\u0439\u0442\\n\u0414\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0430\u0443\u0434\u0438\u043e: ${voice.voice.duration} \u0441\u0435\u043a\u0443\u043d\u0434`\n\n        })\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})\n\n\/\/\u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u043c \u043e\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\nbot.on(&#039;contact&#039;, async contact =&gt; {\n\n    try {\n        \/\/\u0421\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u0435\n        await bot.sendMessage(contact.chat.id, `\u041d\u043e\u043c\u0435\u0440 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u0430: ${contact.contact.phone_number}\\n\u0418\u043c\u044f \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u0430: ${contact.contact.first_name}`);\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})\n\n\/\/\u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u0435\u0439 \u043e\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\nbot.on(&#039;location&#039;, async location =&gt; {\n\n    try {\n        \/\/\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0448\u0438\u0440\u043e\u0442\u0443 \u0438 \u0434\u043e\u043b\u0433\u043e\u0442\u0443 \u0433\u0435\u043e\u043b\u043e\u043a\u0430\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043e\u043d \u043d\u0430\u043c \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u043b\n        await bot.sendMessage(location.chat.id, `\u0428\u0438\u0440\u043e\u0442\u0430: ${location.location.latitude}\\n\u0414\u043e\u043b\u0433\u043e\u0442\u0430: ${location.location.longitude}`);\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})\n\n\/\/\u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441\u043e \u0441\u0442\u0438\u043a\u0435\u0440\u043e\u043c \u043e\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\nbot.on(&#039;sticker&#039;, async sticker =&gt; {\n\n    try {\n\n        \/\/\u0421\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u043c \u0444\u0430\u0439\u043b \u0441\u0442\u0438\u043a\u0435\u0440\u0430\n        const stickerPath = await bot.downloadFile(sticker.sticker.file_id, &#039;.\/image&#039;);\n        \/\/\u0412 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0442\u0438\u043f\u0430 \u0441\u0442\u0438\u043a\u0435\u0440\u0430 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0444\u0430\u0439\u043b \u0441 \u043d\u0438\u043c (\u0432\u0438\u0434\u0435\u043e, \u0430\u043d\u0438\u043c\u0430\u0446\u0438\u044f \u0438\u043b\u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430)\n        if(sticker.sticker.is_video) {\n\n            await bot.sendVideo(sticker.chat.id, stickerPath);\n\n        }\n        else if(sticker.sticker.is_animated) {\n\n            await bot.sendAnimation(sticker.chat.id, sticker.sticker.file_id);\n\n        }\n        else {\n\n            await bot.sendPhoto(sticker.chat.id, stickerPath);\n\n        }\n        \/\/\u0423\u0434\u0430\u043b\u044f\u0435\u043c \u0444\u0430\u0439\u043b \u0441\u0442\u0438\u043a\u0435\u0440\u0430\n        fs.unlink(stickerPath, error =&gt; {\n\n            if(error) {\n\n                console.log(error);\n\n            }\n\n        })\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})\n\n\/\/\u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u043a\u043e\u043b\u043b\u0431\u0435\u043a\u0438 \u043d\u0430 \u0438\u043d\u043b\u0430\u0439\u043d-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0435\nbot.on(&#039;callback_query&#039;, async ctx =&gt; {\n\n    try {\n\n        switch(ctx.data) {\n            \/\/\u041a\u043d\u043e\u043f\u043a\u0430 \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f \u043c\u0435\u043d\u044e \u0443\u0434\u0430\u043b\u044f\u0435\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0441 \u043c\u0435\u043d\u044e \u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435, \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u0431\u044b\u043b\u043e \u0432\u044b\u0437\u0432\u0430\u043d\u043e \u043c\u0435\u043d\u044e\n            case &quot;closeMenu&quot;:\n\n                await bot.deleteMessage(ctx.message.chat.id, ctx.message.message_id);\n                await bot.deleteMessage(ctx.message.reply_to_message.chat.id, ctx.message.reply_to_message.message_id);\n                break;\n            \/\/\u041a\u043d\u043e\u043f\u043a\u043e\u0439 \u0441\u0442\u0438\u043a\u0435\u0440\u0430 \u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 \u0441\u0442\u0438\u043a\u0435\u0440\u043e\u043c\n            case &quot;sticker&quot;:\n\n                await bot.sendSticker(ctx.message.chat.id, `.\/image.jpg`);\n                break;\n            \/\/\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043a\u0440\u0443\u0433\u043b\u043e\u0435 \u0432\u0438\u0434\u0435\u043e\n            case &quot;circleVideo&quot;:\n\n                await bot.sendVideoNote(ctx.message.chat.id, &#039;.\/video.mp4&#039;, {\n\n                    protect_content: true\n\n                });\n                break;\n            \/\/\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043d\u0430 \u043a\u0430\u043d\u0430\u043b \u0438 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u043c \u0435\u043c\u0443 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435\u043c \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0442\u043e\u0433\u043e, \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043b\u0438 \u043e\u043d \u043f\u043e\u0434\u043f\u0438\u0441\u0447\u0438\u043a\u043e\u043c \u043a\u0430\u043d\u0430\u043b\u0430\n            case &quot;checkSubs&quot;:\n\n                const subscribe = await bot.getChatMember(process.env.ID_CHAT, ctx.from.id);\n\n                if(subscribe.status == &#039;left&#039; || subscribe.status == &#039;kicked&#039;) {\n\n                    await bot.sendMessage(ctx.message.chat.id, `&lt;b&gt;\u0412\u044b \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0435\u0441\u044c \u043f\u043e\u0434\u043f\u0438\u0441\u0447\u0438\u043a\u043e\u043c!&lt;\/b&gt;`, {\n\n                        parse_mode: &#039;HTML&#039;\n\n                    })\n\n                }\n                else {\n\n                    await bot.sendMessage(ctx.message.chat.id, &#039;&lt;b&gt;\u0412\u044b \u044f\u0432\u043b\u044f\u0435\u0442\u0435\u0441\u044c \u043f\u043e\u0434\u043f\u0438\u0441\u0447\u0438\u043a\u043e\u043c!&lt;\/b&gt;&#039;, {\n\n                        parse_mode: &#039;HTML&#039;\n\n                    })\n\n                }\n\n                break;\n            \/\/\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0441\u0447\u0435\u0442 \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443\n            case &quot;buyFile&quot;:\n\n                await bot.sendInvoice(ctx.message.chat.id, \n                                    &#039;\u041a\u0443\u043f\u0438\u0442\u044c \u0424\u0430\u0439\u043b&#039;, \/\/\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u0441\u0447\u0435\u0442\u0430\n                                    &#039;\u041f\u043e\u043a\u0443\u043f\u043a\u0430 \u0444\u0430\u0439\u043b\u0430&#039;, \/\/\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0441\u0447\u0435\u0442\u0430\n                                    &#039;file&#039;, \/\/Payload - \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043e\u0442\u0441\u043b\u0435\u0434\u0438\u0442\u044c \u043f\u043b\u0430\u0442\u0435\u0436, \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043d\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f\n                                    process.env.PROVIDER_TOKEN, \/\/\u041f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440-\u0442\u043e\u043a\u0435\u043d \u043e\u0442 \u043f\u043b\u0430\u0442\u0435\u0436\u043a\u0438\n                                    &#039;RUB&#039;, \/\/\u041a\u043e\u0434 \u0432\u0430\u043b\u044e\u0442\u044b\n                                    [{\n\n                                        label: &#039;\u0424\u0430\u0439\u043b&#039;, \/\/\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0442\u043e\u0432\u0430\u0440\u0430\n                                        amount: 20000 \/\/\u0426\u0435\u043d\u0430 \u0442\u043e\u0432\u0430\u0440\u0430 (\u0432 \u043a\u043e\u043f\u0435\u0439\u043a\u0430\u0445!!!)\n                                    \n                                    }]);\n\n                break;\n\n        }\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})\n\n\/\/\u041e\u043a\u043e\u043d\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u043c \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0437\u0430\u043a\u0430\u0437\u0430 \u043f\u043e \u0441\u0447\u0435\u0442\u0443 \u043f\u0440\u0438 \u043e\u043f\u043b\u0430\u0442\u0435\nbot.on(&#039;pre_checkout_query&#039;, async ctx =&gt; {\n\n    try {\n\n        await bot.answerPreCheckoutQuery(ctx.id, true);\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})\n\n\/\/\u041e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u0443\u0434\u0430\u0447\u043d\u044b\u0439 \u043f\u043b\u0430\u0442\u0435\u0436 \u043e\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\nbot.on(&#039;successful_payment&#039;, async ctx =&gt; {\n\n    try {\n        \/\/\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442 \u0438 \u0432\u044b\u0432\u043e\u0434\u0438\u043c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 payload \u0438\u0437 \u043f\u043b\u0430\u0442\u0435\u0436\u0430\n        await bot.sendDocument(ctx.chat.id, `.\/${ctx.successful_payment.invoice_payload}.txt`, {\n\n            caption: `\u0421\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u043e\u043f\u043b\u0430\u0442\u0443 ${ctx.successful_payment.invoice_payload}!`\n\n        })\n\n    }\n    catch(error) {\n\n        console.log(error);\n\n    }\n\n})\n\n\/\/\u041b\u043e\u0432\u0438\u043c \u043e\u0448\u0438\u0431\u043a\u0438 polling&#039;a\nbot.on(&quot;polling_error&quot;, err =&gt; console.log(err.data.error.message));<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u041d\u0430\u0447\u0430\u043b\u043e \u0440\u0430\u0431\u043e\u0442\u044b \u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c NodeJS \u043f\u0440\u043e\u0435\u043a\u0442 \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u0442\u0443\u0434\u0430 \u043f\u0430\u043a\u0435\u0442 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c-\u0431\u043e\u0442\u043e\u043c \u0447\u0435\u0440\u0435\u0437 npm: \u0418 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c-\u0431\u043e\u0442\u043e\u043c \u0432 \u043f\u0440\u043e\u0435\u043a\u0442: \u0414\u0430\u043b\u0435\u0435 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 \u043a\u043b\u0430\u0441\u0441\u0430 TelegramBot. \u0412 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440 \u043d\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0442\u043e\u043a\u0435\u043d \u043d\u0430\u0448\u0435\u0433\u043e \u0431\u043e\u0442\u0430 (\u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0431\u043e\u0442\u0430 \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0442\u043e\u043a\u0435\u043d \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0432 BotFather): \u042f \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u043a\u0438\u0445 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[26],"class_list":["post-503","post","type-post","status-publish","format-standard","hentry","category-node-js","tag-node-js"],"blocksy_meta":[],"_links":{"self":[{"href":"https:\/\/kb.astrocroc.com\/index.php?rest_route=\/wp\/v2\/posts\/503","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kb.astrocroc.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kb.astrocroc.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kb.astrocroc.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kb.astrocroc.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=503"}],"version-history":[{"count":3,"href":"https:\/\/kb.astrocroc.com\/index.php?rest_route=\/wp\/v2\/posts\/503\/revisions"}],"predecessor-version":[{"id":538,"href":"https:\/\/kb.astrocroc.com\/index.php?rest_route=\/wp\/v2\/posts\/503\/revisions\/538"}],"wp:attachment":[{"href":"https:\/\/kb.astrocroc.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=503"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kb.astrocroc.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=503"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kb.astrocroc.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=503"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}