В пятницу мои коллеги обсуждали, что создать бота очень легко. Конечно, я тоже решила попробовать. Открываем настройки в приложении телеграмм, копируем ссылку с последнего скриншота и открываем её в любом браузере, где есть прокси. Ну или не открывайте, а просто читайте дальше.
По ссылке можно найти инструкцию для разработчиков и много интересного.
Далее находим в инструкции, что для создания бота надо написать https://t.me/botfather. Копируем ссылку и пользуемся поиском в телеграмме.
Нажимаем кнопку Start -> Появляется много текста на английском -> Читаем/Не читаем его -> Вводим команду /newbot -> Бот спрашивает имя нашего бота -> Вводим имя -> Вводим юзернейм, который должен быть уникальным -> Получаем поздравления и уникальный токен. Вот как выглядит моя переписка с ботом:
Уже можно перейти по ссылке на бота и увидеть, что он пока что никак не реагирует. Но он уже создан! Успех. Время написать какой-то функционал. Создаём новый проект в Inteliji Idea. Я выбрала мавен при создании нового проекта.
Я буду использовать https://github.com/kotlin-telegram-bot/kotlin-telegram-bot для создания бота, чтобы сильно не усложнять.
Копируем текс ниже в файл pom.xml:
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>io.github.kotlin-telegram-bot.kotlin-telegram-bot</groupId>
<artifactId>telegram</artifactId>
<version>4.5.0</version>
</dependency>
</dependencies>
Ура! Самое сложное сделано. Теперь можно начать работать с ботом. Создаём новый котлин класс. Будет предложено сконфигурировать котлин проект. Соглашайтесь и потом делайте синхронизацию (просто везде соглашайтесь при появляющихся табличках).
Для теста я скопировала текст из документации и поместила его в companion object с аннотацией. И надо вставить тут свой токен.
Запустила проект и поняла, что ничего не получится из-за ошибки: HTTP FAILED: java.net.ConnectException: Failed to connect to api.telegram.org. Тут, видимо, надо писать всё самой, потому что придётся указывать, чтобы бот работал через прокси. Но, если вы не в России, то всё должно работать. :)