Microsoft Bot Framework

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 16:37, 6 декабря 2016.
Microsoft Bot Framework
Azurebot FE37nrEj98MsFZH6n77dsi75yCF3NCmhx77ja6Ok1Xp9Vc.png
Разработчики: Microsoft
Выпущена: 2011
Постоянный выпуск: 2.0.5
Состояние разработки: Released
Написана на: C#
Локализация: English
Веб-сайт https://botframework.com/

Microsoft Bot Framework - представляет собой комплексное предложение для создания и развертывания высококачественных ботов.

Bot Builder SDK

Bot Builder SDK (доступен для C# и для Node.js) предназначен для создания ключевой функциональности бота. Он основан на WebAPI, и определяет протокол общения бота с внешним миром. В рамках SDK есть эмулятор, позволяющий отлаживать ботов, а также набор классов для упрощения реализации некоторых ключевых абстракций, таких, как продолжительные диалоги с состоянием.

Cognitive Services

Cognitive Services (ранее известные как LUIS, составная часть Project Oxford) позволяют упростить анализ естественного языка и выделение смысла из текстовых предложений. С помощью веб-интерфейса мы можем определить основные синтаксические конструкции, и автоматически присвоить им соответствующие намерения пользователя (intents), на которые затем будет реагировать бот.

Bot Connector

Bot Connector позволяет привязать наш бот к одному или нескольким каналам общения, таким, как Skype, Slack, Telegram и др. Для этого достаточно сконфигурировать соединение бота на сайте botframework.com.

Канальная абстрация

Основная прелесть Bot Framework API состоит в том, что мы можем теперь писать боты, не ориентируясь на какой-то один канал общения. По сути дела, Bot Framework даёт нам правильный уровень абстракции для реализации механизмов беседы и диалогов, а конкретную связь с различными инструментами общения берет на себя Bot Connector. Это разделение позволяет программисту написать бот один раз, а общаться с ним отовсюду. Можно сформулировать этот принцип следующим образом, перефразируя известный из мира Java слоган: Write Once – Chat Everywhere.

Skype Bot API

Ещё одна новость, объявленная на //BUILD – это доступность отдельного Skype API для создания ботов. На самом деле создавать Skype-ботов можно и через Bot Framework, но возможности Bot Framework пока позволяют нам работать только с текстом (плюс с некоторыми видами attachemnt-ов), в то время как Skype Bot API несколько шире, и позволяет в том числе создавать видео-боты. При выборе технологии следует отдавать предпочтение Bot Framework, из-за её универсальности, однако если вы хотите создать действительно удивительный бот именно для Skype – посмотрите на Skype Bot SDK.

Создание бота

Основные функции бота Шаблон все в функции Post в контроллерах \ MessagesController.cs. В этом случае код берет текст сообщения для пользователя, а затем создает ответное сообщение с помощью функции CreateReplyMessage. BotAuthentication украшение на метод используется для проверки подлинности учетных данных Connector Bot через HTTPS.

С помощью робота Framework эмулятора для тестирования приложения Bot

Bot Framework обеспечивает эмулятор канала, который позволяет тестировать вызовы на бота , как будто он вызывается с помощью облачной службы Bot Framework. Чтобы установить Bot Framework Emulator, скачать его с здесь. После установки, вы готовы к тестированию. Во-первых, начните бота в Visual Studio с помощью браузера в качестве хоста приложения. Изображение ниже использует Microsoft Edge. (см. Рис. 1)

Рис. 1. Начало создания бота

Когда приложение построен и развернут веб-браузер будет открывать и отображать файл приложения default.htm (который является частью проекта Application Bot). Вы можете изменить файл default.html, чтобы соответствовать имя и описание вашего робота Application. При использовании эмулятора для тестирования приложения Bot, обратите внимание на порт, что приложение работает на, что в этом примере порт 3978. Вам понадобится эта информация для запуска Bot Framework Emulator.

Теперь откройте Bot Framework Emulator. Есть несколько пунктов, которые вам нужно будет настроить в инструменте, прежде чем вы можете взаимодействовать с бота Application.

При работе с эмулятором бот работает локально, вам необходимо ввести: (см. Рис. 2)

Рис. 2. Ввод соответствующего URL

Теперь, когда все настройки вы можете взаимодействовать с вашим услугам. В нижней части приложения Bot Framework Эмулятор имеет текстовое поле, которое можно использовать для ввода сообщения, это сообщение будет вторит обратно к вам, как показано ниже. (см. Рис. 3)

Рис. 3. JSON

Публикация Bot приложения в Microsoft Azure

В этом руководстве мы используем Microsoft Azure для размещения приложения Bot. Чтобы опубликовать Bot приложения вам понадобится Microsoft Azure подписку. Вы можете получить бесплатную пробную версию отсюда: azure.microsoft.com/en-us/

Сделать какие изменения вы хотели бы проект, и теперь вы готовы к публикации. Щелкните правой кнопкой мыши на проекте и выберите "Опубликовать", а затем свой соответствующий Azure информацию о подписке. По умолчанию, бот должен быть опубликован в качестве Microsoft Azure App службы. При публикации, отслеживать URL , который вы выбрали , потому что мы должны его обновить Bot Framework регистрации конечной точки. Первый раз , когда вы публикуете Есть несколько дополнительных шагов; но у вас есть только делать их один раз.

В Visual Studio, щелкнув правой кнопкой мыши на проекте в обозревателе решений и выберите пункт "Опубликовать" - или поочередного выбора "Build | Публикация" отображает следующий диалог: (см. Рис. 4)

Рис. 4. Build - Публикация

Создать откроется диалоговое окно App Service, заполните детали как appropriate.Make забудьте выбрать "Веб-приложение" из Изменение типа выпадающего в верхнем правом углу вместо "API App" (который по умолчанию). (см. Рис. 5.)

Рис. 5. Create App Service

После того, как вы нажмете хорошо на план обслуживания App, вы определили вашу службу App полностью. И вы вернетесь к публикации веб-мастера. (см. Рис. 6)

Рис. 5. Publishing web

Регистрация вашего бота в Bot Framework Microsoft

Регистрация вашего бота рассказывает Connector как позвонить веб - службы вашего бота. Обратите внимание , что MicrosoftAppId и MicrosoftAppPassword ** генерируются , когда ваш Bot зарегистрирован Рамочной Connector Microsoft Bot, в MicrosoftAppId и MicrosoftAppPassword используются для проверки подлинности разговора, а также позволяет разработчику настраивать их бота с каналами они хотели бы быть видимый сверху. BotId, который вы указываете, используется для URL в каталоге и разработчик портала.

  1. Перейти к Bot Framework портала Microsoft в https://dev.botframework.com и войдите в свою учетную запись Microsoft.
  2. Нажмите на кнопку "Регистрация" и бота заполните форму. Многие поля в этой форме может быть изменен позже. Используйте конечную точку , созданный на базе Azure развертывания, и не забывайте , что при использовании Bot приложения tempalate вам необходимо расширить URL вы вставили в с пути к конечной точке в / API / сообщения. Вы должны также префикс URL вашего с HTTPS вместо HTTP; Azure будет заботиться о предоставлении HTTPS поддержки на бота. Сохраните изменения, нажав кнопку «Создать» в нижней части формы. (см. Рис. 6.)
Рис. 6. Начало регистрации Bot

Теперь, когда бот регистрируется, вам необходимо обновить ключи в файле web.config в вашем проекте Визуальный Studio. Измените следующие ключи в файле web.config , чтобы соответствовать генерировшихся при сохранении вашей регистрации, и вы готовы строить. При нажатии на "шоу" ссылка покажет значение, а также трейлерах обнаженным ссылку регенерировать , если вы когда - нибудь понадобится изменить AppPassword. Обновите свою web.config, и повторно опубликовать ваш бот Azure.

Чтобы настроить канал, вернуться к Bot Framework портала в https://www.botframework.com . Войдите, выберите бота, и перейдите на панель каналов. Выберите канал, который вы хотите настроить, и нажмите кнопку Добавить. Вы попадете на страницу инструкции по регистрации бота. В конце концов, в большинстве случаев вы настраиваете свои учетные данные в качестве разработчика на целевой службе, регистрации ваше приложение, и получить набор ключей OAuth, что Microsoft Bot Framework можно использовать от вашего имени.

Рис. 7. Configure Box

Это конец конфигурации - ваш бот готов для пользователей. Они будут иметь свои собственные шаги, чтобы следовать, чтобы дать разрешение Bot участвовать в их группе / канале или получить сведения о соединении, как количество SMS телефона или по электронной почте. Они могут сделать это на странице каталога для вашего Бота.

Ссылки

  1. Хабрахабр [Электронный ресурс]: Настройка Microsoft Bot Framework / Дата обращения: 17.11.2016. — Режим доступа: https://habrahabr.ru/company/microsoft/blog/281459/
  2. Botframework [Электронный ресурс]: Get start the bot / Дата обращения: 17.11.2016. - Режим доступа: https://docs.botframework.com/en-us/csharp/builder/sdkreference/gettingstarted.html
  3. Channel19 [Электронный ресурс]: Создаём бота с нуля / Дата обращения: 18.11.2016. - Режим доступа: https://channel9.msdn.com/Blogs/cloud-day/09