Курс по Grammy JS: вся БАЗА | как писать телеграм-ботов на JS
Vložit
- čas přidán 10. 06. 2024
- ⭐ BOOSTY: boosty.to/pomazkovjs
⭐ Поддержать донатом: boosty.to/pomazkovjs/single-p...
⭐ Интенсив по JS: pomazkovjs-hangman.ru/
✅ Текстовая версия ролика: slc.tl/sy40z
✅ Сервер Selectel: slc.tl/qtz71
В этом видео мы разберем все основные механизмы библиотеки Grammy JS:
- стартовый набор файлов бота и общую структуру
- слушатели событий от пользователя
- объект Context: контекст обновления
- работу с двумя видами клавиатуры
и многое другое.
Приятного просмотра!
Ссылки по GrammyJS:
* Обработка ошибок - grammy.dev/guide/errors
* Фильтры bot.on - grammy.dev/guide/filter-queries
* Context (ctx) - grammy.dev/guide/context
* parse_mode: “HTML” - core.telegram.org/bots/api#ht...
* “MarkdownV2” - core.telegram.org/bots/api#ma...
* Настройка login / pay методов - deno.land/x/grammy@v1.21.1/mo...
* СОЦ. СЕТИ:
👀 Instagram - / pomazkov.js
🚀 Telegram - t.me/pomazkovjs
Тайм-коды:
00:00 Интро
01:18 Получаем токен для телеграм бота
02:21 Создаем проект
05:24 Стартовый код бота
08:30 Запуск бота с nodemon
09:31 Порядок слушателей в grammy (важно)
11:09 Обработка ошибок в grammy js
13:35 Обработка сообщений от пользователя
14:03 bot.command - команды
15:25 Одинаковая реакция на несколько команд
16:16 Как сделать меню команд у бота (bot.api.setMyCommands)
17:49 Ограничения работы с командами
20:09 bot.on - фильтрация по типу сообщения
24:48 bot.filter - свои кастомные фильтры
27:43 bot.hears - ответ на конкретные сообщения
29:06 Регулярные выражения
30:08 Еще раз про важность расположения слушателей
31:17 Объект Context (контекст обновления)
33:04 Как узнать свой id в телеграм
34:34 Подробнее про ctx.reply
35:09 Ответ на конкретное сообщение
35:54 Форматирование сообщений телеграм бота
38:25 disable_web_page_preview
38:50 ctx.react - отправка реакций на сообщения
39:35 Клавиатуры у бота и их ограничения
40:09 Custom Keyboard
41:09 .text() - добавление кнопки к клавиатуре
41:01 .row() - разбивка кнопок по рядам
42:40 .resized() - почему кнопки растягиваются в тг боте
43:15 Как реагировать на нажатия по кнопкам
43:58 oneTime() - одноразовая клавиатура
44:31 Убираем клавиатуру вручную
45:13 Keyboard.from() - клавиатура из массива строк
46:33 Запрашиваем локацию, номер телефона и опрос у пользователя
48:28 Добавляем команды в меню
49:06 .placeholder() - изменение текста в инпуте
49:45 Реакция на контакт или локацию
50:47 Inline Keyboard
53:06 Обработка нажатий на инлайн клавиатуру
57:48 Задание на самостоятельную работу
1:00:02 .row() и .url() в инлайн клавиатуре
1:01:40 Плагины в grammy js
1:02:00 hydrate - редактирование сообщений и бесшовное меню
1:09:42 Деплой бота на удаленный сервер
1:10:15 Загружаем бота на GitHub
1:12:00 Настраиваем сервер
1:18:33 Запуск бота на сервере
1:19:36 Заключение
#javascript #курс #grammyjs #фронтенд #телеграмботы
Отличный ролик, спасибо, давно на ютубе не встречал обновленных гайдов по grammy. Хотелось бы продолжения: добавить db, добавить typescript и линтеры, добавить структуру файлов и папок, разобрать меню/каталоги вложенные друг в друга, login и pay, poling и hooks, завернуть в докер. Буду ждать 😉 С меня подписка 😊
Боже мой откуда ты появился чеел, видео без воды, всё чётко, спасибо тебе огромное и УДАЧИ!!!
Хочу отметить, что автор очень хорошо обьясняет! продолжай пожалуйста, приятно смотреть.
Только сегодня пересматривал старый ролик о создании бота на grammy.js, и сегодня новый ролик выходит😮
Совпадение? Не думаю 🎩
Я в шоке, насколько же все понятно, очень крутой подход, жду новых видео.
Хотим про методы логин и пей) Хотим больше про телеграмм бота на js)) Спасибо за видео!
И про плагины
Отличное видео, прям по полочкам все разложил. Хотелось бы еще про login и pay посмотреть ;)
Отличное видео. Большое спасибо. Хотелось бы ещё узнать про логин, взаимодействие с бэкендом и хранение стейта действий пользователя)
Вы очень хорошо объясняете. Видео про плагины будет очень полезным
Спасибо. Единственный ролик про Grammy!
Как будущий сеньер хочу сказать большое спасибо за видос!)
Прошлое видео по grammY очень понравилось Это ему ничем не уступает
Жду больше подобного контента! Спасибо! :)
Просто огонь! Почаще бы видосики выходили, было бы ещё круче!)
Пока не начал смотреть, но зная Арсения... Видео будет крутым и наполненным💯🔥
Спасибо тебе. Изучаю JS и вот в качестве материала твой видос очень мне полезен
Отличный ролик у тебя хорошо получается пояснять
Спасибо,очень хорошо объяснено что куда и зачем. ))
Очень доходчиво, лайк!
Автор лучший! Расписано все идеально, каждый модуль понятен, ну просто 🫶
сейчас делаю тг бота типо словаря русско-английского, я не понимаю почему так мало лайков, ты просто красавчик, что делаешь такой полезный контент, все понятно и круто рассказано!!
Автор, приветствую 🤝. Случайно увидел твои видео, мне понравилось то, как объясняешь, примеры и сам стиль повествования. Круто делаешь! Хотелось бы увидеть разбор асинхронности от тебя, классов и наследований.
видео отличное, давай еще выпуск про то как бот может принимать заявки в канал делать рассылки, проверять наличие подписки в канале, следить если отписался от канала...
Круто спасибо за такой контент!
Спасибо! Отличное видео!
от души) те кто пишут тебе на хабре, мол "зачем делаешь, всё равно в доке лучше", так я как начинающий только от тебя узнал про эту библиотеку! Респект!
И расскажи про логин и пэй + про плагины
Спасибо, дружище!!!
отличный урок, сделай ещё видео но уже с допустим каким-то фулл проект ботом на подобии инет магазина
Спасибо за обширный гайд на Ботам! Хотелось бы конечно примеры использования всех возможных плагинов увидеть, поэтому ждём-с видео на эту тему. 😊
P.S. я настроил у себя плагин Conversation, но т.к. делал это впервые, то есть вероятность, что в коде присутствуют костыли. А вот посмотреть, как используют другие, чтобы перенять какие-либо паттерны - это всегда полезно. Спасибо за ваш труд!
Спасибо за урок!
Расскажи в будущем про login / pay методы
О, ты жив
Ещё чуть осталось пройти по ролику, но контент очень хороший! Вот это объяснение, когда bot.on('message' и пошёл дальше объяснять какие ещё бывают фильтры - ПУШКА. Вот бы так по всему выпадающему (даже дальнейшая ссылка на документацию смотрелась в тему) в js. СПАСИБО!
В тему pet проектов, если кто-то готов в телеге или дискорде объединиться в группу, то можно было бы реализовать идеи, которые могут быть полезны в жизни (вплоть до того, чтобы потом всё в открытую закинуть), но при этом пробовать и подсказывать в командной разработке (даже если git пользуешься на уровне 0) - чтобы прокачаться.
Спасибо!
У меня есть тг: t.me/pomazkovjs
А у него чат: t.me/+Hx6RaBT4Trw3ZjM6
Чат живет, и там пару недель назад кто-то из ребят предлагал такую же кооперацию. Можно поискать или написать ещё раз 🙌🏼
Я в шоке какой красавчик
Спасибо. Прекрасно объясняешь. Хочу видео про плагины!!
Все информативно, спасибо!
Спасибо за ролик! Понравился grammy, а в нем есть scenes и wizards как в telegraf? Было бы интересно посмотреть реализацию более сложной логики для бота 😀
Видео ОГОНЬ 🔥🔥🔥. Очень надеюсь, что ты снимешь видео про продвинутые плагины, логин, пай и ВОТ ЭТО ВСЁ !!! Спасибо тебе и желаю удачи 👍
Здравствуйте, подскажите пожалуйста, планируете ли в ближайшем будущем выпустить ещё одно видео про нюансы языка JS?
По типу замыканий и this
Thanks bro 👏
Крутой ролик! Доступно все рассказано.
А есть плагин, который запускает webapp?
День добрый :)
Если уже начал активно telegraf использовать, имеет ли смысл переходить на иной фрейм/модуль? Заранее благодарю :)
Ролик топ и я думаю мне нужно установить гит?
А что в этом фреймворке с машиной состояний?
Хороший ролик, спасибо. Но в разработке ботов есть один популярный кейс, реализация которого варьируется от фреймворка к фреймворку. Я про последовательные сообщения. Например если бот задаёт тебе ряд сообщений с разными вопросами. Было бы интересно посмотреть как в Grammy сделать такой флоу
Ля топ
Благодарю, очень полезный ролик!
Единственное пока ковырялся, так и не понял, как отправить файл в телегу (я его сформировал в боте по полученным данным и хочу выгрузить в виде Excel файла)
*Комментарий поддержки*
Пересказ статьи в видео из selectel? Как использовать throttler?
И еще, как можно сделать кнопку START при запуске бота? Чтобы пользователь не открывал для этого меню слева внизу и не писал /start руками?
подскажите как сделать так чтоб можно было назначив бота админом в канале следить за каждой подпиской и отпиской с канала
Пожалуйста подскажите как в grammY открывать mini apps
В Grammy.js вроде был какой-то баг с зависанием при обработке событий или его исправили?
А по какому протоколу работает гремми?
было бы неплох ролик по дискорд боту✨✨
Отличный ролик, подскажите, появилось 2 вопроса:
1) можно ли на сервер копировать папку с ботом прямо с ПК, минуя GitHub
2) что если я хочу исправить что-то в боте или добавить новые фичи. Загружать новый вариант на GitHub и потом снова клонировать на сервер?
Можно, запускаешь на сервер ftp и закидываешь, но это гемор. Так как надо настраивать сервер ftp
Можете рассказать, как заставить бота пересылать сообщение пользователя в определенную группу/чат?
Еще раз спасибо, но тут можно сказать обзор базового функционала. Может быть теперь сделаешь курс по созданию сложного бота, с базой данных, с регурярными выражениями, чтобы он мог на определенные запросы, по какой-либо логике обрабатывая ключевые слова из сообщения пользователя, реагировать определенным действием - выдавать файлов, видео, фото. И да, хоть это будет чуть более трудоемко, зато действительно топовый ОРИНИНАЛЬНЫЙ И ТОЛКОВЫЙ курс будет и толковый. Го, тыж сеньор.
А че там с бд не понятно. Я использовал sequilize и с postgres его подружил. Удобно сообщения. Юзера записывать. Да и многое другое. Я например через бд сделал нижнее меню. Вообще шикарно получается. Если че надо пиши - если знаю расскажу что знаю) опыт js 3 месяца))))
Очень хотим про плагины!
Что за деплой бота без вебхуков?
Как фотографию добавить? Помогите плз
Сцены есть?
А как использовать функции в grammy js ,
В 20 ноде же уже не нужно тянуть за собой dotenv и nodemon
“start”: “node -env-file=.env ./index.js”,
“start:dev”: ”node -env-file=.env -watch ./index.js”
А и ещё Winston прикрутить. Прикольно когда сам бот тебе же в телегу присылает ошибки в коде. Ну эт понятно что логи пишутся в файлы , заменяется сами и все такое))))))
Арсений, сними видео про отдельные плагины ....
Вопрос теперь только,как и где потом продавать таких ботов?
Привет, спасибо за видео, а бывают ли бесплатные сервера, может кто-то подскажет?
конечно. это твой компьютер. если хочешь что то серьезное - плати 4 бакса/евро в месяц. с бесплатным можно погуглить но это режим инвалидной коляски подчастую
Да, мой бот на Grammy работает на бесплатном хосте cloudflare. В документации Grammy все прекрасно расписано про хост
login pay plugin please
Кит инит не работает
команда npm start не работает, что делать?
Какая ошибка в консоли?
1) проверить, установлен ли npm (команда npm -v должна выдать версию)
2) посмотреть, что указано в package.json в разделе scripts
@@pomazkovjs спасибо, проблему я уже решил, оказывается я в первой строчке где перепутал точку с запятой
Урок бомба, но нафига node modules в репу сливать)
Спасибо!
Хахахаха, да, ошибочка - забыл добавить в гит игнор :D
@@pomazkovjs пол 5 утра переписываю бота на grammy 😂😂
Да, но зачем? Да ещё в 2024?
Грэмми помойка