====== Разработка бота ====== ===== Подготовка к демо-уроку ===== ==== У вас есть инструменты разработки (Idea, Git, JDK, Gradle) ==== - Склонировать репозиторий ''git@github.com:SonicNorg/otus-demo.git'' ==== У вас нет указанных инструментов ==== - Скачать и установить [[https://download.virtualbox.org/virtualbox/6.1.0/VirtualBox-6.1.0-135406-Win.exe|VirtualBox]] (в биосе должна быть включена виртуализация!) - Скачать и запустить [[https://yadi.sk/d/tWN-UfcTb3cPFQ|виртуалку]], размер примерно 2,5 Гб - В виртуалке настроить разрешение: клик на рабочем столе - Applications - Preferences - ARandR, затем правый клик на прямоугольнике "Virtual1" - Resolution - 1440x900 (например). - Запустить IntelliJ IDEA: клик на рабочем столе - Applications - Other - jetbrains-idea-ce Затем надо пообщаться в телеграме с [[https://t.me/BotFather|@BotFather]], создав нового бота и получив его токен ==== Когда вы запустили IDEA (свою или в виртуалке) ==== - В файле ''gradle.properties'' вписать вместо krizhanovskiy свою фамилию латиницей (см. картинку) - В файле ''Main.kt'' вписать имя и токен бота, полученные от @BotFather (см. картинку) - Выполнить в терминале Идеи ''./gradlew shadowJar'' У вас получилось, если в папке проекта вы можете найти файл ''build/libs/lastName-demo-bot-1.0-SNAPSHOT-all.jar'' с вашей фамилией вместо ''lastName'' (см. картинку, цифра 3). Буду рад ответить на ваши вопросы в Слаке! {{:otus:otus-demo-guide.png?300|}} ===== Задание на демо-уроке ===== - Переопределить метод ''onUpdateReceived(update: Update?)'', который выполняется при получении ботом нового события - В методе нужно создать сообщение и отправить его в ответ на любое событие Получение id чата, из которого пришло сообщение: val chatId = getChatId(update) Создание сообщения: val message = SendMessage() .setChatId(chatId) .setText("Привет, я бот!") Отправка сообщения: execute(message) ===== Запуск бота ===== ./gradlew deploy Для остановки - ''Ctrl+C'' ===== ТЕСТ ===== [[https://forms.gle/phuoFPJMcDtUsVj36]]