Skip to content

Practice Intro

Vladislav Metelyagin edited this page Sep 11, 2021 · 1 revision

Практическое задание 1

  1. Запустите IntelliJ IDEA
  2. Откройте в IDE проект https://github.com/discodasha/jaicf-console-template (File → New → Project from Existing Resources)
  3. Дождитесь, пока gradle закончит индексацию
  4. Запустите файл Console.kt (src → main → kotlin → connections), нажав на зеленый треугольник с левой стороны кода.
  5. В терминале внизу IDE попробуйте ввести что-нибудь и нажмите Enter

Как тестировать в консоли 1

Бот должен что-нибудь ответить!

Как тестировать в консоли 2

Ура! Вы запустили своего первого бота на JAICF! Давайте теперь посмотрим, что он умеет (и не умеет тоже)

Практическое задание 2

Откройте файл MainScenario.kt и ответьте на вопросы

  1. На какие запросы бот будет отвечать чем-то отличным от "В вашем запросе N символов"?
  2. По какой команде можно попасть в игру?
  3. Какая зависимость(и) прописана(ы) в файле build.gradle.kts, но не используе(ю)тся в боте?

Задача со звездочкой: какой запрос в игре сломает её?

Практическое задание 3

А напоследок давайте опубликуем нашего бота в telegram-канале для полной картины!

  1. В папке connections создайте файл Telegram.kt
  2. Добавьте туда следующий код
fun main() {
    TelegramChannel(templateBot, "").run()
}
  1. Если IDE подсветит что-нибудь красным, наведите курсор и в выпадающем списке выберите опцию "import...", тем самым разрешая зависимости.
  2. В Telegram найдите BotFather, через который можно получить специальный токен img.png
  3. Командой /newbot запустите создание бота и проследуйте инструкции.
  4. В конце BotFather сгенерирует специальный API-token, который и надо вставить в TelegramChannel в коде выше.
  5. У вас должно получиться примерно это:
fun main() {
TelegramChannel(templateBot, "0000000:asdsadadasdsadasdsadasdsadsdadadas").run()
}
  1. Запустите этот файл и напишите что-то в только созданного вами бота в Telegram.
  2. Он должен вам ответить.
  3. Вуаля, вы прекрасны!

Важно! При остановке Telegram.kt локально ваш телеграм-бот перестанет работать. Чтобы отправить его в "вечное выполнение", его надо развернуть где-нибудь на внешних серверах или платформах. Как развернуть ботов в JAICP Cloud, мы рассмотрим в следующих разделах.

Introduction

Development Basics - NLU

Development Basics

Development Deep

  • Точки расширения фреймворка
  • Кастомизация DSL
  • Сценарные сервисы JAICP

Интеграция с JAICP

  • Встраивание JAICF-модуля в существующего бота

Release

  • Логирование и мониторинг ошибок
  • JAICF Community Process

FAQ

  • NLU FAQ
  • Channels FAQ
  • Persistance FAQ
Clone this wiki locally