Определение команд поиска расширений сообщений
Команда поиска вызывается из любого или обоих следующих расположений:
- Область создания сообщения: кнопки в нижней части области создания сообщения.
- Командное поле: с помощью / в командном окне. Например, /your-app-name. Если вы используете классическую команду Teams, команда поиска вызывается в командном @mentioning окне. Например, @your-app-name.
При вызове команды поиска из области создания сообщений пользователь отправляет результаты в беседу. При вызове команды поиска из командного поля пользователь взаимодействует с результирующей карта или копирует ее для использования в другом месте.
На следующем рисунке показаны расположения вызова команды поиска:
Добавление команды поиска в манифест приложения
Чтобы добавить команду поиска в манифест приложения (ранее — манифест приложения Teams), необходимо добавить новый composeExtensions
объект на верхний уровень JSON манифеста приложения. Команду поиска можно добавить с помощью портала разработчика или вручную.
Создание расширения для сообщений поиска с помощью Bot Framework
Вы можете создать расширение для сообщений поиска с помощью набора средств Teams и портала разработчика для Teams.
Предварительные условия
Прежде чем приступить к работе, убедитесь, что вы соответствуете следующим требованиям:
- Node.js. Поддерживаемые версии: 16, 18.
- Учетная запись Microsoft 365 для разработки
- Настройте среду разработки для расширения приложений Teams в Microsoft 365. После регистрации клиента разработчика в целевом выпуске Office 365 регистрация может занять несколько дней.
- Teams Toolkit Visual Studio Code extension версии 5.2.0 и выше или Teams Toolkit CLI.
Чтобы создать расширение для сообщений на основе поиска с помощью Набора средств Teams, выполните следующие действия.
Откройте Visual Studio Code.
В левой области выберите Набор средств Teams.
Выберите Создать новое приложение.
Выберите Расширение сообщений.
Выберите Настраиваемые результаты поиска.
Выберите язык программирования.
Выберите Папка по умолчанию.
Введите имя приложения и нажмите клавишу ВВОД.
Набор средств Teams формирует шаблон проекта и создает расширение для сообщений поиска.
Чтобы запустить расширение сообщений в Teams, выполните следующие действия.
В левой области выберите Набор средств Teams.
В разделе Учетные записи войдите с помощью учетной записи Microsoft 365 и учетной записи Azure, если это еще не сделано.
В левой области выберите Выполнить и отладить (CTRL+SHIFT+D).
В раскрывающемся списке конфигурация запуска выберите
Preview in Teams (Edge)
илиPreview in Teams (Chrome)
. Набор средств Teams запускает веб-клиент Teams в окне браузера.Перейдите в сообщение чата и щелкните значок Действия и приложения . Во всплывающем меню найдите свое приложение.
Выберите расширение сообщений в списке и введите команду поиска в поле поиска.
Выберите элемент из списка. Элемент разворачивается в адаптивную карточку в области создания сообщения.
Нажмите кнопку Отправить. Teams отправляет результат поиска в виде адаптивной карточки в сообщении чата.
Расширение расширения сообщений на основе бота в качестве подключаемого модуля
Важно!
Подключаемые модули для Microsoft 365 Copilot доступны в предварительной версии и работают только в Microsoft 365 Copilot в Teams.
Подключаемые модули Microsoft 365 обеспечивают интеграцию с различными продуктами Microsoft 365, такими как Teams и Outlook. Интеграция помогает пользователям искать или создавать содержимое во внешних системах. Подключаемые модули расширения сообщений позволяют Microsoft 365 Copilot взаимодействовать с API из другого программного обеспечения и служб через бота. Рекомендуется создавать или обновлять существующие расширения сообщений, чтобы максимально повысить их полезность и удобство использования в Microsoft 365 Copilot. Дополнительные сведения см. в статье Расширение расширения сообщений на основе бота в качестве подключаемого модуля для Microsoft 365 Copilot.
Фрагменты кода
В следующем коде приведен пример расширений сообщений на основе поиска.
protected override async Task<MessagingExtensionResponse> OnTeamsMessagingExtensionQueryAsync(ITurnContext<IInvokeActivity> turnContext, MessagingExtensionQuery query, CancellationToken cancellationToken)
{
var text = query?.Parameters?[0]?.Value as string ?? string.Empty;
var packages = new[] {
new { title = "A very extensive set of extension methods", value = "FluentAssertions" },
new { title = "Fluent UI Library", value = "FluentUI" }};
// We take every row of the results and wrap them in cards wrapped in MessagingExtensionAttachment objects.
// The Preview is optional, if it includes a Tap, that will trigger the OnTeamsMessagingExtensionSelectItemAsync event back on this bot.
var attachments = packages.Select(package =>
{
var previewCard = new ThumbnailCard { Title = package.title, Tap = new CardAction { Type = "invoke", Value = package } };
if (!string.IsNullOrEmpty(package.title))
{
previewCard.Images = new List<CardImage>() { new CardImage(package.title, "Icon") };
}
var attachment = new MessagingExtensionAttachment
{
ContentType = HeroCard.ContentType,
Content = new HeroCard { Title = package.title },
Preview = previewCard.ToAttachment()
};
return attachment;
}).ToList();
// The list of MessagingExtensionAttachments must we wrapped in a MessagingExtensionResult wrapped in a MessagingExtensionResponse.
return new MessagingExtensionResponse
{
ComposeExtension = new MessagingExtensionResult
{
Type = "result",
AttachmentLayout = "list",
Attachments = attachments
}
};
}
Пример кода
Название примера | Описание | .NET | Node.js | Манифест |
---|---|---|---|---|
Поиск в расширении для сообщений Teams | В этом примере показано, как создать расширение для сообщений на основе поиска. Он выполняет поиск пакетов NuGet и отображает результаты в расширении для обмена сообщениями на основе поиска. | Просмотр | Просмотр | View |
Пошаговые инструкции
Следуйте инструкциям из пошагового руководства , чтобы создать расширение для сообщений на основе поиска.
Следующее действие
См. также
Platform Docs