Поделиться через


Схема манифеста общедоступной предварительной версии приложения для разработчиков

Как включить предварительную версию для разработчиков, см. в статье Общедоступная предварительная версия для разработчиков для Microsoft Teams..

Примечание.

Если вы не используете предварительные версии функций для разработчиков, включая запуск личных вкладок Teams и расширений сообщений в Outlook и приложении Microsoft 365, используйте манифест приложения (ранее — манифест приложения Teams) для общедоступных функций.

Манифест приложения описывает, как приложение интегрируется с платформой Microsoft Teams. Манифест приложения должен соответствовать схеме, размещенной по адресу https://developer.microsoft.com/json-schemas/teams/vDevPreview/MicrosoftTeams.schema.json.

Пример манифеста приложения

{
    "$schema": "https://developer.microsoft.com/json-schemas/teams/vDevPreview/MicrosoftTeams.schema.json",
    "manifestVersion": "devPreview",
    "version": "1.0.0",
    "id": "%MICROSOFT-APP-ID%",
    "devicePermissions": [
        "geolocation",
        "media"
    ],
    "developer": {
        "name": "Publisher Name",
        "websiteUrl": "https://example.com/",
        "privacyUrl": "https://example.com/privacy",
        "termsOfUseUrl": "https://example.com/app-tos",
        "mpnId": "1234567890"
    },
    "localizationInfo": {
        "defaultLanguageTag": "es-es",
        "additionalLanguages": [
            {
                "languageTag": "en-us",
                "file": "en-us.json"
            }
        ]
    },
    "name": {
        "short": "Name of your app (<=30 chars)",
        "full": "Full name of app, if longer than 30 characters"
    },
    "description": {
        "short": "Short description of your app",
        "full": "Full description of your app"
    },
    "icons": {
        "outline": "%FILENAME-32x32px%",
        "color": "%FILENAME-192x192px",
        "color32x32": "%FILENAME-32x32px%"
    },
    "accentColor": "%HEX-COLOR%",
    "configurableTabs": [
        {
            "configurationUrl": "https://contoso.com/teamstab/configure",
            "canUpdateConfiguration": true,
            "scopes": [
                "team",
                "groupchat"
            ],
            "context": []
        }
    ],
    "staticTabs": [
        {
            "entityId": "idForPage",
            "name": "Display name of tab",
            "contentUrl": "https://contoso.com/content?host=msteams",
            "contentBotId": "Specifies to the app that tab is an Adaptive Card Tab. You can either provide the contentBotId or contentUrl.",
            "websiteUrl": "https://contoso.com/content",
            "scopes": [
                "personal"
            ]
        }
    ],
    "bots": [
        {
            "botId": "%MICROSOFT-APP-ID-REGISTERED-WITH-BOT-FRAMEWORK%",
            "needsChannelSelector": false,
            "isNotificationOnly": false,
            "scopes": [
                "team",
                "personal",
                "groupchat"
            ],
            "supportsFiles": true,
            "commandLists": [
                {
                    "scopes": [
                        "team",
                        "groupchat"
                    ],
                    "commands": [
                        {
                            "title": "Command 1",
                            "description": "Description of Command 1"
                        },
                        {
                            "title": "Command N",
                            "description": "Description of Command N"
                        }
                    ]
                },
                {
                    "scopes": [
                        "personal",
                        "groupchat"
                    ],
                    "commands": [
                        {
                            "title": "Personal command 1",
                            "description": "Description of Personal command 1"
                        },
                        {
                            "title": "Personal command N",
                            "description": "Description of Personal command N"
                        }
                    ]
                }
            ]
        }
    ],
    "connectors": [
        {
            "connectorId": "GUID-FROM-CONNECTOR-DEV-PORTAL%",
            "configurationUrl": "https://contoso.com/teamsconnector/configure",
            "scopes": [
                "team"
            ]
        }
    ],
    "composeExtensions": [
        {
            "botId": "%MICROSOFT-APP-ID-REGISTERED-WITH-BOT-FRAMEWORK%",
            "canUpdateConfiguration": true,
            "commands": [
                {
                    "id": "exampleCmd1",
                    "title": "Example Command",
                    "description": "Command Description; e.g., Search on the web",
                    "initialRun": true,
                    "type": "search",
                    "context": [
                        "compose",
                        "commandBox"
                    ],
                    "parameters": [
                        {
                            "name": "keyword",
                            "title": "Search keywords",
                            "description": "Enter the keywords to search for"
                        }
                    ]
                },
                {
                    "id": "exampleCmd2",
                    "title": "Example Command 2",
                    "description": "Command Description; e.g., Search for a customer",
                    "initialRun": true,
                    "type": "action",
                    "fetchTask": true,
                    "context": [
                        "message"
                    ],
                    "parameters": [
                        {
                            "name": "custinfo",
                            "title": "Customer name",
                            "description": "Enter a customer name",
                            "inputType": "text"
                        }
                    ]
                },
                {
                    "id": "exampleMessageHandler",
                    "title": "Message Handler",
                    "description": "Domains that will create a preview when pasted into the compose box",
                    "messageHandlers": [
                        {
                            "type": "link",
                            "value": {
                                "domains": [
                                    "mysite.someplace.com",
                                    "othersite.someplace.com"
                                ]
                            }
                        }
                    ]
                }
            ]
        }
    ],
    "permissions": [
        "identity",
        "messageTeamMembers"
    ],
    "validDomains": [
        "contoso.com",
        "mysite.someplace.com",
        "othersite.someplace.com"
    ],
    "webApplicationInfo": {
        "id": "AAD App ID",
        "resource": "Resource URL for acquiring auth token for SSO"
    },
    "showLoadingIndicator": false,
    "isFullScreen": false,
    "defaultBlockUntilAdminAction": false,
    "publisherDocsUrl": "https://contoso.com/teamtabapp/admin-doc",
    "scopeConstraints": { 
        "teams": [ 
            { "id": "%TEAMS-THREAD-ID" } 
        ], 
        "groupChats": [ 
          { "id": "%GROUP-CHATS-THREAD-ID" } 
        ] 
    },    
    "authorization": {
        "permissions": {
            "resourceSpecific": [
                {
                    "type": "Application",
                    "name": "ChannelSettings.Read.Group"
                },
                {
                    "type": "Delegated",
                    "name": "ChannelMeetingParticipant.Read.Group"
                }
            ]
        }
    },
"actions": [
    {
      "id": "addTodoTask",
      "displayName": "Add ToDo task",
      "intent": "addTo",
      "description": "Add this file with a short note to my to do list",
      "handlers": [
        {
          "type": "openPage",
          "supportedObjects": {
            "file": {
              "extensions": [
                "doc",
                "pdf"
              ]
            }
          },
          "pageInfo": {
            "pageId": "newTaskPage",
            "subPageId": ""
          }
        }
      ]
    },
  ],
    "configurableProperties": [
        "name",
        "shortDescription",
        "longDescription",
        "smallImageUrl",
        "largeImageUrl",
        "accentColor",
        "developerUrl",
        "privacyUrl",
        "termsOfUseUrl"
    ],
    "supportedChannelTypes": [
        "sharedChannels",
        "privateChannels"
    ],
    "defaultInstallScope": "meetings",
    "defaultGroupCapability": {
        "meetings": "tab",
        "team": "bot",
        "groupchat": "bot"
    },
    "subscriptionOffer": {
        "offerId": "publisherId.offerId"
    },
    "meetingExtensionDefinition": {
        "scenes": [
            {
                "id": "9082c811-7e6a-4174-8173-6ccd57d377e6",
                "name": "Getting started sample",
                "file": "scenes/sceneMetadata.json",
                "preview": "scenes/scenePreview.png",
                "maxAudience": 15,
                "seatsReservedForOrganizersOrPresenters": 0
            },
            {
                "id": "afeaed22-f89b-48e1-98b4-46a514344e4a",
                "name": "Sample-1",
                "file": "scenes/sceneMetadata.json",
                "preview": "scenes/scenePreview.png",
                "maxAudience": 15,
                "seatsReservedForOrganizersOrPresenters": 3
            }
        ]
    }
}

Схема определяет следующие свойства:

$schema

Необязательный, но рекомендуется — String

https:// URL-адрес, ссылающийся на схему JSON для манифеста приложения.

manifestVersion

Обязательный — строка

Версия схемы манифеста приложения, используемой в этом манифесте.

version

Обязательный — строка

Версия конкретного приложения. Если вы обновляете что-то в манифесте приложения, версия также должна быть увеличена. Таким образом, при установке нового манифеста приложения он перезаписывает существующий, и пользователь получает новые функциональные возможности. Если это приложение было отправлено в Microsoft Teams Store, необходимо повторно отправить новый манифест приложения и повторно проверить его. Затем пользователи этого приложения автоматически получают новый обновленный манифест приложения в течение нескольких часов после его утверждения.

Если запрошенные приложением разрешения изменяются, пользователям будет предложено обновить приложение и повторно предоставить согласие.

Строка версии должна соответствовать стандарту semver(ОСНОВНАЯ_ВЕРСИЯ.ДОПОЛНИТЕЛЬНАЯ_ВЕРСИЯ.ИСПРАВЛЕНИЕ).

Примечание.

Если приложение включает надстройку Office, каждый сегмент строки версии ограничен пятью цифрами. Расширения строк предварительной версии и версии метаданных стандарта semver не поддерживаются.

id

Обязательный — идентификатор приложения Майкрософт

Уникальный идентификатор, созданный корпорацией Майкрософт для этого приложения. Идентификатор имеет формат GUID. Если вы зарегистрировали бота через Microsoft Bot Framework или веб-приложение вкладки уже вошли в корпорацию Майкрософт, возможно, у вас уже есть идентификатор и его необходимо ввести здесь. В противном случае необходимо создать новый идентификатор на портале регистрации приложений Майкрософт (Мои приложения), ввести его здесь, а затем повторно использовать при добавлении бота.

developer

Обязательный — объект

Указывает сведения о разработчике и его бизнесе. Для приложений Магазина Teams значение должно соответствовать значениям, указанным в форме отправки приложений Центра партнеров.

Имя Тип Максимальный размер Обязательный Описание
name String 32 символа ✔️ Отображаемое имя для разработчика.
websiteUrl 2048 символов ✔️ https:// URL-адрес страницы приложения на веб-сайте.
privacyUrl 2048 символов ✔️ https:// URL-адрес политики конфиденциальности приложения.
termsOfUseUrl 2048 символов ✔️ https:// URL-адрес условий использования приложения.
mpnId String 10 символов Идентификатор Microsoft Cloud Partner Program (CCP) (ранее известный как Идентификатор Microsoft Partner Network (MPN) ), который идентифицирует партнерская организация, создающая приложение. Необязательное
contactInfo Объект Контактные данные разработчика приложения.

developer.contactInfo

Необязательный — объект

Ваши контактные данные, используемые клиентами для связи с вами через чат Teams или электронную почту. Клиентам могут потребоваться дополнительные сведения при оценке приложения или если у них есть какие-либо запросы о вашем приложении, когда оно не работает. Клиенты могут связаться с вами с помощью чата Teams, поэтому попросите ИТ-администраторов включить внешние коммуникации в вашей организации. Дополнительные сведения см. в разделе Приложение и контактные данные, предоставленные разработчиком.

Примечание.

Необходимо указать только один адрес электронной почты контакта.

Мы рекомендуем своевременно рассматривать запросы клиентов и направлять их внутри организации, например, в другие функции, чтобы получить ответы. Это помогает улучшить внедрение приложений, укрепить доверие разработчиков и увеличить доход, если вы монетизируете приложение.

Имя Тип Максимальный размер Обязательный Описание
defaultsupport Object ✔️ Контактные данные по умолчанию для приложения.
defaultsupport.userEmailsForChatSupport Array 10 ✔️ Email адрес для получения запросов клиентов с помощью чата Teams. Хотя манифест приложения допускает до 10 адресов электронной почты, Teams использует только первый адрес электронной почты, чтобы ПОЗВОЛИТь ИТ-администраторам общаться с вами. Объект представляет собой массив со всеми элементами строки типа. Максимальная длина сообщения электронной почты — 80 символов.
defaultsupport.emailsForEmailSupport Array 1 ✔️ Контактный адрес электронной почты для запроса клиента (минимум: 1; максимум: 1). Объект представляет собой массив со всеми элементами строки типа. Максимальная длина сообщения электронной почты — 80 символов.

localizationInfo

Необязательный — объект

Разрешает спецификацию языка по умолчанию и указатели на дополнительные языковые файлы. См.Локализация

Имя Максимальный размер Обязательный Описание
defaultLanguageTag 4 символа ✔️ Тег языка строк в этом файле манифеста приложения верхнего уровня.

localizationInfo.additionalLanguages

Массив объектов, указывающих дополнительные языковые переводы.

Имя Максимальный размер Обязательный Описание
languageTag 4 символа ✔️ Тег языка строк в предоставленном файле.
file 2048 символов ✔️ Относительный путь к файлу .json, который содержит переведенные строки.

name

Обязательный — объект

Имя интерфейса приложения, отображаемое для пользователей в интерфейсе Teams. Для приложений, отправляемых в AppSource, эти значения должны совпадать с данными в записи AppSource. Значения short и full должны отличаться.

Имя Тип Максимальный размер Обязательный Описание
short String 30 символов ✔️ Краткое отображаемое имя приложения.
full String 100 символов ✔️ Полное имя приложения. Он используется, если полное имя приложения превышает 30 символов.

description

Обязательный — объект

Описывает приложение для пользователей. Для приложений, отправляемых в AppSource, эти значения должны совпадать с данными в записи AppSource.

Убедитесь, что ваше описание в точности соответствует вашей функции и предоставляет сведения, которые помогут потенциальным клиентам понять, что эта функция делает. В полном описании также необходимо указать, нужно ли использовать внешнюю учетную запись. Значения short и full должны отличаться. Ваше краткое описание не должно дублироваться в длинном описании и не должно включать какое-либо другое название приложения.

Имя Максимальный размер Обязательный Описание
short 80 символов ✔️ Краткое описание возможностей приложения. Используется, когда доступно ограниченное пространство.
full 4000 символов ✔️ Полное описание приложения.

icons

Обязательный — объект

Значки, используемые в приложении Teams. Файлы значков должны быть включены в отправляемый пакет.

Имя Максимальный размер Обязательный Описание
outline 2048 символов ✔️ Относительный путь к прозрачному значку контура размером 32x32 пикселя в формате PNG. Цвет границы должен быть белым.
color 2048 символов ✔️ Относительный путь к полноцветному значку размером 192x192 пикселя в формате PNG.
color32x32 Символ 2048 Относительный путь к файлу полноцветного значка PNG 32x32 с прозрачным фоном. Используется, когда приложение закреплено в Outlook и приложении Microsoft 365.

accentColor

Обязательный — строка

Цвет, используемый с и в качестве фона для значков структуры.

Значение должно быть допустимым шестнадцатеричным кодом цвета HTML и должно начинаться с "#". Пример: #4464ee.

configurableTabs

Необязательный параметр — массив

Используется, когда в интерфейсе приложения есть интерфейс вкладки канала команды, который требует дополнительной настройки перед добавлением. Настраиваемые вкладки поддерживаются только в командах область, и поддерживается только одна вкладка для каждого приложения.

Объект — массив со всеми элементами типа object. Этот блок требуется только для решений, предоставляющих решение с настраиваемой вкладкой канала.

Имя Тип Максимальный размер Обязательный Описание
configurationUrl String 2048 символов ✔️ URL-адрес, используемый при настройке вкладки (https://).
canUpdateConfiguration Boolean Значение, указывающее, может ли пользователь обновлять конфигурацию вкладки после ее создания.
Значение по умолчанию: true
scopes Массив перечислений 2 ✔️ Настраиваемые вкладки поддерживают team только области и groupChat .
context Массив перечислений 8 Набор областей contextItem, в которых поддерживается вкладка.
Значения по умолчанию: channelTab, privateChatTab, meetingChatTab, meetingDetailsTab, meetingSidePanel, meetingStage. personalTab
sharePointPreviewImage String 2048 символов Относительный путь к изображению предварительного просмотра вкладок для использования в SharePoint. Размер: 1024x768.
supportedSharePointHosts Массив перечислений 2 Определяет, каким образом вкладка становится доступна в SharePoint. Параметры: sharePointFullPage, sharePointWebPart
meetingSurfaces Массив перечислений 2 Набор областей meetingSurfaceItem , к которым относится вкладка.
Значения по умолчанию: sidePanel, stage
supportedPlatform Массив перечислений 3 Набор областей supportedPlatform , к которым относится вкладка.
Значения по умолчанию: desktop, mobile, teamsMeetingDevices

staticTabs

Необязательный параметр — массив

Это набор вкладок, который можно закрепить по умолчанию без добавления их вручную пользователем. Статические вкладки,объявляемые в области personal, всегда закрепляются в личном интерфейсе приложения. Статические вкладки, объявленные в team область, не поддерживаются.

Преобразовать для просмотра вкладки с помощью адаптивных карточек, указавcontentBotId вместо этогоcontentUrl блок staticTabs

Объект является массивом (не более 16 элементов) со всеми элементами типа.object. Этот блок требуется только для решений со статическими вкладками.

Имя Тип Максимальный размер Обязательный Описание
entityId String 64 символа ✔️ Уникальный идентификатор сущности, отображаемый на вкладке.
name String 128 символов ✔️ Отображаемое имя вкладки.
contentUrl String 2048 символов ✔️ URL-адрес, указывающий на пользовательский интерфейс объекта для отображения на холсте Microsoft Teams (https://).
contentBotId String Идентификатор приложения Microsoft Teams, указанный для бота на портале Bot Framework.
websiteUrl String 2048 символов URL-адрес https:// для указания при выборе просмотра в браузере.
scopes Массив перечислений 3 ✔️ Статические вкладки поддерживают personalобласти , teamи groupChat , что означает, что они могут быть подготовлены как часть личных собраний, групповых чатов и собраний каналов.
searchUrl String 2048 символов URL-адрес https:// для направления поисковых запросов пользователя.
context Массив перечислений 8 Набор областей contextItem , к которым относится вкладка.
Значения по умолчанию: personalTab, channelTab, privateChatTab, meetingChatTab, meetingDetailsTabmeetingSidePanel, , meetingStageteamLevelApp
supportedPlatform Массив перечислений 3 Набор областей supportedPlatform , к которым относится вкладка.
Значения по умолчанию: desktop, mobile, teamsMeetingDevices

bots

Необязательный параметр — массив

Определяет решение бота, а также дополнительные сведения, такие как свойства команды по умолчанию.

Объект представляет собой массив (не более 1 элемента — на приложение допускается только один бот) со всеми элементами типа object. Этот блок требуется только для решений, предоставляющих возможности бота.

Имя Тип Максимальный размер Обязательный Описание
botId String ✔️ Уникальный идентификатор приложения Майкрософт для бота, зарегистрированный в Bot Framework. Этот идентификатор может совпадать с общим идентификатором приложения.
needsChannelSelector Логический Описывает, использует ли бот подсказку пользователя для добавления бота в определенный канал.
Значение по умолчанию: false
isNotificationOnly Логический Указывает, является ли бот односторонним и только для уведомлений, в отличие от бота для беседы.
Значение по умолчанию: false
supportsFiles Логический Указывает, поддерживает ли бот возможность отправки и скачивания файлов в личном чате.
Значение по умолчанию: false
scopes Массив перечислений 3 ✔️ Указывает, предлагает ли бот функции в контексте канала в team, в групповом чате (groupChat) или функции, ограниченные только отдельным пользователем (personal). Эти параметры не являются исчерпывающими.
supportsCalling Boolean Значение, указывающее, поддерживает ли бот голосовые звонки. ВАЖНО! Это свойство является экспериментальным. Экспериментальные свойства могут быть неполными и могут быть изменены, прежде чем они станут полностью доступны. Это свойство предоставлено только для тестирования и исследования, его не следует использовать в рабочих приложениях.
Значение по умолчанию: false
supportsVideo Boolean Значение, указывающее, поддерживает ли бот видеозвонки. ВАЖНО! Это свойство является экспериментальным. Экспериментальные свойства могут быть неполными и могут быть изменены, прежде чем они станут полностью доступны. Это свойство предоставлено только для тестирования и исследования, его не следует использовать в рабочих приложениях.
Значение по умолчанию: false
requiresSecurityEnabledGroup Логический Значение , указывающее, должна ли группа Office группы команды включать безопасность.
Значение по умолчанию: false

bots.configuration

Имя Тип Максимальный размер Обязательный Описание
team.fetchTask Логический ✔️ Логическое значение, указывающее, следует ли динамически получать диалоговое окно (называемое модулем задач в TeamsJS версии 1.x).
Значение по умолчанию: false
team.taskInfo.title String 64 символа ✔️ Начальное название диалогового окна
team.taskInfo.width String 16 Ширина диалогового окна — это число в пикселях или макет по умолчанию, например large, mediumили small.
team.taskInfo.height String 16 Высота диалогового окна — это число в пикселях или макет по умолчанию, например large, mediumили small.
team.taskInfo.url String 2048 символов Начальный URL-адрес веб-представления.
groupChat.fetchTask Логический ✔️ Логическое значение, указывающее, следует ли динамически получать диалоговое окно.
Значение по умолчанию: false
groupChat.taskInfo Объект Диалоговое окно, запускаемое при выборке задачи, заданной значением false.
Значение по умолчанию: false
groupChat.taskInfo.title String 64 символа ✔️ Начальное название диалогового окна
groupChat.taskInfo.width String 16 Ширина диалогового окна — это число в пикселях или макет по умолчанию, например large, mediumили small.
groupChat.taskInfo.height String 16 Высота диалогового окна — это число в пикселях или макет по умолчанию, например large, mediumили small.
groupChat.taskInfo.url String 2048 символов Начальный URL-адрес веб-представления.

bots.commandLists

Необязательный список команд, которые бот может рекомендовать пользователям. Объект является массивом (не более 2 элементов) со всеми элементами типа object; вы должны определить отдельный список команд для каждой области, которую поддерживает ваш бот. Подробнее см. в статье Меню ботов.

Имя Тип Максимальный размер Обязательный Описание
items.scopes Массив перечислений 3 ✔️ Указывает область, для которой действует список команд. Возможны значения team, personal и groupChat.
items.commands Массив объектов 10 ✔️ Массив команд, поддерживаемых ботом:
title: имя команды бота (строка, 32).
description: простое описание или пример синтаксиса команды и ее аргументов (строка, 128).

connectors

Необязательный параметр — массив

Блок connectors определяет соединитель для Группы Microsoft 365 приложения.

Объект является массивом (не более 1 элемента), и все элементы относятся к типу object. Этот блок необходим только для решений, предоставляющих соединители. Поддерживается только один соединитель для каждого приложения.

Имя Тип Максимальный размер Обязательный Описание
configurationUrl String 2048 символов ✔️ URL-адрес https://, используемый при настройке соединителя с помощью встроенного интерфейса конфигурации.
connectorId String 64 символа ✔️ Уникальный идентификатор соединителя, соответствующий его идентификатору на информационной панели разработчиков соединителей.
scopes Массив перечислений 1 ✔️ Указывает, предоставляет ли соединитель возможности в контексте канала в team или только для отдельных пользователей (personal). Поддерживается team только область.

composeExtensions

Необязательный параметр — массив

Определяет расширение для обмена сообщениями для приложения.

Примечание.

В ноябре 2017 г. имя функции было изменено с "compose extension" на "расширение сообщений", но имя манифеста приложения остается прежним, чтобы существующие расширения продолжали функционировать.

Объект является массивом (не более 1 элемента), и все элементы относятся к типу object. Этот блок необходим только для решений, предоставляющих расширение для сообщений.

Имя Тип Максимальный размер Обязательный Описание
botId String Уникальный идентификатор приложения Microsoft для бота, поддерживающего расширение для обмена сообщениями, в соответствии с регистрацией в Bot Framework. Этот идентификатор может совпадать с общим идентификатором приложения.
composeExtensionType String Тип расширения compose. Значения перечисления: botBased и apiBased.
authorization Объект 2 Сведения об авторизации для расширения сообщений на основе API
authorization.authType String Перечисление возможных типов авторизации. Поддерживаемые значения: none, apiSecretServiceAuthи microsoftEntra.
authorization.microsoftEntraConfiguration Объект Объект, фиксирующий сведения, необходимые для выполнения потока проверки подлинности microsoftEntra. Применимо, только если тип проверки подлинности имеет значение microsoftEntra.
authorization.microsoftEntraConfiguration.supportsSingleSignOn логический Значение , указывающее, настроен ли единый вход для приложения.
authorization.apiSecretServiceAuthConfiguration Объект Объект, фиксирующий сведения, необходимые для проверки подлинности службы. Применимо, только если тип проверки подлинности имеет значение apiSecretServiceAuth.
authorization.apiSecretServiceAuthConfiguration.apiSecretRegistrationId String 128 символов Идентификатор регистрации возвращается, когда разработчик отправляет ключ API через портал разработчика.
apiSpecificationFile String 2048 символов Относительный путь к файлу спецификации API в пакете манифеста.
canUpdateConfiguration Логический Значение , указывающее, может ли пользователь обновить конфигурацию расширения сообщений.
Значение по умолчанию: true
commands Массив объекта 10 Массив команд, поддерживаемых расширением для обмена сообщениями.
messageHandlers Массив объектов 5 Список обработчиков, которые позволяют вызывать приложение при выполнении определенных условий. Домены также должны быть перечислены в validDomains.
messageHandlers.type String Тип обработчика сообщений. Должно быть задано значение "link".
messageHandlers.value.domains Массив строк 2048 символов Массив доменов, на которые может зарегистрироваться обработчик сообщений ссылок.
messageHandlers.supportsAnonymizedPayloads Логический Логическое значение, указывающее, поддерживает ли обработчик сообщений ссылки приложения анонимный поток вызова.
Значение по умолчанию: false
Чтобы включить нулевую установку для распаковки ссылок, необходимо задать trueзначение .
Примечание. Свойство supportAnonymousAccess заменено supportsAnonymizedPayloads.
type Тип расширения compose. Поддерживаемые значения: apiBased или botBased.

composeExtensions.commands

Расширение сообщений должно объявлять одну или несколько команд. Каждая команда отображается в Teams как потенциальное взаимодействие из точки входа на основе пользовательского интерфейса. Существует не более 10 команд.

Каждый элемент команды представляет собой объект со следующей структурой:

Имя Тип Максимальный размер Обязательный Описание
id String 64 символа ✔️ ИД команды.
type String 64 символа Тип команды. Либо query, либо action. По умолчанию: query
samplePrompts массив 5 Нет Свойство, используемое Copilot для отображения запросов, поддерживаемых подключаемым модулем, для пользователя. В сценариях Copilot это свойство требуется для прохождения проверки приложения для отправки в Магазин.
samplePrompts.text string 128 символов ✔️ Содержимое примера запроса.
apiResponseRenderingTemplateFile String 2048 символов Относительный путь к файлу шаблона отрисовки ответа API, используемого для форматирования ответа JSON от API разработчика до ответа адаптивной карточки.
context Массив строк 3 символа Определяет, откуда можно вызвать расширение сообщения. Любое сочетание compose, commandBox, message.
Значения по умолчанию: compose, commandBox
title String 32 символа ✔️ Понятное имя команды.
description String 128 символов Описание назначения команды, которое отображается для пользователей.
semanticDescription String 5000 символов Семантическое описание команды для использования Copilot с помощью больших языковых моделей (LLM).
initialRun Логический Логическое значение, указывающее, выполняется ли команда изначально без параметров.
Значение по умолчанию: false
fetchTask Логический Логическое значение, указывающее, должен ли он получать диалоговое окно динамически.
taskInfo Объект Укажите диалоговое окно для предварительной загрузки при использовании команды расширения сообщений.
taskInfo.title String 64 символа Начальное название диалогового окна
taskInfo.width String Ширина диалогового окна — число в пикселях или макет по умолчанию, например large, mediumили small.
taskInfo.height String Высота диалога — число в пикселях или макет по умолчанию, например large, mediumили small.
taskInfo.url String 2048 символов Начальный URL-адрес веб-представления.
parameters Массив объекта 5 Список параметров, которые принимает команда. Минимум: 1; максимум: 5.
parameter.name String 64 символа ✔️ Имя параметра в том виде, в каком оно отображается в клиенте. Это включается в запрос пользователя.
Для расширения сообщений на основе API имя должно сопоставляться с parameters.name в описании OpenAPI. Если вы ссылаетесь на свойство в схеме текста запроса, имя должно сопоставляться с properties.name параметрами запроса или .
parameter.title String 32 символа ✔️ Понятное название параметра.
parameter.description String 128 символов Понятное описание назначения параметра.
parameter.semanticDescription String 2000 символов Семантическое описание параметра для использования большими языковыми моделями (LLM).
parameter.inputType String Определяет тип элемента управления, отображаемого в диалоговом окне для fetchTask: false. Один из text, textarea, number, date, time, toggle, choiceset.
parameter.value String 512 символов Начальное значение параметра.
parameter.choices Массив объектов 10 Варианты выбора дляchoiceset. Используйте только если parameter.inputType является choiceset.
parameter.choices.title String 128 символов ✔️ Название выбора.
parameter.choices.value String 512 символов ✔️ Значение выбора.

scopeConstraints

Область ограничения, накладываемые на приложение, чтобы указать, в каких потоках можно установить приложение. Если ограничения не указаны, приложение можно установить во все потоки в пределах конкретного область.

Необязательный — объект

Имя Тип Максимальный размер Обязательный Описание
teams Array 128 Список идентификаторов потоков команды, которыми ограничено ваше приложение.
teams.id String 64 символа ✔️ Идентификатор потока команды.
groupChats Array 128 Список идентификаторов потоков чата, которыми ограничено ваше приложение.
groupChats.id String 64 символа ✔️ Идентификатор потока чата.

permissions

Необязательный — массив строк

Массив string, который указывает, какие разрешения запрашивает приложение, чтобы конечные пользователи знали, как работает расширение. Следующие параметры не являются исчерпывающими:

  • identity Требуются сведения удостоверения пользователя.
  • messageTeamMembers Требуется разрешение на отправку прямых сообщений участникам группы.

Изменение этих разрешений при обновлении приложения заставляет пользователей повторить процесс согласия при первом запуске обновленного приложения.

devicePermissions

Необязательный — массив строк

Указывает собственные функции на устройстве пользователя, к которым приложение может запрашивать доступ. Доступные варианты:

  • geolocation
  • media
  • notifications
  • midi
  • openExternal

validDomains

Необязательно, за исключением Обязательно где указано

Список допустимых доменов, с которых приложение ожидает загрузки содержимого. Списки доменов могут включать подстановочные знаки, например *.example.com. Допустимый домен соответствует только одному сегменту домена. Если нужно соответствие a.b.example.com, то используйте *.*.example.com. Если конфигурация вкладки или пользовательский интерфейс содержимого должен перейти в любой другой домен, кроме того, который используется для настройки вкладки, этот домен необходимо указать здесь.

Примечание.

Надстройки Office, настроенные со свойством extensions в манифесте, игнорируют домены, содержащие подстановочный знак. Если приложение включает надстройку Office, укажите полное доменное имя для доменов, к которым надстройка обращается.

Однако не обязательно включать домены поставщиков удостоверений, которые вы хотите поддерживать в приложении. Например, для проверки подлинности с помощью Идентификатора Google необходимо перенаправить на accounts.google.com, но не следует включать accounts.google.com в validDomains[].

Важно!

Не добавляйте неподконтрольные вам домены (напрямую или с помощью подстановочных знаков). Например, yourapp.onmicrosoft.com является допустимым, но *.onmicrosoft.com недопустимым.

Объект — массив со всеми элементами типа string. Максимальное число элементов объекта — 16, а максимальная длина — 2048 символов.

webApplicationInfo

Необязательный — объект

Укажите идентификатор приложения Microsoft Entra и сведения Graph, чтобы пользователи легко входить в приложение Microsoft Entra.

Имя Тип Максимальный размер Обязательный Описание
id String ✔️ Microsoft Entra идентификатор приложения. Этот идентификатор должен быть глобальным уникальным идентификатором.
resource String 2048 символов URL-адрес ресурса приложения для получения токена аутентификации для единого входа.

graphConnector

Необязательный — объект

Укажите конфигурацию соединителя Graph приложения. Если он присутствует, необходимо также указать webApplicationInfo.id .

Имя Тип Максимальный размер Обязательный Описание
notificationUrl string 2048 символов ✔️ URL-адрес https://, куда должны отправляться уведомления graph-connector для приложения.

showLoadingIndicator

Необязательный — логическое значение

Указывает, следует ли отображать индикатор загрузки при загрузке приложения или вкладки.
Значение по умолчанию: false

Примечание.

  • Если в манифесте приложения выбрано showLoadingIndicator значение true, чтобы правильно загрузить страницу, измените страницы содержимого вкладок и диалоговых окон, как описано в разделе Отображение собственного индикатора загрузки .
  • Если не изменить страницы содержимого вкладки, приложение вкладки не загружается и отображает ошибку There was a problem reaching this app.

isFullScreen

Необязательный — логическое значение

Указывает, отображается ли панель заголовка вкладки при отрисовке личного приложения.
Значение по умолчанию: false

Примечание.

isFullScreen действует только для приложений, опубликованных в вашей организации.

activities

Необязательный — объект

Определите свойства, которые приложение использует для публикаций в ленте новостей пользователя.

Имя Тип Максимальный размер Обязательный Описание
activityTypes Массив объектов 128 элементов Укажите типы действий, которые приложение может публиковать в канале новостей пользователей. Тип systemDefault действия является зарезервированной и недопустимой строкой.

activities.activityTypes

Имя Тип Максимальный размер Обязательный Описание
type String 32 символа ✔️ Тип уведомления. См. ниже.
description String 128 символов ✔️ Краткое описание уведомления. См. ниже.
templateText String 128 символов ✔️ Пример: "Пользователь {actor} создал для вас задачу {taskId}"
{
   "activities":{
      "activityTypes":[
         {
            "type":"taskCreated",
            "description":"Task Created Activity",
            "templateText":"{actor} created task {taskId} for you"
         },
         {
            "type":"teamMention",
            "description":"Team Mention Activity",
            "templateText":"{actor} mentioned team"
         },
         {
            "type":"channelMention",
            "description":"Channel Mention Activity",
            "templateText":"{actor} mentioned channel"
         },
         {
            "type":"userMention",
            "description":"Personal Mention Activity",
            "templateText":"{actor} mentioned user"
         },
         {
            "type":"calendarForward",
            "description":"Forwarding a Calendar Event",
            "templateText":"{actor} sent user an invite on behalf of {eventOwner}"
         },
         {
            "type":"calendarForward",
            "description":"Forwarding a Calendar Event",
            "templateText":"{actor} sent user an invite on behalf of {eventOwner}"
         },
         {
            "type":"creatorTaskCreated",
            "description":"Created Task Created",
            "templateText":"The Creator created task {taskId} for you"
         }
      ]
   }
}

configurableProperties

Необязательный параметр — массив

Блок configurableProperties определяет свойства приложений, доступные для настройки администраторам Teams. Дополнительные сведения см. в разделе включение настройки приложения.

Примечание.

Необходимо определить хотя бы одно свойство. В этом блоке можно определить не более 9 свойств.

Можно определить любое из следующих свойств:

  • name: отображаемое имя приложения.
  • shortDescription: краткое описание приложения.
  • longDescription: подробное описание приложения.
  • smallImageUrl: значок контура приложения.
  • largeImageUrl: значок цвета приложения.
  • accentColor: цвет, используемый с и в качестве фона для значков структуры.
  • developerUrl: URL-адрес веб-сайта разработчика (HTTPS).
  • privacyUrl: URL-адрес политики конфиденциальности разработчика (HTTPS).
  • termsOfUseUrl: URL-адрес условий использование разработчика (HTTPS).

supportedChannelTypes

Необязательный параметр — массив

Включает приложение в нестандартных каналах. Если приложение поддерживает область группы и это свойство определено, то Teams соответствующим образом включает ваше приложение в каждом типе канала. Поддерживаются типы частных и общих каналов.

Примечание.

defaultBlockUntilAdminAction

Необязательный — логическое значение

Значение типа , указывающее, заблокировано ли приложение по умолчанию, пока администратор не разрешает его.
Значение по умолчанию: false

publisherDocsUrl

Необязательный — строка

HTTPS:// URL-адрес страницы, которая предоставляет дополнительные сведения о приложении для администраторов. Максимальная длина строки — 2048 символов.

defaultInstallScope

Необязательный — строка

Указывает область установки, заданную для этого приложения по умолчанию. Определенный область — это параметр, отображаемый на кнопке, когда пользователь пытается добавить приложение. Доступные варианты:

  • personal
  • team
  • groupChat
  • meetings

defaultGroupCapability

Необязательный — объект

При выборе групповой установки область определяется возможность по умолчанию при установке приложения пользователем. Доступные варианты:

  • team
  • groupchat
  • meetings
Имя Тип Максимальный размер Обязательный Описание
team String Если выбрана область установки team, в этом поле указывается доступная по умолчанию емкость.
Варианты: tab, bot или connector.
groupchat String Если выбрана область установки groupchat, в этом поле указывается доступная по умолчанию емкость.
Варианты: tab, bot или connector.
meetings String Если выбрана область установки meetings, в этом поле указывается доступная по умолчанию емкость.
Варианты: tab, bot или connector.

subscriptionOffer

Необязательный — объект

Указывает предложение SaaS, связанное с приложением.

Имя Тип Максимальный размер Обязательный Описание
offerId string 2048 символов ✔️ Уникальный идентификатор, включающий идентификатор Publisher и идентификатор предложения, которые можно найти в Центре партнеров. Эта строка должна быть в формате: publisherId.offerId .

meetingExtensionDefinition

Необязательный — объект

Укажите определение расширения собрания. Дополнительные сведения см. в статье Настраиваемые сцены режима "Вместе" в Teams.

Имя Тип Максимальный размер Обязательный Описание
scenes Массив объектов 5 элементов Сцены, поддерживаемые собранием.
supportsStreaming Логическое Логическое значение, указывающее, может ли приложение передавать аудио- и видеосодержимое собрания в конечную точку протокола собрания (RTMP) в режиме реального времени.
Значение по умолчанию: false
videoFiltersConfigurationUrl String 2048 символов URL-адрес https:// для настройки фильтров видео.
supportsAnonymousGuestUsers Логический Логическое значение, указывающее, поддерживает ли приложение доступ анонимных гостевых пользователей.
Значение по умолчанию: false

meetingExtensionDefinition.scenes

Имя Тип Максимальный размер Обязательный Описание
id String ✔️ Уникальный идентификатор сцены. Этот идентификатор должен быть глобальным уникальным идентификатором.
name String 128 символов ✔️ Имя сцены.
file String 2048 символов ✔️ Относительный путь к файлу JSON метаданных сцен.
preview String 2048 символов ✔️ Относительный путь к файлу значка предварительного просмотра PNG сцен.
maxAudience Integer 50 ✔️ Максимальное количество аудиторий, поддерживаемых в сцене.
seatsReservedForOrganizersOrPresenters Integer 50 ✔️ Количество мест, зарезервированных для организаторов или докладчиков.

meetingExtensionDefinition.videoFilters

Этот объект указывает на поддерживаемые для собраний фильтры видео.

Имя Тип Максимальный размер Обязательный Описание
id String ✔️ Уникальный идентификатор фильтра видео. Этот идентификатор должен быть глобальным уникальным идентификатором.
name String 128 символов ✔️ Имя фильтра видео.
thumbnail String 2048 символов ✔️ Относительный путь к эскизу видеофильтра.

авторизация

Необязательный — объект

Примечание.

authorization поддерживается только для манифеста приложения версии 1.12 или более поздней.

Укажите и консолидируйте сведения об авторизации для приложения.

Имя Тип Максимальный размер Обязательный Описание
permissions Object Список разрешений, необходимых приложению для работы.

authorization.permissions

Имя Тип Максимальный размер Обязательный Описание
resourceSpecific Массив объектов 16 элементов Разрешения, защищающие доступ к данным на уровне экземпляров ресурсов.

authorization.permissions.resourceSpecific

Имя Тип Максимальный размер Обязательный Описание
type String ✔️ Тип разрешения на согласие для конкретного ресурса (RSC).
Варианты: Application и Delegated.
name String 128 символов ✔️ Имя разрешения RSC. Дополнительные сведения см. в разделах Разрешения приложений RSC и Делегированные разрешения RSC.

Разрешения приложений RSC

Разрешения приложений позволяют приложению получать доступ к данным без необходимости входа пользователя. Сведения о разрешениях приложений см. в разделах Разрешения RSC для Microsoft Graph и Microsoft BotSDK.

Делегированные разрешения RSC

Делегированные разрешения позволяют приложению получать доступ к данным от имени вошедшего пользователя.

  • Делегированные разрешения RSC для команды

    Название Описание
    ChannelMeetingParticipant.Read.Group Позволяет приложению читать сведения об участниках, включая имя, роль, идентификатор, время присоединения и ухода, собрания канала, связанные с этой командой, от имени выполнившего вход пользователя.
    ChannelMeetingIncomingAudio.Detect.Group Позволяет приложению обнаруживать входящие звуки в собраниях канала, связанных с командой.
    ChannelMeetingActiveSpeaker.Read.Group Позволяет приложению считывать участников, отправляющих звук на собрания канала, связанные с командой.
    ChannelMeetingAudioVideo.Stream.Group Позволяет приложению передавать аудио-видеоматериалы из собраний канала, связанных с командой.
    InAppPurchase.Allow.Group Позволяет приложению показывать предложения Marketplace пользователям в команде и совершать покупки в приложении от имени пользователя, выполнившего вход.
    ChannelMeetingStage.Write.Group Позволяет приложению отображать содержимое на этапе собрания в собраниях канала, связанных с командой, от имени вошедшего пользователя.
    LiveShareSession.ReadWrite.Group Позволяет приложению создавать и синхронизировать сеансы Live Share для команды, а также получать доступ к связанной информации, например имени и роли, о списке команды и любых связанных собраниях от имени пользователя, выполнившего вход.
    MeetingParticipantReaction.Read.Group Позволяет приложению считывать реакции участников на собраниях канала, связанных с командой.
  • Делегированные разрешения RSC для чатов или собраний

    Название Описание
    InAppPurchase.Allow.Chat Позволяет приложению показывать предложения Marketplace пользователям в чате и любом связанном собрании, а также совершать покупки в приложении от имени пользователя, выполнившего вход.
    MeetingStage.Write.Chat Позволяет приложению отображать содержимое на этапе собрания в собраниях, связанных с чатом, от имени вошедшего в систему пользователя.
    OnlineMeetingParticipant.Read.Chat Позволяет приложению считывать сведения об участниках, включая имя, роль, идентификатор, присоединенное и левое время собрания, связанного с чатом, от имени пользователя, выполнившего вход.
    OnlineMeetingParticipant.ToggleIncomingAudio.Chat Позволяет приложению переключать входящий звук для участников собраний, связанных с чатом, от имени вошедшего в систему пользователя.
    LiveShareSession.ReadWrite.Chat Позволяет приложению создавать и синхронизировать сеансы Live Share для чата и получать доступ к связанной информации, например имени и роли, о списке чата и любых связанных собраниях от имени пользователя, выполнившего вход.
    MeetingParticipantReaction.Read.Chat Позволяет приложению считывать реакции участников собраний, связанных с чатом.
    OnlineMeetingIncomingAudio.Detect.Chat Позволяет приложению обнаруживать изменения в состоянии входящего звука на собраниях, связанных с чатом, от имени вошедшего пользователя.
    OnlineMeetingActiveSpeaker.Read.Chat Позволяет приложению считывать участников, отправляющих аудио на собрания, связанные с чатом.
    OnlineMeetingAudioVideo.Stream.Chat Позволяет приложению передавать аудио-видео содержимое собраний, связанных с чатом.
  • Делегированные разрешения RSC для пользователей

    Название Описание
    CameraStream.Read.User Позволяет приложению считывать поток камеры пользователя.
    InAppPurchase.Allow.User Позволяет приложению отображать предложения в Marketplace и совершать покупки в приложении от имени выполнившего вход пользователя.
    OutgoingVideoStream.Write.User Позволяет приложению изменять исходящее видео пользователя.
    MicrophoneStream.Read.User Позволяет приложению считывать поток микрофона пользователя.
    MeetingParticipantReaction.Read.User Позволяет приложению считывать реакции пользователя во время участия в собрании.

extensions

Необязательный — объект

Свойство extensions задает надстройки Outlook в манифесте приложения и упрощает распространение и приобретение в экосистеме Microsoft 365. Каждое приложение поддерживает только одно расширение.

Имя Тип Максимальный размер Обязательный Описание
requirements Object Задает набор требований клиента или узла для расширения.
runtimes Array Настраивает набор сред выполнения и действий, которые могут использоваться каждой точкой расширения. Дополнительные сведения см. в разделе Среды выполнения в надстройках Office.
ribbons Array Определяет точку расширения лент.
autoRunEvents Array Определяет точку расширения активации на основе событий.
alternates Array Указывает связь с альтернативными существующими решениями Microsoft 365. Он используется для скрытия или определения приоритета надстроек от одного издателя с перекрывающимися функциональными возможностями.
audienceClaimUrl String 2048 символов Указывает URL-адрес расширения и используется для проверки маркеров удостоверений пользователей Exchange. Дополнительные сведения см. в токене удостоверения Exchange.

Дополнительные сведения см. в разделе Манифест надстроек Office для Microsoft 365.

extensions.requirements

Объект extensions.requirements задает области, форм-факторы и наборы обязательных элементов библиотеки JavaScript для Office, которые должны поддерживаться в клиенте Office для установки надстройки. Требования также поддерживаются для дочерних свойств "ribbon", "runtime", "alternates" и "autoRunEvents", чтобы выборочно отфильтровать некоторые функции надстройки. Дополнительные сведения см . в статье Указание требований к надстройке Office в унифицированном манифесте для Microsoft 365.

Имя Тип Максимальный размер Обязательный Описание
requirements.capabilities Array Определяет наборы требований.
Параметры: name (обязательно), minVersion, maxVersion
requirements.capabilities.name String ✔️ Определяет имя набора требований.
requirements.capabilities.minVersion String Определяет минимальную версию для набора требований.
requirements.capabilities.maxVersion String Определяет максимальную версию для набора требований.
requirements.scopes Массив перечислений 1 Определяет области, в которых может выполняться надстройка, и определяет приложения Microsoft 365, в которых может выполняться расширение. Например, mail (Outlook).
Поддерживаемое значение: mail
requirements.formFactors Массив перечислений Определяет форм-факторы, поддерживающие надстройку.
Поддерживаемые значения: mobile, desktop

extensions.runtimes

Массив extensions.runtimes настраивает наборы сред выполнения и действий, которые может использовать каждая точка расширения.

Имя Тип Максимальный размер Обязательный Описание
id String 64 символа ✔️ Указывает идентификатор среды выполнения.
type Перечисление строк ✔️ Указывает тип среды выполнения. Поддерживаемое значение перечисления для среды выполнения на основе браузераgeneral.
code Объект ✔️ Указывает расположение кода для среды выполнения. В зависимости от runtime.typeнадстройки могут использовать файл JavaScript или HTML-страницу с внедренным script тегом, указывающим URL-адрес файла JavaScript. Оба URL-адреса необходимы в ситуациях, когда runtime.type параметр не определен.
code.page URL-адрес ✔️ Указывает URL-адрес веб-страницы, содержащей внедренный script тег, который указывает URL-адрес файла JavaScript (который загружается в браузерную среду выполнения).
code.script URL-адрес Указывает URL-адрес файла JavaScript для загрузки в среде выполнения, доступной только для JavaScript.
lifetime Перечисление строк Указывает время существования среды выполнения. Среды выполнения с временем short существования не сохраняют состояние при выполнении, в то время как среды выполнения с временем long существования делают. Дополнительные сведения см. в разделе Среды выполнения в надстройках Office.
actions Array Указывает набор действий, поддерживаемых средой выполнения. Действие выполняет функцию JavaScript или открывает представление, например область задач.
actions.id String 64 символа ✔️ Указывает идентификатор действия, который передается в файл кода.
actions.type String ✔️ Указывает тип действия. Тип executeFunction запускает функцию JavaScript, не дожидаясь ее завершения, и openPage тип открывает страницу в заданном представлении.
actions.displayName String 64 символа Указывает отображаемое имя действия и не является меткой кнопки или пункта меню, вызывающего действие (которое настроено с tabs.groups.controls.labelпомощью ).
actions.pinnable Логический Указывает, что область задач поддерживает закрепление (область задач остается открытой, когда пользователь выбирает другой элемент).
Значение по умолчанию: false
actions.view String 64 символа Указывает представление, в котором должна быть открыта страница. Он используется только в том случае, если actions.type имеет значение openPage.
actions.multiselect Логический Указывает, может ли конечный пользователь выбрать несколько элементов, например несколько сообщений электронной почты, и применить действие ко всем из них.
actions.supportsNoItemContext Логический Позволяет надстройкам области задач активироваться без включения области чтения или выбранного сообщения.
requirements Объект Указывает области, formFactors и наборы обязательных элементов библиотеки JavaScript для Office, которые должны поддерживаться в клиенте Office, чтобы среда выполнения была включена в надстройку. Дополнительные сведения см . в статье Указание требований к надстройке Office в унифицированном манифесте для Microsoft 365.
requirements.capabilities Array Определяет наборы требований.
Параметры: name (обязательно), minVersion, maxVersion
requirements.capabilities.name String ✔️ Определяет имя набора требований.
requirements.capabilities.minVersion String Определяет минимальную версию для набора требований.
requirements.capabilities.maxVersion String Определяет максимальную версию для набора требований.
requirements.scopes Массив перечислений 1 Определяет области, в которых может выполняться надстройка, и определяет приложения Microsoft 365, в которых может выполняться расширение. Например, mail (Outlook).
Поддерживаемое значение: mail
requirements.formFactors Массив перечислений Определяет форм-факторы, поддерживающие надстройку.
Поддерживаемые значения: mobile, desktop

Сведения об использовании extensions.runtimesсм. в статье Создание команд надстроек, настройка среды выполнения для области задач и настройка среды выполнения для команды функции.

extensions.ribbons

Свойство extensions.ribbons позволяет добавлять команды надстройки (кнопки и пункты меню) на ленту приложения Microsoft 365. Определение ленты выбирается из массива на основе требований и первого порядка.

Имя Тип Максимальный размер Обязательный Описание
contexts Array 7 Указывает окно приложения Microsoft 365, в котором пользователю доступна настройка ленты. Каждый элемент в массиве является членом массива строк.
Поддерживаемые значения: mailRead, mailCompose, meetingDetailsOrganizer, meetingDetailsAttendee, onlineMeetingDetailsOrganizer, logEventMeetingDetailsAttendee, default
requirements Объект Указывает области, formFactors и наборы обязательных элементов библиотеки JavaScript для Office, которые должны поддерживаться в клиенте Office, чтобы появилась настройка ленты. Дополнительные сведения см . в статье Указание требований к надстройке Office в унифицированном манифесте для Microsoft 365.
requirements.capabilities Array Определяет наборы требований.
Параметры: name (обязательно), minVersion, maxVersion
requirements.capabilities.name String ✔️ Определяет имя набора требований.
requirements.capabilities.minVersion String Определяет минимальную версию для набора требований.
requirements.capabilities.maxVersion String Определяет максимальную версию для набора требований.
requirements.scopes Массив перечислений 1 Определяет области, в которых может выполняться надстройка, и определяет приложения Microsoft 365, в которых может выполняться расширение. Например, mail (Outlook).
Поддерживаемое значение: mail
requirements.formFactors Массив перечислений Определяет форм-факторы, поддерживающие надстройку.
Поддерживаемые значения: mobile, desktop
tabs Array ✔️ Настраивает настраиваемые вкладки на ленте приложения Microsoft 365.
tabs.id String 64 символа Указывает идентификатор вкладки в приложении.
tabs.builtinTabId String 64 символа Указывает идентификатор встроенной вкладки ленты Office. Дополнительные сведения о возможных значениях см. в разделе Поиск идентификаторов встроенных вкладок ленты Office.
tabs.label String 64 символа Указывает текст, отображаемый для вкладки. Несмотря на максимальную длину 64 символа, для правильного выравнивания вкладки на ленте рекомендуется ограничить метку до 16 символов.
tabs.position Объект Настраивает положение настраиваемой вкладки относительно других вкладок на ленте.
tabs.position.builtinTabId String 64 символа ✔️ Указывает идентификатор встроенной вкладки, рядом с которым должна располагаться настраиваемая вкладка. Дополнительные сведения см. в разделе Поиск идентификаторов элементов управления и групп элементов управления.
tabs.position.align Перечисление строк ✔️ Определяет выравнивание настраиваемой вкладки относительно указанной встроенной вкладки.
Поддерживаемые значения: after, before
tabs.groups Array Определяет группы элементов управления на вкладке ленты на не мобильном устройстве. Сведения о мобильных устройствах см tabs.customMobileRibbonGroups . ниже.
tabs.groups.id String 64 символа Указывает идентификатор группы вкладок в приложении. Он должен отличаться от любого встроенного идентификатора группы в приложении Microsoft 365 и любой другой настраиваемой группе.
tabs.groups.label String 64 символа Указывает текст, отображаемый для группы. Несмотря на максимальную длину 64 символа, для правильного выравнивания вкладки на ленте рекомендуется ограничить метку до 16 символов.
tabs.groups.icons Array Указывает значки, отображаемые для группы.
tabs.groups.icons.size Номер ✔️ Задает размер значка в пикселях, перечисляемых как 16,20,24,32,40,48,64;.80
Обязательные размеры изображения: 16, 32, 80.
tabs.groups.icons.url URL-адрес ✔️ Указывает абсолютный URL-адрес значка.
tabs.groups.controls Array Настраивает кнопки и меню в группе.
tabs.groups.controls.id String 64 символа ✔️ Указывает идентификатор элемента управления в приложении. Он должен отличаться от идентификатора встроенного элемента управления в приложении Microsoft 365 и любого другого пользовательского элемента управления.
tabs.groups.controls.items Array Настраивает элементы для элемента управления меню.
tabs.groups.controls.items.id String ✔️ Указывает идентификатор элементов в приложении.
tabs.groups.controls.items.type Перечисление строк ✔️ Определяет тип элементов управления.
Поддерживаемые значения: menu, button
tabs.groups.controls.items.label String 64 символа ✔️ Указывает текст, отображаемый для элементов.
tabs.groups.controls.items.icons Array Настраивает значки для пользовательского элемента.
tabs.groups.controls.items.icons.size Номер ✔️ Задает размер значка в пикселях, перечисляемых как 16,20,24,32,40,48,64;.80
Обязательные размеры изображения: 16, 32, 80.
tabs.groups.controls.items.icons.url URL-адрес ✔️ Указывает абсолютный URL-адрес значка.
tabs.groups.controls.items.supertip ✔️ Настраивает суперпетку для пользовательского элемента. Суперподставка — это функция пользовательского интерфейса, которая отображает краткое поле справки об элементе управления при наведении курсора на него. Поле может содержать несколько строк текста.
tabs.groups.controls.items.supertip.title String 64 символа ✔️ Задает текст заголовка супертемы.
tabs.groups.controls.items.supertip.description String 128 символов ✔️ Указывает описание супервыставки.
tabs.groups.controls.items.actionId String 64 символа ✔️ Указывает идентификатор действия, выполняемого при выборе пользователем элемента управления или пункта меню. Объект должен соответствовать параметру actionIdruntime.actions.id.
tabs.groups.controls.items.enabled Логический Указывает, включен ли изначально элемент управления.
Значение по умолчанию: true
tabs.groups.controls.items.overriddenByRibbonApi Логический Указывает, скрыта ли группа, кнопка, меню или пункт меню в сочетаниях приложений и платформ, поддерживающих API (Office.ribbon.requestCreateControls), устанавливающий пользовательские контекстные вкладки на ленте.
Значение по умолчанию: false
tabs.groups.controls.type String ✔️ Определяет тип элемента управления.
Поддерживаемые значения: button, menu
tabs.groups.controls.builtinControlId String 64 символа ✔️ Указывает идентификатор существующего элемента управления Microsoft 365. Дополнительные сведения см. в разделе Поиск идентификаторов элементов управления и групп элементов управления.
tabs.groups.controls.label String 64 символа ✔️ Указывает текст, отображаемый для элемента управления . Несмотря на максимальную длину 64 символа, для правильного выравнивания вкладки на ленте рекомендуется ограничить метку до 16 символов.
tabs.groups.controls.icons Array ✔️ Определяет значки для элемента управления. Должно быть не менее трех дочерних объектов; по одному со свойствами size16, 32и 80 пикселей.
tabs.groups.controls.icons.size Номер ✔️ Задает размер значка в пикселях, перечисляемых как 16,20,24,32,40,48,64;.80
Обязательный размер изображения: 16, 32, 80
tabs.groups.controls.icons.url URL-адрес Указывает абсолютный URL-адрес значка.
tabs.groups.controls.supertip Объект ✔️ Настраивает суперпетку для элемента управления .
tabs.groups.controls.supertip.title String 64 символа ✔️ Задает текст заголовка супертемы.
tabs.groups.controls.supertip.description String 128 символов ✔️ Указывает описание супервыставки.
tabs.groups.controls.actionId String 64 символа Требуется, если тип элемента управления имеет значение button. Не используйте, если тип элемента управления — menu. Указывает идентификатор действия, выполняемого при выборе пользователем элемента управления. Объект actionId должен соответствовать свойству runtime.actions.id действия в объекте runtimes .
tabs.groups.controls.enabled Логический Указывает, включен ли изначально элемент управления.
Значение по умолчанию: true
tabs.groups.controls.overriddenByRibbonApi Логический Указывает, скрыта ли группа, кнопка, меню или пункт меню в сочетаниях приложений и платформ, поддерживающих API (Office.ribbon.requestCreateControls), устанавливающий настраиваемые контекстные вкладки на ленте.
Значение по умолчанию: false
tabs.groups.builtinGroupId String 64 символа Указывает идентификатор встроенной группы. Дополнительные сведения см. в разделе Поиск идентификаторов элементов управления и групп элементов управления.
tabs.customMobileRibbonGroups Array 10 Определяет группы элементов управления на вкладке ленты по умолчанию на мобильном устройстве. Это свойство массива может присутствовать только в объектах табуляции со свойством tabs.builtinTabId DefaultTab. Сведения о устройствах, не являющихся мобильными, см tabs.groups . выше.
tabs.customMobileRibbonGroups.id String 250 символов ✔️ Указывает идентификатор группы. Он должен отличаться от любого встроенного идентификатора группы в приложении Microsoft 365 и любой другой настраиваемой группе.
tabs.customMobileRibbonGroups.label String 32 символа ✔️ Указывает метку в группе.
tabs.customMobileRibbonGroups.controls Array 20 ✔️ Определяет элементы управления в группе. Поддерживаются только мобильные кнопки.
tabs.customMobileRibbonGroups.controls.id String 250 символов ✔️ Указывает идентификатор элемента управления, например msgReadFunctionButton.
tabs.customMobileRibbonGroups.controls.type Перечисление строк ✔️ Указывает тип элемента управления. MobileButton поддерживается только.
tabs.customMobileRibbonGroups.controls.label String 32 символа ✔️ Указывает метку в элементе управления .
tabs.customMobileRibbonGroups.controls.actionId String 64 символа ✔️ Указывает идентификатор действия, выполняемого при выборе пользователем элемента управления. Объект actionId должен соответствовать свойству runtime.actions.id действия в объекте runtimes .
tabs.customMobileRibbonGroups.controls.icons Array 9 ✔️ Указывает значки, которые будут отображаться в элементе управления в зависимости от размеров и точек на дюйм экрана мобильного устройства. Должно быть ровно 9 значков.
tabs.customMobileRibbonGroups.controls.icons.size Перечисление чисел ✔️ Размер значка в пикселях. Возможные размеры: 25, 32 и 48. Для каждого возможного значения свойства значка scale должен быть только один размер.
tabs.customMobileRibbonGroups.controls.icons.url String 2048 символов ✔️ Полный абсолютный URL-адрес файла изображения значка.
tabs.customMobileRibbonGroups.controls.icons.scale Перечисление чисел ✔️ Указывает свойство UIScreen.scale для устройств iOS. Возможные значения: 1, 2 и 3. Для каждого возможного значения свойства значка должно быть только одно из значений size .

Сведения об использовании extensions.ribbonsсм. в статье Создание команд надстроек, настройка пользовательского интерфейса для команды области задач и настройка пользовательского интерфейса для команды функции.

extensions.autoRunEvents

Свойство extensions.autoRunEvents определяет точки расширения активации на основе событий.

Имя Тип Максимальный размер Обязательный Описание
events Array 20 ✔️ Настраивает событие, которое приводит к автоматическому запуску действий в надстройке Outlook. Например, см . статью Использование смарт-оповещений OnMessageSend и событий и OnAppointmentSend в надстройках Outlook.
events.type String 64 символа Указывает тип события. Поддерживаемые типы см. в разделе Поддерживаемые события.
events.actionId String 64 символа Определяет действие, выполняемое при возникновении события. Объект должен соответствовать параметру actionIdruntime.actions.id.
events.options Объект Настраивает реакцию Outlook на событие.
events.options.sendMode String ✔️ Указывает действия, выполняемые во время действия отправки почты.
Поддерживаемые значения: promptUser, softBlock, block. Дополнительные сведения см. в разделе Доступные параметры режима отправки.
requirements Объект Указывает области, formFactors и наборы обязательных элементов библиотеки JavaScript для Office, которые должны поддерживаться в клиенте Office для выполнения кода обработки событий. Дополнительные сведения см . в статье Указание требований к надстройке Office в унифицированном манифесте для Microsoft 365.
requirements.capabilities Array Определяет наборы требований.
Параметры: name (обязательно), minVersion, maxVersion
requirements.capabilities.name String ✔️ Определяет имя набора требований.
requirements.capabilities.minVersion String Определяет минимальную версию для набора требований.
requirements.capabilities.maxVersion String Определяет максимальную версию для набора требований.
requirements.scopes Массив перечислений 1 Определяет области, в которых может выполняться надстройка, и определяет приложения Microsoft 365, в которых может выполняться расширение. Например, mail (Outlook).
Поддерживаемое значение: mail
requirements.formFactors Массив перечислений Определяет форм-факторы, поддерживающие надстройку.
Поддерживаемые значения: mobile, desktop

extensions.alternates

Свойство extensions.alternates используется для скрытия или определения приоритетов определенных надстроек на рынке, когда вы опубликовали несколько надстроек с перекрывающимися функциями.

Имя Тип Максимальный размер Обязательный Описание
prefer Object Указывает обратную совместимость с эквивалентной надстройкой COM, надстройкой XLL или и тем, и другим.
prefer.comAddin Объект Указывает надстройку COM, которую необходимо использовать вместо веб-надстройки Microsoft 365 для Windows.
prefer.comAddin.progId String 64 символа ✔️ Определяет тип приложения, в котором может выполняться расширение.
hide Объект Настраивает способ скрытия другой надстройки, опубликованной при установке надстройки, чтобы пользователи не видели обе надстройки в пользовательском интерфейсе Microsoft 365. Например, используйте это свойство, если вы ранее опубликовали надстройку, которая использует старый манифест приложения XML, и заменяете его версией, используюющей новый манифест приложения JSON.
hide.storeOfficeAddin Объект Указывает надстройку Microsoft 365, доступную в Microsoft AppSource.
hide.storeOfficeAddin.officeAddinId String 64 символа ✔️ Указывает идентификатор надстройки на рынке для скрытия. Идентификатор GUID берется из свойства манифеста id приложения, если надстройка на рынке использует манифест приложения JSON. Guid берется из элемента , <Id> если надстройка на рынке использует манифест приложения XML.
hide.storeOfficeAddin.assetId String 64 символа ✔️ Указывает идентификатор ресурса AppSource надстройки на рынке для скрытия.
hide.customOfficeAddin Объект Настраивает способ скрытия надстройки на рынке, которая не распространяется через AppSource.
hide.customOfficeAddin.officeAddinId String 64 символа ✔️ Указывает идентификатор надстройки на рынке для скрытия. Идентификатор GUID берется из свойства манифеста id приложения, если надстройка на рынке использует манифест приложения JSON. Guid берется из элемента , <Id> если надстройка на рынке использует манифест приложения XML.
requirements Объект Указывает области, formFactors и наборы обязательных элементов библиотеки JavaScript для Office, которые должны поддерживаться в клиенте Office, чтобы свойства hide, prefer или alternateIcons вступают в силу. Дополнительные сведения см . в статье Указание требований к надстройке Office в унифицированном манифесте для Microsoft 365.
requirements.capabilities Array Определяет наборы требований.
Параметры: name (обязательно), minVersion, maxVersion
requirements.capabilities.name String ✔️ Определяет имя набора требований.
requirements.capabilities.minVersion String Определяет минимальную версию для набора требований.
requirements.capabilities.maxVersion String Определяет максимальную версию для набора требований.
requirements.scopes Массив перечислений 1 Определяет области, в которых может выполняться надстройка, и определяет приложения Microsoft 365, в которых может выполняться расширение. Например, mail (Outlook).
Поддерживаемое значение: mail
requirements.formFactors Массив перечислений Определяет форм-факторы, поддерживающие надстройку.
Поддерживаемые значения: mobile, desktop
alternateIcons Объект Указывает main значки, которые используются для представления надстройки в более ранних версиях Office. Это свойство является обязательным , если надстройка Office должна быть установлена в Office на Mac, бессрочных лицензиях Office и версиях Office 365 для Windows до версии 2304 (сборка 16320.00000).
alternateIcons.icon Объект ✔️ Задает свойства файла изображения, используемого для представления надстройки.
alternateIcons.icon.size Перечисление чисел ✔️ Это свойство зарезервировано для использования в будущем. Значение должно быть 64.
alternateIcons.icon.url String 2048 символов ✔️ Указывает полный абсолютный URL-адрес файла изображения, который используется для представления надстройки. Изображение значка должно иметь размер 64 x 64 пикселя и использовать один из следующих форматов файлов: GIF, JPG, PNG, EXIF, BMP, TIFF.
alternateIcons.highResolutionIcon Объект ✔️ Указывает свойства файла изображения, используемого для представления надстройки на экранах с высоким разрешением.
alternateIcons.highResolutionIcon.size Перечисление чисел ✔️ Это свойство зарезервировано для использования в будущем. Значение должно быть 64 (не 128).
alternateIcons.highResolutionIcon.url String 2048 символов ✔️ Указывает полный абсолютный URL-адрес файла изображения, который используется для представления надстройки на экранах с высоким разрешением. Изображение значка должно иметь размер 128 x 128 пикселей и использовать один из следующих форматов файлов: GIF, JPG, PNG, EXIF, BMP, TIFF.

actions

Примечание.

Объект представляет собой массив объектов действия. Этот блок необходим только для решений, которые предоставляют действия.

Имя Тип Максимальный размер Обязательный Описание
id String 64 символа ✔️ Строка идентификатора в языковом стандарте по умолчанию, которая используется для каталогизации действий. Должен быть уникальным для всех действий для этого приложения. Например, openDocInContoso.
displayName Строка 64 символа ✔️ Отображаемое имя действия. Прописная буква и название торговой марки. Например, Добавить к поставщикам, Открыть в Contoso и Запрос подписей.
description String ✔️ Задает описание действий.
intent Перечисление строк ✔️ Указывает тип намерения. Поддерживаемые значения перечисления: open, addToи custom.
handlers Массив объектов ✔️ Массив объектов-обработчиков определяет способ управления действиями. В текущей общедоступной предварительной версии добавьте один обработчик для каждого действия.

actions.handlers

Определяет обработчики действия. Обработчики представляют собой массив объектов-обработчиков. Каждое действие должно иметь по крайней мере один обработчик.

Имя Тип Максимальный размер Обязательный Описание
supportedObjects Object Объекты, определяющие, какие объекты могут активировать это действие.
type Перечисление строк ✔️ Указывает тип обработчика Actions. Поддерживаемое значение перечисления — openPage.
pageInfo Объект Требуется, если тип обработчика имеет значение openPage. Объект, содержащий метаданные открываемой страницы.

actions.handlers.supportedObjects

Поддерживаемые типы объектов, которые могут активировать это действие.

Имя Тип Максимальный размер Обязательный Описание
file Object Поддерживаемые типы файлов.
file.extensions Массив строк Массив строк. Расширения файлов типа файла, который может активировать действие. Например, pdf и docx.

actions.handlers.pageInfo

Требуется, если тип обработчика имеет значение openPage. Объект, содержащий метаданные открываемой страницы.

Имя Тип Максимальный размер Обязательный Описание
PageId String Сопоставляется со EntityId статической вкладкой.
SubPageId String Сопоставляется со SubEntityId статической вкладкой.

панели мониторингаCards

Необязательный параметр — массив

Определяет список карточек, которые можно закрепить на панели мониторинга, например Microsoft Viva Connections, для предоставления сводного представления сведений о приложении. Дополнительные сведения о создании карточек для панели мониторинга Viva Connections см. в статье Общие сведения о расширениях адаптивных карточек Bot Powered.

Свойство dashboardCards представляет собой массив элементов типа object.

dashboardCards.dashboardCard

Определяет одну карта панели мониторинга и ее свойства.

Имя Тип Максимальный размер Обязательный Описание
id String ✔️ Уникальный идентификатор для этой панели мониторинга карта. Идентификатор должен быть идентификатором GUID.
displayName String 255 символов ✔️ Отображаемое имя карта.
description String 255 символов ✔️ Описание карта.
pickerGroupId String ✔️ Идентификатор группы в средстве выбора карта. Идентификатор должен быть идентификатором GUID.
icon Объект Указывает значок для карта.
contentSource Объект ✔️ Указывает источник содержимого карта.
defaultSize String ✔️ Размер отрисовки для карта панели мониторинга. Параметры: medium или large.

dashboardCards.dashboardCard.icon

Определяет свойства значка для заданного карта панели мониторинга.

Имя Тип Максимальный размер Обязательный Описание
iconUrl String 2048 символов Расположение значка для карта, который будет отображаться на панели элементов и карта панели.
officeUIFabricIconName String 255 символов Понятное имя значка пользовательского интерфейса Office UI Fabric или Fluent для карта. Это значение используется, если iconUrl не указан.

dashboardCards.dashboardCard.contentSource

Определяет источник содержимого заданной карта панели мониторинга.

Имя Тип Максимальный размер Обязательный Описание
sourceType String Представляет источник содержимого карта. Параметры: bot.
botConfiguration Объект Конфигурация для источника бота. Требуется, sourceType если для задано значение bot.

dashboardCards.dashboardCard.contentSource.botConfiguration

Имя Тип Максимальный размер Обязательный Описание
botId String Уникальный идентификатор приложения Майкрософт для бота, зарегистрированный в Bot Framework. Идентификатор должен быть идентификатором GUID.

См. также