Как создать бота в visual studio
Creating your first bot doesn't require an Azure subscription or an Azure Bot Service resource. This quickstart focuses on creating your first bot locally. If you'd like to learn how to create a bot in Azure, see Create an Azure Bot resource.
Prerequisites
Templates
To add the bot templates to Visual Studio, download and install the Bot Framework v4 SDK Templates for Visual Studio VSIX file.
To install the templates in Visual Studio, in the top menu bar, navigate to Extensions > Manage Extensions. Then search for and install Bot Framework v4 SDK for Visual Studio.
To install the Bot Framework templates:
Open a console window.
Verify the templates have been installed correctly.
The above installation steps will install all three Bot Framework templates. You don't need to install all the templates and can install just the ones you will use. This article makes use of the echo bot template.
- Java 1.8 or later or your favorite IDE, if you want to edit the bot code.
- Install Maven
- Install node.js version 12.10 or later.
- An Azure account if you want to deploy to Azure.
Templates
Use the Yeoman generator to quickly set up a conversational AI bot using core AI capabilities in the Bot Framework v4. For more information, see yeoman.io.
The generator supports three different template options as shown below.
Template | Description |
---|---|
Echo Bot | A good template if you want a little more than "Hello World!", but not much more. This template handles the very basics of sending messages to a bot, and having the bot process the messages by repeating them back to the user. This template produces a bot that simply "echoes" back to the user anything the user says to the bot. |
Empty Bot | A good template if you are familiar with Bot Framework v4, and simply want a basic skeleton project. Also a good option if you want to take sample code from the documentation and paste it into a minimal bot in order to learn. |
Core Bot | A good template if you want to create advanced bots, as it uses multi-turn dialogs and LUIS, an AI based cognitive service, to implement language understanding. This template creates a bot that can extract places and dates to book a flight. |
Install Yeoman
Assure that you have installed node.js version 12.10 or later.
Install Yeoman. Make sure to install globally.
Install generator-botbuilder-java. Make sure to install globally.
Verify that Yeoman and generator-botbuilder-java have been installed correctly.
Templates
To install Yeoman and the Yeoman generator for Bot Framework v4:
Open a terminal or elevated command prompt.
Switch to the directory for your JavaScript bots. Create it first if you don't already have one.
Make sure you have the latest versions of npm and Yeoman.
Install the Yeoman generator. Yeoman is a tool for creating applications. For more information, see yeoman.io.
The install of Windows build tools listed below is only required if you use Windows as your development operating system. For some installations, the install step for restify is giving an error related to node-gyp . If this is the case you can try running this command with elevated permissions. This call may also hang without exiting if Python is already installed on your system:
Only run this command if you are on Windows.
- Python 3.8.3
- Knowledge of asynchronous programming in Python
Create and enable a virtual environment
A virtual environment is a combination of a specific Python interpreter and libraries that are different from your global settings. The virtual environment is specific to a project and is maintained in the project folder. A benefit to using a virtual environment is that as you develop a project over time, the virtual environment always reflects the project's exact dependencies. To learn more about virtual environments, see Creation of virtual environments.
Navigate to the directory where you want to create your bot. Then run the following commands for your preferred platform. After you activate your virtual environment, your command line/terminal should be prefaced with (venv) . This lets you know that the virtual environment is active. You can deactivate your virtual environment at any time by typing: deactivate .
macOS/Linux
Windows
Templates
Install the necessary packages by running the following pip install commands:
If you're using a 32-bit version of Python, make sure you also run pip install cryptography==2.8 .
Create a bot
Thanks to the template, your project contains all the necessary code to create the bot in this quickstart. You don't need any additional code to test your bot.
In Visual Studio Code, open a new terminal window.
Navigate to the directory in which you want to create your bot project.
Create a new echo bot project using the following command. Replace with the name to use for your bot project.
Open a new terminal window.
Navigate to the directory in which you want to create your bot project.
Create a new echo bot project using the following command. Replace with the name to use for your bot project.
If you create a Core bot:
- Only the solution directory receives the bot name.
- You'll need a LUIS language model. You can create a language model at luis.ai. After creating the model, update the configuration file.
Run the following command to create an echo bot from templates. The command uses default options for its parameters.
Yeoman prompts you for some information with which to create your bot. For this tutorial, use the default values.
The generator supports a number of command line options that can be used to change the generator's default options or to pre-seed a prompt. The options are case-sensitive.
Thanks to the template, your project contains all the code that's necessary to create the bot in this quickstart. You don't need any additional code to test your bot.
If you create a Core bot, you'll need a LUIS language model. You can create a language model at luis.ai. After creating the model, update the configuration file.
Use the generator to create an echo bot.
Yeoman prompts you for some information with which to create your bot. For this tutorial, use the default values.
Thanks to the template, your project contains all the code that's necessary to create the bot in this quickstart. You don't need any additional code to test your bot.
If you create a Core bot, you'll need a LUIS language model. You can create a language model at luis.ai. After creating the model, update the configuration file.
From your working directory, run the following command to download the echo bot template and its dependencies:
You'll be prompted to give your bot a name and description. Enter the following values:
Start your bot
In Visual Studio
- Open your bot project.
- Run the project without debugging.
This will build the application, deploy it to localhost, and launch the web browser to display the application's default.htm page. At this point, your bot is running locally on port 3978.
To run your bot from VS Code:
Open your bot project folder.
If you're prompted to select a project, select the one for the bot you just created.
Go to Run, and then select Run Without Debugging.
- If this command updated your launch settings, save the changes and rerun the command.
This will build the application, deploy it to localhost, and launch the web browser to display the application's default.htm page. At this point, your bot is running locally on port 3978.
To run your bot locally in a command prompt or terminal:
Change directories to the project folder for your bot.
Use dotnet run to start the bot.
This will build the application and deploy it to localhost. The application's default web page will not display, but at this point, your bot is running locally on port 3978.
From a terminal, navigate to the directory where you saved your bot, then execute the commands listed below.
Build the Maven project and packages it into a .jar file (archive).
Run the bot locally. Replace the archive-name with the actual name from the previous command.
You are now ready to start the Emulator.
In a terminal or command prompt change directories to the one created for your bot, and start it with npm start .
At this point, your bot is running locally on port 3978.
From the command line/terminal, change directories to echo_bot .
Install the dependencies for the echo bot template.
After the dependencies are installed, run the following command to start your bot:
You will know your bot is ready to test when you see the last line shown in the screenshot below:
Start the Emulator and connect your bot
Start the Bot Framework Emulator.
Select Open Bot on the Emulator's Welcome tab.
Необходимые условия
Шаблоны
Чтобы добавить шаблоны бота в Visual Studio, скачайте и установите шаблоны пакета SDK Bot Framework версии 4 для Visual Studio VSIX.
Чтобы установить шаблоны в Visual Studio, в верхней строке меню перейдите к расширениям ExtensionsManage>. Затем найдите и установите пакет SDK Bot Framework версии 4 для Visual Studio.
Чтобы установить шаблоны Bot Framework:
Откройте окно консоли.
Убедитесь, что шаблоны установлены правильно.
Приведенные выше шаги по установке установит все три шаблона Bot Framework. Вам не нужно устанавливать все шаблоны и можно установить только те, которые будут использоваться. В этой статье используется шаблон эхо-бота .
- Java 1.8 или более поздней версии или предпочитаемую интегрированную среду разработки, если вы хотите изменить код бота.
- Установка Maven
- Установите node.js версии 12.10 или более поздней.
- Учетная запись Azure, если вы хотите выполнить развертывание в Azure.
Шаблоны
Используйте генератор Yeoman для быстрой настройки бота ИИ для общения с помощью основных возможностей искусственного интеллекта в Bot Framework версии 4. Дополнительные сведения см . в yeoman.io.
Генератор поддерживает три разных варианта шаблона, как показано ниже.
Установка Yeoman
Убедитесь, что вы установили node.js версии 12.10 или более поздней.
Установите Yeoman. Убедитесь, что установка будет глобальной.
Установите generator-botbuilder-java. Убедитесь, что установка будет глобальной.
Убедитесь , что Yeoman и generator-botbuilder-java установлены правильно.
Шаблоны
Чтобы установить Yeoman и генератор Yeoman для Bot Framework версии 4, выполните следующие действия.
Откройте окно терминала или командную строку с повышенными привилегиями.
Перейдите в каталог для ботов JavaScript. Сначала создайте его, если у вас его еще нет.
Убедитесь, что у вас есть последние версии npm и Yeoman.
Установите генератор Yeoman. Yeoman — это средство для создания приложений. Дополнительные сведения см . в yeoman.io.
Установка средств сборки Windows, перечисленных ниже, требуется только в том случае, если вы используете Windows в качестве операционной системы разработки. Для некоторых установок шагом установки restify является предоставление ошибки, связанной с node-gyp . В этом случае можно попробовать выполнить эту команду с повышенными разрешениями. Этот вызов также может зависнуть без выхода, если Python уже установлен в системе:
Выполните эту команду только в том случае, если Windows.
- Python 3.8.3
- Знание асинхронного программирования на Python
Создание и включение виртуальной среды
Виртуальная среда — это сочетание конкретного интерпретатора Python и библиотек, которые отличаются от глобальных параметров. Виртуальная среда предназначена для конкретного проекта и хранится в папке проекта. Преимущество использования виртуальной среды заключается в том, что при разработке проекта с течением времени виртуальная среда всегда отражает точные зависимости проекта. Дополнительные сведения о виртуальных средах см. в разделе "Создание виртуальных сред".
Перейдите в каталог, в котором вы хотите создать бота. Затем выполните следующие команды для предпочитаемой платформы. После активации виртуальной среды перед командной строкой или терминалом должен появиться интерфейс (venv) . Это позволит узнать, что виртуальная среда активна. Вы можете отключить виртуальную среду в любое время, введя: deactivate
macOS/Linux
Windows
Шаблоны
Установите необходимые пакеты, выполнив следующие pip install команды:
Если вы используете 32-разрядную версию Python, убедитесь, что вы также используете . pip install cryptography==2.8
Создание бота
Благодаря шаблону проект содержит весь необходимый код для создания бота в этом кратком руководстве. Для тестирования бота не требуется дополнительный код.
В Visual Studio Code откройте новое окно терминала.
Перейдите в каталог, в котором вы хотите создать проект бота.
Создайте проект эхо-бота с помощью следующей команды. Замените имя для проекта бота.
Откройте новое окно терминала.
Перейдите в каталог, в котором вы хотите создать проект бота.
Создайте проект эхо-бота с помощью следующей команды. Замените имя для проекта бота.
При создании основного бота :
- Имя бота получает только каталог решения.
- Вам потребуется языковая модель LUIS. Языковую модель можно создать на luis.ai. После создания модели обновите файл конфигурации.
Выполните следующую команду, чтобы создать эхо-бот на основе шаблонов. Команда использует параметры по умолчанию.
Yeoman запрашивает у вас некоторые сведения, с помощью которых можно создать бота. В этом руководстве используются значения по умолчанию.
Генератор поддерживает ряд параметров командной строки, которые можно использовать для изменения параметров генератора по умолчанию или предварительного заполнения запроса. Параметры чувствительны к регистру.
Благодаря шаблону проект содержит весь код, необходимый для создания бота в этом кратком руководстве. Для тестирования бота не требуется дополнительный код.
При создании бота Core вам потребуется языковая модель LUIS. Языковую модель можно создать на luis.ai. После создания модели обновите файл конфигурации.
Используйте генератор для создания эхо-бота.
Yeoman запрашивает у вас некоторые сведения, с помощью которых можно создать бота. В этом руководстве используются значения по умолчанию.
Благодаря шаблону проект содержит весь код, необходимый для создания бота в этом кратком руководстве. Для тестирования бота не требуется дополнительный код.
При создании бота Core вам потребуется языковая модель LUIS. Языковую модель можно создать на luis.ai. После создания модели обновите файл конфигурации.
В рабочем каталоге выполните следующую команду, чтобы скачать шаблон эхо-бота и его зависимости:
Вам будет предложено ввести имя и описание бота. Введите следующие значения:
- bot_name: echo_bot
- bot_description: бот, который возвращает ответ пользователя.
Запуск бота
В Visual Studio
- Откройте проект бота.
- Запустите проект без отладки.
Это приведет к созданию приложения, его развертыванию на localhost и запуску веб-браузера для отображения страницы default.htm приложения. На этом этапе бот работает локально на порту 3978.
Чтобы запустить бот из VS Code:
Откройте папку проекта бота.
Если вам будет предложено выбрать проект, выберите его для только что созданного бота.
Перейдите в раздел "Выполнить", а затем выберите "Выполнить без отладки".
- Если эта команда обновила параметры запуска, сохраните изменения и повторно выполните команду.
Это приведет к созданию приложения, его развертыванию на localhost и запуску веб-браузера для отображения страницы default.htm приложения. На этом этапе бот работает локально на порту 3978.
Чтобы запустить бот локально в командной строке или терминале:
Перейдите в папку проекта для бота.
Используется dotnet run для запуска бота.
Это приведет к созданию приложения и его развертыванию на localhost. Веб-страница приложения по умолчанию не отображается, но на этом этапе бот выполняется локально на порту 3978.
В окне терминала перейдите в каталог, в котором вы сохранили бота, а затем выполните приведенные ниже команды.
Выполните сборку проекта Maven и упаковывайте его в JAR-файл (архив).
Запустите бот локально. Замените имя архива фактическим именем из предыдущей команды.
Теперь все готово к запуску Emulator.
В терминале или командной строке перейдите в каталог, созданный для бота, и запустите его с npm start .
На этом этапе бот работает локально на порту 3978.
В командной строке или терминале измените каталоги на echo_bot .
Установите зависимости для шаблона эхо-бота.
После установки зависимостей выполните следующую команду, чтобы запустить бот:
Вы узнаете, что бот готов к тестированию, когда увидите последнюю строку, показанную на снимке экрана ниже:
Запустите Emulator и подключите бота
Запустите Bot Framework Emulator.
На вкладке приветствия Emulator "Открыть бот".
Чуть подробнее
Мы будем пользоваться библиотеками Telegram.Bot и Telegram.Bot.Extentions.Polling, обновления будем получать периодически опрашивая Telegram сервер на наличие новых обновлений. Webhook'и мы использовать не будем. Тпру, подождите меня забрасывать гнилыми помидорами, матерые кодеры! Да, метод получения обновлений основанный на Webhook'ах лучше, но Polling проще в реализации поскольку не нужно получать SSL-сертификат и бот можно запустить сразу после написания кода без дополнительных заморочек. На этом новичок может застопориться. К тому же есть ряд нюансов при использовании Webhook'ов на моем сервере. Если они есть у меня, значит они могут быть и у Вас. Потому используем метод периодического опроса сервера Телеграма на наличие новых обновлений. Ладно, уважаемый читатель, если Вы все еще со мной не согласны и желаете получить сертификат и работать на Webhook'ах, можешь почитать о получении сертификата в этой статье.
Существующие схемы работы telegram бота
Там ничего лишнего. Создаем объект TelegramBotClient чтобы взаимодействовать с нашим ботом с помощью библиотеки, прописываем ему токен, который выдал нам BotFather. Далее создаем событие OnMessage, обрабатываем его методом BotOnMessageReceived и запускаем клиент.
Однако с выходом более новых версий TelegramBotAPI оказалось, что такая схема больше не работает. Более того, боты, написанные на более ранних версиях Telegram.Bot перестают работать после обновления библиотеки.
Нужно использовать другую схему. Давайте попробуем в этом разобраться.
Пошаговая инструкция
Итак ниже я набросал следующий список шагов, которые приведут вас к рабочему telegram боту.
1. Запускаем Visual Studio Community, создаем консольное приложение.
Если у Вас отсутствует Visual Studio Community, Вы можете установить ее используя статью или несколько устаревшее видео. При этом желательно выбирать установку Visual Studio Community 2022 как наиболее актуальную версию на текущий момент.
2. Добавляем в консольное приложение библиотеку Telegram.Bot, Telegram.Bot.Extentions.Polling и Netonsoft.Json
Открытие NuGet Поиск библиотеки Установка пакета
По завершению у Вас должны быть установлены и отображены названия пакетов, которые мы установили.
3. Создаем telegram бот в BotFather. Копируем его api key для работы.
Находим в telegram BotFather, отправляем ему /newbot, название и логин бота
BotFather должен нам предоставить API key, который мы должны вставить в код-каркас в следующем шаге в строке
static ITelegramBotClient bot = new TelegramBotClient("TOKEN");
4. В файл Program.cs вставляем следующий код-каркас:
5. Редактируем код под свои нужды и задачи.
К важным я бы отнес еще нажатие кнопки inline клавиатуры пользователем, inline mode - когда пользователь вводит логин бота и поисковой запрос в текстовое поле и бот предоставляет список найденных объектов по этому запросу. Также интересно было бы рассмотреть событие публикации нового поста на канале. Получение от пользователя его номера телефона, файла или геолокации. Но это материал для следующих видеороликов и статей. Если Вам интересно увидеть этот материал на YouTube канале или в статье, ставьте лайки, делитесь статьей с друзьями. При достижении 200 лайков и 20 комментариев я буду знать, что вам нравится данная тема и напишу продолжение.
Целесообразно также данные этого пользователя записать в какую-нибудь базу данных. Например MySQL, PostgreSQL или еще какую-то. Или просто в файл. Напишите в комментариях если Вам это интересно.
await botClient.SendTextMessageAsync(message.Chat, "Здоров, братан! И тебе не хворать!");
Думаю принцип вы поняли.
Полный код ниже:
Не забудьте вставить в код API key от Вашего бота там, где написано TOKEN.
Для удобства записал видео.
Заключение
Итак в этой статье мы с вами создали telegram бот с нуля и протестировали его на работоспособность. Созданную заготовку можно будет использовать в дальнейшем для создания полномасштабных коммерческих проектов.
Disclaimer: во время написания статьи Microsoft выпустил новую версию фреймворка, так что ждите вторую серию: мигрируем бота с v1 на V3.
Готовим среду разработки
Для успешной разработки бота нам будут нужны:
Первый бот
Откроем Visual Studio 2015, у нас появился новый тип проекта:
Созданный проект представляет собой Web API проект с одним контроллером — MessagesController, у которого в свою очередь всего один доступный метод Post:
Запустим теперь установленный Bot Framework Emulator, который знает, что нашего запущенного бота стоит искать именно на порту 3978:
Бот для перевода денег с карты на карту
Для того чтобы перевести деньги с карты на карту, нам нужна информация об этих картах и сумма перевода. Для облегчения задачи написания стандартных сценариев с помощью Bot Framework Microsoft была создана поддержка двух наиболее распространенных вариантов взаимодействия с ботом: Dialogs и FormFlow. В нашем случае подходит FormFlow, потому что всю работу бота можно представить как заполнение некой формы данными, а затем ее обработку. Dialogs же позволяет работать с более простыми сценариями, например, сценарий оповещения при наступлении заданного события (может пригодиться для мониторинга серверов). Начнем создание бота с добавления класса, который и будет представлять собой форму, которую пользователю необходимо заполнить. Этот класс должен быть помечен как [Serializable], для аннотации свойств используются атрибуты из пространства имен Microsoft.Bot.Builder.FormFlow:
Для того, чтобы Bot Framework мог использовать класс в FormFlow, все открытые поля или свойства должны принадлежать одному из следующих типов:
- Интегральные типы: sbyte, byte, short, ushort, int, uint, long, ulong
- Числовые типы с плавающей точкой: float, double
- Строки
- DateTime
- Перечисления
- Список из перечислений
Мы создаем экземпляр класса FormBuilder , указывая, что используем CardToCardTransfer в качестве формы. Теперь с помощью цепочки вызова методов, мы делаем следующее
Остался последний шаг — интегрировать CardToCardFormBuilder в контроллер. Для этого нам нужен метод, возвращающий IDialog , чтобы его в свою очередь передать вторым параметром в метод Conversation.SendAsync.
Собственно связывание происходит в коде Chain.From(() => FormDialog.FromForm(CardToCardFormBuilder.MakeForm)), а затем в метод Do мы передаем метод, который ожидает завершение формирования запроса и его обрабатывает, попутно отвечая за обработку ошибок. Теперь мы можем запустить бота и протестировать его работу в эмуляторе:
Можно убедиться, что бот работает так, как ожидалось, теперь нам подружить его с Bot Connector.
Регистрируем бота в Bot Connector
Не забудем обновить наш web.config, добавив туда AppId и AppSecret, сгенерированные нам на этом шаге. Задеплоим эти изменения. Теперь наш бот появился в меню «My Bots», можно убедиться, что Bot Connector правильно взаимодействует с ботом при помощи окна «Test connection to your bot» внизу слева. Теперь осталось добавить взаимодействие с Telegram, для этого в правом столбце выберем «Add another channel» — «Telegram» — «Add», откроется вот такое окно, в котором по шагам расписано, как нам добавить Telegram бота:
У нас есть традиция – каждой весной мы участвуем в Днях карьеры любимого Новосибирского госуниверситета, главной кузницы наших кадров. И каждый год мы придумываем для студентов что-нибудь любопытное. В этом году сделали мастер-класс о том, как написать чат-бота. Для регистрации на мастер-класс запустили в Telegram собственного бота «Академик» @academic_quiz_bot. Его же все вместе и собирали на мастер-классе.
Если вы еще не завели себе симпатичного бота, сейчас расскажем, как выбирать тему, и, собственно, делать бота.
Шаг 1. Чат-бот и Дни карьеры, где связь?
Придумать интересную тему для мастер-класса было непросто, ведь конкурировать приходится уже и с самими собой. 2 года назад мы за полтора часа мастер-класса на глазах студентов написали мобильное приложение для айфона, которое показывает погоду около их альма-матер НГУ (более 5000 загрузок, и продолжает скачиваться). Год назад мы за 1,5 часа сделали IoT-решение и научились зажигать лампочку со смартфона. В этом году нужно было сделать что-то не менее зажигательное, и мы решили научить студентов делать чат-ботов, ведь эти виртуальные собеседники сейчас переживают взрывной рост популярности.
Идея делать чат-бот традиционно взялась у нас не с потолка – для одного из наших заказчиков, мы как раз разработали чат-бот в Telegram, который позволяет территориальным менеджерам компании без доступа к стационарному компьютеру и быстрому интернету, оперативно управлять проектами – назначать, делегировать задачи и следить за статусом их исполнения.
К тому же, бот был удобным способом в игровой форме собрать контакты студентов и пригласить на мастер-класс.
Шаг 2. О чем будем чатиться?
Бота мы обязательно хотели сделать полезным, чтобы он продолжал жить и радовать всех и после Дней карьеры. После долгих раздумий и споров, такую тему нашли! В основу положили популярную в нашем городе онлайн-анкету Алексея Козионова на знание Новосибирского Академгородка. И за неделю до мастер-класса мы запустили в Telegram нашего чат-бота «Академик» @academic_quiz_bot.
«Академика» мы дополнили стикерпаком с подбадривающими фразочками от нашего талисмана – ebtman’а.
В первую неделю жизни бот также работал регистратором на мастер-класс и тщательно собирал контакты участников. А сейчас это просто развлекательный тест. Все, кто знает Академгородок, вэлкам проходить викторину.
Шаг. 3. Рецепт чат-бота викторины
Про создание чат бота с помощью Microsoft Bot Framework на Хабре писалось уже много. А вот туториалов – единицы. Поэтому для всех, кто ещё не запилил себе виртуального «болтуна», рассказываем наш рецепт.
Для начала создаём проект в Visual Studio с использованием Bot Application Template.
Копируем адрес и запускаем эмулятор.
Куда вставляем скопированный адрес и дописываем api/messages. Проверяем что всё работает.
Далее усовершенствуем нашего бота. Заставим задавать его вопросы и проверять ответы.
Для начала нам понадобятся данные для вопросов. Можно сделать это разными способами. Можно хранить локально или загружать из облака. Мы выбрали второй вариант.
Создадим простой класс для загрузки вопросов.
Этот класс при создании будет загружать вопросы с сервера и при необходимости возвращать следующий вопрос исключая те, на которые пользователь уже ответил.
Создадим новый класс в Visual Studio под названием QuizDialog. И реализуем в нём интерфейс IDialog.
Реализуем функцию ShowQuestion. Сначала загрузим список уже пройденных вопросов из хранилища.
И запросим следующий вопрос
Если вопросов нет, то считаем квиз пройден и возвращаем управление в родительский диалог.
Далее отправляем текст вопроса пользователю.
Также картинки можно передавать не через url (хотя я считаю, что в telegram надёжнее именно так), а через Attachment.
Код функции BoldString:
Текст форматируем в «xml» чтобы разделить текст по строчкам и выделить строчку с номеров вопроса жирным цветом. Тут стоит учитывать, что не все мессенджеры поддерживают одинаковые форматы, тут стоит читать документацию.
В случае если пользователь написал что-то некорректное считаем его ответ неправильным. Вот такие мы злодеи.
Далее, нужно показать правильный ответ и статистику. И небольшим бонусов если пользователь общается с ботом через «telegram» подбодрить его стикером.
Далее в MessagesController нужно вызвать наш диалог.
После отладки в эмуляторе можно опубликовать бота. Вот тут это уже описано.
А наш проект целиком лежит вот тут.
Шаг 4. Подводим итоги
Этой студенческой весной мы научили молодежь писать собственных чат-ботов и собрали рекордное для нас количество участников на мастер-классе. Снова повстречались с фанатами У нас есть ребята, в смысле парень и девушка, которые ходят к нам на мастер-классы уже третий год подряд и, наконец, доросли, до 4 курса. Говорят, напишут диплом и сразу к нам (мы раньше 4-го курса студентов все равно не берем).
А еще, сами получили большое удовольствие от общения с молодежью и вдохновение для новых проектов! Ну и викторину нашу очень любим и рекомендуем всем, кто знаком с Академом — @academic_quiz_bot.
Читайте также: