Автор: Владилен Минин
Данный курс посвящен разработке Telegram-ботов на платформе NodeJS. Курс состоит из 3 частей, которые подробно и структурировано обучат вас создавать ботов с полного нуля.
Данный вступительный блок посвящен введению в теорию Telegram-ботов. Вы узнаете, что такое боты, как разрабатывать ботов, какой язык программирования использовать. Далее вы узнаете, как регистрировать ботов. После чего мы с вами создадим и запустим простого бота, который будет просто приветствовать пользователя, который напишет ему сообщение.
В данном уроке вы узнаете, что такое Telegram-боты. Вы увидите, как они работают и узнаете, что вообще они могут делать и как их найти.
В данном уроке мы разберем принцип работы Telegram-ботов. Вы узнаете, как они работают с точки зрения разработки, и мы также рассмотрим фреймворк, который будет использоваться при их создании.
В данном уроке вы узнаете, как зарегистрировать бота в Telegram. В результате урока мы получим токен, который позволит нам делать запросы к API Telegram.
В данном уроке вы увидите, как можно написать простого бота, который будет приветствовать человека по имени в ответ на его сообщение.
Данный блок посвящен подробному разбору возможностей Telegram-бота. Вы узнаете про множество настроек, которые можно выполнить над самим ботом при его создании. Далее мы начнем подробно разбирать каждую функцию, которая есть в Telegram для взаимодействия с пользователем. Вы узнаете, как формировать любые элементы интерфейса, которые заложены в боте, например, клавиатуры разных типов, отправка любых медиа файлов и много другое. Дополнительно мы разберем, как задавать инлайн режим для бота, как связывать бота с платежными системами и продавать товар прямо внутри Telegram.
В данном уроке вы узнаете про дополнительные настройки для бота, которые вы можете задать ему при создании.
В этом уроке вы узнаете про оставшиеся возможности и опции, которые присутствуют в Telegram-боте, например, включение инлайн режима.
В данном уроке мы подробно рассмотрим, что такое polling, зачем он нужен при создании бота, и как его можно кастомизировать для более производительной работы.
В данном уроке мы подробно рассмотрим функцию, которая вызывается при получении сообщения от пользователя. Вы узнаете, как принимать сообщение, какие данные есть у сообщения, которые мы сможем использовать, и как обрабатывать отправку сообщения – отслеживать статус отправки и обрабатывать ошибки, если они есть.
В данном уроке вы узнаете, как обрабатывать специальные команды, которые также можно задавать при настройке, которые приходят от бота.
В данном уроке вы узнаете, как отправлять не просто сообщения, а как сделать их более красивыми, отправляя HTML код пользователю.
В данном уроке мы рассмотрим еще один формат, который мы можем отправлять пользователю в ответ – формат markdown.
В данном уроке мы разберем еще несколько опций, которыми мы можем кастомизировать отправку сообщения.
В данном уроке вы узнаете, как формировать простую клавиатуру для отправки фиксированных команд боту. Дополнительно мы рассмотрим опции, которые поддерживает клавиатура, например, запрос на локацию пользователя, ссылки и прочее.
В данном уроке вы узнаете, как формировать инлайн клавиатуру. Мы поговорим про различные виды ее кастомизации, способы формирования и обработки данных.
В данном уроке вы узнаете про то, как добавить поддержку инлайн режима в боте. Например, вы узнаете, как отправлять информацию во всплывающем окне, когда к боту обращаются из любого чата.
В данном уроке вы узнаете, как с помощью бота вы сможете выбирать любое сообщение и перенаправлять в любой чат.
В этом уроке вы узнаете, как использовать функцию цитирования сообщения с ответом от самого бота.
В этом уроке вы узнаете, как редактировать уже отправленное сообщение с помощью бота.
В данном уроке вы узнаете, какие методы в боте нужно использовать для удаления нужного сообщения.
Начиная с данного урока, мы начнем изучение методов бота, которые позволяют работать с медиа файлами. В данном уроке вы узнаете несколько способов отправки картинок, используя бота.
В данном уроке вы узнаете 2 способа отправки аудио файлов через Telegram-бота. Так же мы поговорим про то, как правильно сообщать пользователю о том, что идет асинхронная загрузка большого файла.
В данном уроке вы узнаете, как отправлять файлы разных типов, используя Telegram-бота. В уроке мы рассмотрим, как отправлять zip-архивы и файлы типа .xlsx.
В данном уроке вы узнаете, как отправлять стикеры, используя Telegram-бота. Вы узнаете про специальное разрешение и тип файлов, которые будут распознаваться как стикеры внутри Telegram.
В данном уроке вы узнаете какие есть методы у Telegram-бота для отправки видео пользователю. Вы узнаете, как отправлять целые видео, или только сниппеты, округленные до минуты.
В данном уроке вы узнаете, как отправить геолокацию, которая будет представлена в виде карты, пользователю через Telegram-бота.
В данном уроке вы узнаете, как отправить контакт какого-либо пользователя внутри Telegram.
В данном уроке вы узнаете, как создавать товары и предлагать их пользователю через Telegram-бота. Вы узнаете, как подключить способ оплаты товара через Яндекс.Кассу и как правильно настроить отображение товара.
Данный блок посвящен практической части создания Telegram-бота. В этом блоке мы объединим теоретические знания, которые были в прошлой части, и будем использовать множество из них при создании реального бота. Мы создадим бота, который будет отвечать за фильмы и кинотеатры. Вы сможете выбрать категорию фильмов и отобразить детальный вид каждого из них. Также вы сможете увидеть, в каких кинотеатрах данный фильм идет. Выбирая кинотеатры, вы сможете увидеть, какие фильмы в них идут, посмотреть где кинотеатр находится на карте. Дополнительно вы сможете отправить свою геолокацию боту, и он вам покажет список кинотеатров в порядке возрастания от вашего положения, плюс он покажет сколько вам до него добираться. В боте будет реализована возможность небольшого личного кабинета, где вы сможете добавлять любые фильмы в избранное и после обращаться к ним. Также вы сможете обращаться к этому боту в любом чате, и он будет показывать список фильмов, которые в нем есть.
В данном уроке мы зарегистрируем и настроим нового бота, получим его токен и включим необходимые возможности бота.
В данном уроке мы создадим структуру проекта, где будем разрабатывать бота. Настроим рабочее окружение для более продуктивной разработки.
В данном уроке мы создадим базовую клавиатуру, с помощью которой пользователь сможет легко выполнять навигацию внутри бота.
В данном уроке мы создадим еще один экран бота, который будет содержать в себе другой набор команд и возможность возвращаться к главному экрану.
В данном уроке мы создадим подключение к базе данных MongoDB (используя Mongoose) для дальнейшего получения данных.
В данном уроке мы создадим схему и модель для работы с объектами фильмов через базу данных.
В данном уроке мы создадим коллекцию фильмов в MongoDB и наполним ее данными фильмов.
В данном уроке по запросу бота на получение фильмов мы сделаем загрузку данных из MongoDB в скрипт.
В данном уроке мы выведем список фильмов пользователю внутри Telegram, используя HTML разметку для красивого отображения.
В данном уроке мы обработаем команду бота на получение конкретного фильма, получим его из базы данных и красиво выведем его детальное отображение пользователю с картинкой, описанием и дополнительной информацией и инлайн клавиатурой.
Урок 11. Сохранение кинотеатров в базу
В данном уроке мы создадим коллекцию кинотеатров в MongoDB, создадим схему и модель для дальнейшей работы с данными сущностями и заполним ими базу.
В данном уроке мы создадим новый экран бота для работы с кинотеатрами. Мы создадим кнопку, которая будет требовать локацию пользователя для вывода кинотеатров в зависимости от его положения.
В данном уроке мы выведем красивый список кинотеатров пользователю, и также добавим возможность перейти на детальное отображение конкретного кинотеатра.
В данном уроке мы обработаем команду бота, которая будет забирать нужный кинотеатр из базы данных и будет выводить информацию пользователю с дополнительной навигацией в виде инлайн клавиатуры.
В данном уроке мы создадим схему и модель пользователя, куда впоследствии мы будем записывать список избранных фильмов, которые пользователь будет добавлять.
В данном уроке вы узнаете, как правильно обработать команды, которые будут выполняться при клике пользователя на инлайн клавиатуру. В нашем боте мы будем использовать 4 разных команды, которые будут приходить от пользователя, и вы узнаете, как правильно их обрабатывать в одном методе для прослушки событий с инлайн клавиатуры.
В данном уроке мы обработаем команду добавления или удаления конкретного фильма из избранного для каждого из пользователей, данные которых будут сохраняться в MongoDB. Также мы добавим специальный алерт, который будет говорить пользователю о том, какое действие он сделал.
В данном уроке мы обработаем последнюю кнопку навигации на главном экране и будем показывать те фильмы, которые добавлены пользователем в избранное с возможностью перейти к нужному фильму и удалить его из избранного.
В данном уроке мы обработаем еще одну кнопку инлайн клавиатуры, которая будет показывать список кинотеатров, в которых идет нужный фильм.
В данном уроке мы обработаем следующую кнопку инлайн клавиатуры, которая будет показывать нужный кинотеатр на карте.
В данном уроке мы обработаем последнюю кнопку инлайн клавиатуры, которая будет показывать список фильмов, которые сейчас идут в нужном кинотеатре.
В данном заключительном уроке мы реализуем возможность обращаться к нашему боту в любом чате Telegram. При запросе к боту мы будем показывать список фильмов, которые есть у бота. При выборе нужного фильма мы будем отправлять его детальное отображение и описание в текущий чат.
БОНУСЫ
Данный курс предназначен для тех, кто уже знаком с основами JavaScript, но никогда не работал с такой платформой как NodeJS. Курс будет полезен тем, кто хочет повторить и научиться работать с серверным JavaScript. В курсе мы будем изучать NodeJS с самых основ: от установки данного инструмента на компьютер, до создания собственного веб-сервера. Вы узнаете, как работать с пакетным менеджером NPM, узнаете про модульность JavaScript конструкций, про файл package.json, работу с файлами через JavaScript и многое другое. Все темы будут разобраны на практике и вы увидите, как реализовывать тот или иной функционал.
Данный курс по ES6 предназначен для тех, кто хочет следовать современным трендам веб-разработки. Речь идет о новой спецификации языка JavaScript – ES6 (EcmaScript 6). Данная спецификация привнесла большое количество нововведений в язык, которые мы с вами подробно будем рассматривать в этом курсе. Мы начнем с настройки окружения с помощью Webpack, для того, чтобы компилировать язык в старую спецификацию ES5, для того, чтобы люди, работающие в старых бразуерах могли пользоваться тем функционалом, что мы напишем. Ну а если вы работаете в современных браузерах, то у вас все будет поддерживаться нативно. После, мы разберем все функции, которые нам привнес ES6, начиная от переменных и классов, и заканчивая промисами и генераторами. Также мы разберем, как преобразуются некоторые фичи ES6 в ES5 и реализуем несколько из них, чтобы понимать, как оно работает.
Данный курс посвящен такой технологии как MongoDB. MongoDB – база данных, которая может работать в приложениях, написанных на платформе NodeJS. В данном курсе мы рассмотрим базовые навыки, которые вам потребуются для изучения данной технологии – мы подробно изучим, как установить MongoDB на компьютер и запускать ее как фоновый сервис в системе, для того, чтобы она была доступна. Также мы рассмотрим несколько консольных команд, которые позволять вам проверять содержимое базы данных. В курсе мы рассмотрим инструмент Mongoose, который удобно позволяет работать с схемами и моделями в рамках MongoDB.
Данный урок посвящен теме парсинга сайтов используя платформу NodeJS. Урок, который даст основы знаний, которые понадобятся для парсинга любых сайтов на NodeJS и получения данных, даже если у сайта нет API. В данном уроке мы разберем как с помощью очень удобной библиотеки Cheerio вы можете получить содержимое любого сайта у вас в скрипте. Помимо самого DOM дерева вы получите возможность манипулировать любыми элементами, полученными с сайта используя библиотеку jQuery. В результате урока мы напишем скрипт, который будет парсить сайт National Geographic, получать нужные нам картинки и отдельным стримом сохранять все картинки локально у нас на компьютере.
После покупки вы получите доступ к закрытому разделу форума, где сможете в течение 6 месяцев с момента покупки задавать вопросы по курсу и в течение 48 часов гарантированно получить персональную поддержку автора курса. Личная поддержка – это наставник за спиной. Уверенность в том, что у вас всё получится. Потому что, если не будет получаться, вы сможете спросить автора – и он подробно расскажет причины, по которым не получается и что нужно сделать, чтобы исправить ситуацию. Вы исправляете, и идёте дальше по курсу. Это предсказуемая (в чём-то даже рутинная) дорога к мастерству.