Skip to content

Ren3846/XGroupBot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

b1fb9e3 · Feb 11, 2022

History

1 Commit
Feb 11, 2022
Feb 11, 2022
Feb 11, 2022
Feb 11, 2022
Feb 11, 2022
Feb 11, 2022
Feb 11, 2022

Repository files navigation

Создание телеграм бота на Telegraf.js

Регистрация бота в Телеграм

  • В Телеграме найти бота @BotFather
  • Ввести команду /newbot
  • Следуя подсказкам придумать название бота и логин для него
  • Получить ссылку на нового бота и API токен
  • Ввести команду /mybots
  • Выбрать своего бота и нажать Edit Bot
  • Добавить информацию description, about, botpic, commands

Инициализация проекта

  • Создать папку с названием проекта
  • Открыть проект в своей IDE или редакторе
  • Открыть терминал и перейти в папку с проектом

    ls, dir посмотреть список каталогов
    cd .. перейти на уровень выше
    cd каталог перейти в каталог

  • проверить версию node.js если нет версии, то установить node.js

    node -v проверить версию

  • инициализировать проект (создать файл package.json)

    npm init -y

  • установить nodemon

    npm i -D nodemon

  • установить telegraf

    npm i telegraf

  • установить dotenv

    npm i dotenv

  • Создать файл .env и записать в него:

    BOT_TOKEN = Токен из @BotFather

  • Создать файл index.js и записать в него:

    const { Telegraf, Markup } = require("telegraf")
    require("dotenv").config()
    const bot = new Telegraf(process.env.BOT_TOKEN)
    bot.start((ctx) => ctx.reply('Welcome'))
    bot.help((ctx) => ctx.reply('Send me a sticker'))
    bot.on('sticker', (ctx) => ctx.reply('Like'))
    bot.hears('hi', (ctx) => ctx.reply('Hey there'))
    bot.launch()
    process.once('SIGINT', () => bot.stop('SIGINT'))
    process.once('SIGTERM', () => bot.stop('SIGTERM'))

  • Создать файл .gitignore

    /node_modules
    .env
    package-lock.json

  • Создать файл Procfile

    worker: npm start

  • Изменить скрипты в файле package.json

    "scripts": {
    "start": "node index.js",
    "dev": "nodemon index.js"
    },

  • Запустить проект командой

    npm run dev

Деплой проекта на Heroku

  • Зарегистрироваться на GitHub и войти
  • Создать репозиторий и запушить код бота
  • Зарегистрироваться на Heroku и войти
  • Создать новое приложение
    new/create new app
  • Добавить константу с API токеном
    settings/config vars
  • Переключить Dyno с web на worker
    resources
  • На вкладке Deploy связать проект с репозиторием GitHub
    deploy
  • Включить Automatic deploys (опционально)
  • Запусть Manual Deploy
  • Перезагрузить все Dyno
    more/restart all dynos
  • Просматривать логи
    more/view logs

Полезные материалы

Автору на кофе

Сбер VISA: 4274 3200 3233 1582
Yoomoney
PayPal

Контакты ITDoctor

YouTube
Telegram и бот @itdoctorNavigatorBot
Курсы на Udemy
GitHub
VK
Instagram

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published