Автор статьи - АНДРЕЙ БРАУН (Microsoft MVP, архитектор ПО)
В одной из прошлых статей я рассказывал о том, как создать чат-бота на базе сервиса Microsoft Power Virtual Agents, полностью без программирования, с поддержкой ветвления и нескольких типов диалогов. В сегодняшней статье я покажу, как быстро создать подобного чат-бота, но уже с выводом в Microsoft Teams при использовании интеграции с Azure Active Directory и поддержкой Single Sign-on.
Итак, давайте начнем. Наш чат-бот будет аналогично построен на базе сервиса Microsoft Power Virtual Agents, входящего в линейку сервисов Power Platform, но для начала нам необходимо обеспечить будущую авторизацию нашего бота через Azure Active Directory. Переходим на portal.azure.com и открываем сервис Azure Active Directory. Для настройки будущей авторизации бота через Azure Active Directory потребуется создать новое приложение AAD.
Переходим в раздел «App registrations» и нажимаем «New registration». Указываем имя приложения. Пусть это будет Azure AD Application, включаем опцию Accounts in any organizational directory и в Redirect URI указываем адрес из официальной документации Microsoft:
https://token.botframework.com/.auth/web/redirect
после чего нажимаем «Зарегистрировать».
Приложение готово. Теперь переходим в раздел «Сертификаты и секреты» для того, чтобы сформировать секрет для проверки подлинности. Нажимаем «Создать новый секрет», указываем его имя и срок истечения. Секрет готов. Сохраняем его, чтобы не забыть.
Теперь самое время перейти к созданию нового бота Power Virtual Agents. Переходим по адресу powerva.microsoft.com и создаем нового бота. Указываем его имя, язык и среду, в которой он будет создан. Нажимаем «Создать».
Через несколько секунд бот будет создан. Далее произведем необходимые настройки для будущей авторизации пользователя в боте и самого бота в Microsoft Teams. Переходим в раздел «Управление — Безопасность». Открываем пункт «Проверка подлинности». Выбираем тип «Вручную». Поставщик услуг остается Azure Active Directory, в качестве ИД клиента указываем идентификатор созданного приложения AAD — Application ID. Секрет клиента также берем из настроек нашего приложения. Нажимаем «Сохранить».
Теперь переходим в раздел публикации чат-бота.
Нажимаем «Опубликовать», дожидаемся окончания публикации, после чего переходим к настройке каналов. Выбираем Microsoft Teams. Включаем поддержку канала Microsoft Teams и нажимаем «Отправить на утверждение администратором». Здесь нам потребуется взять идентификатор бота.
Копируем идентификатор бота и возвращаемся в приложение Azure Active Directory. Открываем раздел «Expose an API» и, в первую очередь, устанавливаем «Application ID URI» равным значению api://botid-{teamsbotid}, где {teamsbotid} это идентификатор нашего бота.
Нажимаем «Сохранить». Теперь создаем новый скоуп, через который будет идти обращение бота к ресурсам. Заполняем поля данными и нажимаем сохранить.
Скоуп создан. Далее создаем привязку приложения Teams к приложению Azure Active Directory. Для Teams используется два идентификатора — ID десктопного клиента и ID мобильного клиента. Эти идентификаторы фиксированные. Указываем в привязке оба.
1fec8e78-bce4-4aaf-ab1b-5451cc387264 (Teams mobile/desktop)
5e3ce6c0-2b1f-4285-8d4b-75ee78787346 (Teams on the web)
Попутно зайдем в раздел «API permissions» и предоставим запрошенные права от имени администратора организации.
Возвращаемся в нашего чат-бота. Создадим диалог бота. Перейдем в раздел «Темы» — создать тему. Укажем имя темы и триггер фразу.
Настроим простой диалог. В первую очередь вызовем авторизацию пользователя.
Если авторизация успешная, то зададим пару вопросов. Например, спросим за какой год требуется справка и в каком количестве экземпляров она нужна.
После этого создадим Power Automate поток и пробросим внутрь него параметры из диалога бота. Получив параметры, создадим с помощью кубика SharePoint элемент в списке, передав в него параметры от диалога.
Вернемся в бота и свяжем наш диалог с только что созданным потоком.
Теперь переходим к публикации бота. Нажимаем «Опубликовать», переходим к каналу Microsoft Teams и кликаем «Отправить бота на утверждение администратором».
Далее прописываем в настройках манифест файла идентификатор приложения Azure Active Directory и URI ресурса из скоупа «Expose an API» Azure AD приложения.
Нажимаем «Отправить на утверждение администратором». После обработки запроса идем в центр администрирования Microsoft Teams и проверяем статус приложения. Выставляем у него статус опубликовано и разрешено.
Проверяем нашего бота. Открываем Teams, переходим в магазин приложений для организации и устанавливаем бота.
Пишем триггер фразу и отвечаем на все вопросы. Заявка зарегистрирована, наш чат-бот с выводом в Microsoft Teams с помощью Azure Active Directory готов.
В заключение хочу отметить, что в рамках экосистемы Microsoft 365 и Microsoft Azure можно создавать различные решения с поддержкой множества функций, как, например, создание чат-бота с последующим выводом его в Microsoft Teams. В следующих статьях разберем еще больше подобных решений на базе сервисов Microsoft.
The site uses cookies. By visiting the site, you agree to the Privacy Policy and the processing of personal data of site users.
{{okmessage}}
{{errSessid}}
{{globalErrorText}}