Вкладка "Сборка" с адаптивными карточками
Вкладки адаптивных карточек в Teams предоставляют уникальный метод для отображения информации. Вместо того, чтобы внедрять веб-содержимое в iFrame, можно преобразовать адаптивные карточки на вкладку. В то время как внешний интерфейс отображается с помощью адаптивных карточек, серверная часть работает на основе бота. Бот обрабатывает прием запросов и ответы соответствующим образом с помощью отрисовываемой адаптивной карточки.
Предупреждение
Вкладки адаптивных карточек недоступны в новом клиенте Teams. Ожидается, что классический клиент Teams станет нерекомендуемым до 31 марта 2024 г. Если в приложении используются вкладки адаптивной карточки, рекомендуется перестроить вкладку в виде веб-вкладки.
Вы можете создавать вкладки с помощью соответствующих стандартных блоков пользовательского интерфейса, которые являются собственными для настольных компьютеров, веб-приложений и мобильных устройств.
Эта статья поможет вам понять:
- Изменения, необходимые для внесения в манифест приложения.
- Определяет, как действие вызова запрашивает и отправляет сведения на вкладке с адаптивными карточками.
- Влияние на рабочий процесс диалогового окна (в TeamsJS версии 1.x называется модулем задач).
Это пошаговое руководство поможет вам создавать вкладки с адаптивными карточками на настольных компьютерах и мобильных устройствах. Вы увидите следующие выходные данные:
Предварительные условия
Убедитесь, что установлены следующие средства и настроена среда разработки:
Установка | Для использования... | |
---|---|---|
Microsoft Teams | Microsoft Teams позволяет взаимодействовать со всеми пользователями, с которыми вы работаете, с помощью приложений для чата, собраний и звонков в одном месте. | |
Visual Studio 2022 |
Вы можете установить корпоративную версию в Visual Studio 2022, а также рабочие нагрузки ASP.NET и веб-разработки. Используйте последнюю версию. | |
Пакет SDK для .NET Core | Настраиваемые привязки для локальной отладки и развертываний приложений Функций Azure. Используйте последнюю версию или установите переносимую версию. | |
Туннель разработки | Функции приложений Teams (диалоговые боты, расширения сообщений и входящие веб-перехватчики) требуют входящих подключений. Туннель соединяет систему разработки с Teams. Туннель разработки — это мощный инструмент для безопасного открытия локального узла в Интернете и контроля доступа. Туннель разработки доступен в Visual Studio 2022 версии 17.7.0 или более поздней. Вы также можете использовать ngrok в качестве туннеля для подключения системы разработки к Teams. Он не требуется для приложений, которые содержат только вкладки. Этот пакет устанавливается в каталоге проекта (с помощью npm devDependencies). |
|
Учетная запись разработчика Microsoft 365 | Доступ к учетной записи Teams с соответствующими разрешениями для установки приложения. |
Примечание.
После скачивания ngrok зарегистрируйтесь и установите authtoken.
Настройка локальной среды
Откройте Microsoft-Teams-Samples.
Выберите Код.
В раскрывающемся меню выберите Открыть с помощью GitHub Desktop.
Выберите Клонировать.
Регистрация приложения Microsoft Entra
Чтобы создать и зарегистрировать бота в Microsoft Entra ID, выполните следующие действия.
- Создайте туннель ngrok для конечных точек веб-сервера.
- Создайте ресурс Azure Bot для регистрации бота в службе Azure Bot.
- Создайте секрет клиента, который включает проверку подлинности бота с единым входом.
- Добавьте канал Teams для развертывания бота.
- Добавьте конечную точку обмена сообщениями в созданный туннель ngrok или dev.
Добавление регистрации приложения
Перейдите на портал Azure.
Выберите Регистрация приложений.
Выберите + Новая регистрация.
Введите имя приложения.
Выберите Учетные записи в любом каталоге организации (любой клиент Microsoft Entra ID — Мультитенант).
Нажмите Зарегистрировать.
Ваше приложение зарегистрировано в Идентификаторе Microsoft Entra. Откроется страница обзора приложения.
Примечание.
Сохраните идентификатор приложения из идентификатора приложения (клиента) и каталога (клиента) для дальнейшего использования.
Создание туннеля
Откройте Visual Studio.
Выберите Создать новый проект.
В поле поиска введите ASP.NET. В результатах поиска выберите ASP.NET Core Web App.
Нажмите кнопку Далее.
Введите имя проекта и нажмите кнопку Далее.
Нажмите Создать.
Откроется окно обзора.
В раскрывающемся списке отладки выберите Dev Tunnels (без активного туннеля)>Создать туннель....
Открывается всплывающее окно.
Обновите следующие сведения во всплывающем окне:
- Учетная запись. Введите учетную запись Майкрософт или GitHub.
- Имя: введите имя туннеля.
- Тип туннеля: в раскрывающемся списке выберите Временный.
- Доступ: в раскрывающемся списке выберите Общедоступный.
Нажмите OK.
Появится всплывающее окно, показывающее, что туннель разработки успешно создан.
Нажмите OK.
Созданный туннель можно найти в раскрывающемся списке отладки следующим образом:
Нажмите клавишу F5 , чтобы запустить приложение в режиме отладки.
Если появится диалоговое окно Предупреждение системы безопасности , выберите Да.
Открывается всплывающее окно.
Нажмите Продолжить.
В новом окне браузера откроется домашняя страница туннеля разработки, и туннель разработки теперь активен.
Перейдите в Visual Studio и выберите Просмотреть выходные > данные.
В раскрывающемся меню консоли вывода выберите Dev Tunnels (Туннели разработки).
В консоли вывода отображается URL-адрес туннеля разработки.
Добавление веб-проверки подлинности
В левой области в разделе Управление выберите Проверка подлинности.
Выберите Добавить веб-сайт платформы>.
Введите URI перенаправления для приложения, добавив
auth-end
к полному доменному имени. Например,https://your-devtunnel-domain/auth-end
илиhttps://your-ngrok-domain/auth-end
.В разделе Неявное предоставление и гибридные потоки установите флажки Маркеры доступа и маркеры идентификаторов .
Нажмите Настроить.
В разделе Интернет выберите Добавить URI.
Введите
https://token.botframework.com/.auth/web/redirect
.Выберите Сохранить.
Создание секрета клиента
В левой области в разделе Управление выберите Сертификаты & секреты.
В разделе Секреты клиента выберите + Новый секрет клиента.
Откроется окно Добавление секрета клиента .
Введите Описание.
Нажмите Добавить.
В разделе Значение выберите Копировать в буфер обмена , чтобы сохранить значение секрета клиента для дальнейшего использования.
Добавление разрешения API
В области слева в разделе Управление выберите Разрешения API.
Выберите + Добавить разрешение.
Выберите Microsoft Graph.
Выберите Делегированные разрешения.
Выберите User.Read in permission (Разрешение user.Read in).
Выберите Добавить разрешения.
Примечание.
- Если приложению не предоставлено согласие ИТ-администратора, пользователи должны предоставить согласие при первом использовании приложения.
- Пользователям требуется согласие на разрешения API, только если приложение Microsoft Entra зарегистрировано в другом клиенте.
Добавление URI идентификатора приложения
В области слева в разделе Управление выберите Предоставить API.
Рядом с полем URI идентификатора приложения нажмите кнопку Добавить.
Обновите URI идентификатора
api://your-devtunnel-domain/botid-{AppID}
приложения в формате илиapi://your-ngrok-domain/botid-{AppID}
и нажмите кнопку Сохранить.На следующем рисунке показано доменное имя:
Добавление области
В области слева в разделе Управление выберите Предоставить API.
Выберите + Добавить область.
Введите access_as_user в качестве имени области.
В разделе Кто может предоставить согласие? выберите Администраторы и пользователи.
Обновите значения остальных полей следующим образом:
Введите , что Teams может получить доступ к профилю пользователя в качестве отображаемого имени согласия администратора.
Введите Позволяет Teams вызывать веб-API приложения от имени текущего пользователя в качестве описания согласия администратора.
Введите Teams для доступа к профилю пользователя и отправлять запросы от имени пользователя в качестве отображаемого имени согласия пользователя.
Введите Включить Teams для вызова API этого приложения с теми же правами, что и у пользователя , в описании согласия пользователя.
Убедитесь, что параметру Состояние присвоено значение Включено.
Нажмите кнопку Добавить область.
На следующем рисунке показаны поля и значения:
Примечание.
Имя области должно совпадать с URI идентификатора приложения с
/access_as_user
добавлением в конце.
Добавление клиентского приложения
В области слева в разделе Управление выберите Предоставить API.
В разделе Авторизованные клиентские приложения определите приложения, которые вы хотите авторизовать для веб-приложения вашего приложения.
Выберите + Добавить клиентское приложение.
Добавьте мобильное или классическое приложение Teams и веб-приложение Teams.
Для мобильных или классических приложений Teams: введите идентификатор клиента как
1fec8e78-bce4-4aaf-ab1b-5451cc387264
.Для веб-сайта Teams: введите идентификатор клиента как
5e3ce6c0-2b1f-4285-8d4b-75ee78787346
.
Установите флажок Авторизованные области .
Нажмите кнопку Добавить приложение.
На следующем рисунке отображается идентификатор клиента:
Создание бота
Чтобы служба бота разрешала пользователям выполнять вход и доступ к боту, необходимо настроить единый Sign-On (SSO) для бота. Чтобы настроить, выполните следующие действия.
- Добавьте URI перенаправления в ресурс Azure Bot.
- Добавьте все необходимые разрешения API для подчиненных вызовов.
- Включите неявное предоставление и гибридные потоки.
- Обновите манифест приложения.
- Настройка подключения к службе бота.
Создание ресурса бота Azure
Примечание.
Если вы уже тестируете бот в Teams, выйдите из этого приложения и Teams. Чтобы увидеть это изменение, войдите еще раз.
Перейдите на домашнюю страницу.
Выберите + Создать ресурс.
В поле поиска введите Azure Bot.
Выберите ВВОД.
Выберите Azure Bot.
Нажмите Создать.
Введите имя бота в поле Дескриптор бота.
Выберите свою подписку в раскрывающемся списке.
Выберите свою группу ресурсов в раскрывающемся списке.
Если у вас нет существующей группы ресурсов, можно создать новую группу ресурсов. Чтобы создать новую группу ресурсов, выполните следующие действия.
- Выберите Создать.
- Введите имя ресурса и нажмите кнопку ОК.
- Выберите расположение в раскрывающемся списке Расположение новой группы ресурсов .
В разделе Цены выберите Изменить план.
Выберите FO Free>Select.
В разделе Идентификатор приложения Майкрософт выберите Тип приложения в качестве мультитенантного.
В поле Тип создания выберите Использовать существующую регистрацию приложения.
Введите идентификатор приложения.
Примечание.
Нельзя создать несколько ботов с одним идентификатором приложения Майкрософт.
Выберите Проверить и создать.
После завершения проверки нажмите кнопку Создать.
Подготовка бота занимает несколько минут.
Выберите пункт Перейти к ресурсу.
Вы успешно создали бот Azure.
Добавление канала Teams
В левой области выберите Каналы.
В разделе Доступные каналы выберите Microsoft Teams.
Установите флажок, чтобы принять условия предоставления услуг.
Выберите Принять.
Нажмите Применить.
Добавление конечной точки обмена сообщениями
Используйте URL-адрес туннеля разработки в консоли вывода в качестве конечной точки обмена сообщениями.
В левой области в разделе Параметры выберите Конфигурация.
Обновите конечную точку обмена сообщениями в формате
https://your-devtunnel-domain/api/messages
.Нажмите Применить.
Вы успешно настроили бот в службе Azure Bot.
Примечание.
Если ключ инструментирования Application Insights отображает ошибку, обновите идентификатор приложения.
Обновление файла манифеста
Выберите Манифест на панели слева.
Задайте элемент конфигурации accessTokenAcceptedVersion:2. Если этот параметр не задан, измените его значение на
2
и нажмите кнопку Сохранить.Примечание.
Если вы уже тестируете бот в Teams, выйдите из этого приложения и выйдите из Teams. Чтобы увидеть это изменение, войдите еще раз.
Настройка подключения к службе Bot
Перейдите на страницу Конфигурация.
Нажмите кнопку Добавить параметры подключения OAuth на экране Конфигурация.
В поле Новый параметр подключения введите следующие сведения:
- Имя. Введите имя нового параметра подключения. Имя можно использовать в параметрах кода службы бота.
- Поставщик услуг. Выберите Azure Active Directory версии 2.
- Идентификатор клиента: обновите идентификатор приложения Майкрософт.
- Секрет клиента: обновите значение идентификатора секрета клиента.
- URL-адрес обмена маркерами. Используйте URI идентификатора приложения.
- Идентификатор клиента: введите common.
- Области: введите User.Read.
Выберите Сохранить.
Настройка параметров приложения и файлов манифеста
Перейдите к файлу appsettings.json в клонированного репозитория.
Откройте файл appsettings.json и обновите следующие сведения:
Замените
"MicrosoftAppId"
на идентификатор приложения Майкрософт бота.Замените
"MicrosoftAppPassword"
значением Значениесекрета клиента бота.Замените
"ConnectionName"
на имя бота.Замените
"ApplicationBaseUrl"
на доменное имя ngrok или dev tunnel.
Перейдите к файлу manifest.json в клонированного репозитория.
Откройте файл manifest.json и обновите следующие изменения:
Замените все вхождения
{contentBotId}
и{Microsoft App ID}
идентификатором приложения Майкрософт бота.
Сборка и запуск службы
Для сборки и запуска службы используйте Visual Studio:
Откройте Visual Studio.
Перейдите в раздел Файл>Открыть>проект/Решение...
Выберите файл TabWithAdpativeCardFlow.csproj из папки csharp>TabWithAdpativeCardFlow .
Нажмите клавишу F5 , чтобы запустить проект. Проект можно запустить с помощью Visual Studio или .NET в соответствующей папке.
Появится веб-страница с сообщением " Ваш бот готов!
Настройка и отправка приложения в Teams
В клонированного репозитория перейдите к csharp>TabWithAdpativeCardFlow>AppManifest.
Создайте файл .zip со следующими файлами, которые находятся в папке AppManifest :
manifest.json
outline.png
color.png
Примечание.
Не
manifest.zip
должен содержать никаких дополнительных папок. В zip-папке должен быть исходный файл JSON манифеста , значок цвета и значок структуры .
В клиенте Teams щелкните значок Приложения .
Выберите Управление приложениями
Выберите Отправить приложение.
Найдите параметр Отправить пользовательское приложение. Если параметр отображается, включена отправка пользовательских приложений.
Выберите файл .zip, созданный в папке TeamsAppManifest , и нажмите кнопку Открыть.
Нажмите Добавить.
Вы можете взаимодействовать с этой вкладкой, выполнив вход.
Отправьте сообщение на вкладку.
Взаимодействие с вкладкой в Teams
Вкладки позволяют получать доступ к службам и содержимому в выделенном пространстве в канале или в чате.
Чтобы использовать вкладку, выполните следующие действия:
В левой области Teams выберите Дополнительные добавленные приложения (●●●).
Выберите приложение из списка. На вкладке отображается адаптивная карточка с элементами управления действиями.
Выберите Войти и выберите учетную запись для доступа к вкладке.
На вкладке Главная выберите Показать модуль задач.
Нажмите Закрыть.
Вкладка сохраняет вход, если вы не нажмете кнопку Выйти.
Обновите для входа еще раз.
Выполнение задачи
Ты придумала что-то вроде этого?
Поздравляем!
Вы завершили руководство по началу работы с адаптивными карточками для Microsoft Teams с помощью Bot Framework.
Возникла проблема с этим разделом? Если это так, отправьте нам отзыв, чтобы мы исправили этот раздел.
Platform Docs