Esquema de manifesto do aplicativo
O manifesto do aplicativo (anteriormente chamado de manifesto de aplicativo do Teams) descreve como seu aplicativo se integra ao produto do Microsoft Teams. O manifesto do seu aplicativo deve estar em conformidade com o esquema hospedado em https://developer.microsoft.com/json-schemas/teams/v1.17/MicrosoftTeams.schema.json
. As versões anteriores 1.0, 1.1,...,1.16 e a versão atual é 1.17 têm suporte (usando "v1.x" na URL).
Para obter mais informações sobre as alterações feitas em cada versão, confira Log de alterações de manifesto do aplicativo e para versões anteriores, consulte versões de manifesto do aplicativo.
A tabela a seguir lista as versões do TeamsJS e do manifesto do aplicativo de acordo com diferentes cenários de aplicativo:
Tipo de aplicativo | Versão do TeamsJS | Versão do Manifesto do aplicativo | Próximas etapas |
---|---|---|---|
Aplicativos do Teams estendidos entre Outlook e Microsoft 365 | TeamsJS v.2.19.0 ou posterior | v.1.13 ou posterior | Estender um aplicativo do Teams para ser executado no Microsoft 365 ou Criar um novo aplicativo do Microsoft 365 |
Aplicativos apenas Teams existentes | Atualizar para TeamsJS v.2.19.0 quando possível (v.1.12 ainda tem suporte*) | 1.12 | Entender a compatibilidade com versões anteriores do TeamsJSe Atualizar para o TeamsJS v.2.0 |
Novos aplicativos apenas Teams | TeamsJS v.2.19.0 ou posterior | 1.12 | Criar um novo aplicativo Teams usando o Kit de Ferramentas do Teams |
*Use o TeamsJS mais recente (v.2.19.0 ou posterior) sempre que possível, para aproveitar as melhorias mais recentes e o suporte a novos recursos, incluindo aplicativos somente do Teams. O TeamsJS v.1.12 continua com suporte, no entanto, nenhum novo recurso ou melhorias será adicionado. Os esquemas 1.12 e 1.13 são os mesmos. Para obter mais informações, confira Biblioteca do TeamsJS.
Observação
Se o aplicativo teams estiver usando o manifesto do aplicativo versão 1.13 ou posterior, verifique se seu aplicativo atende aos critérios para estender seu aplicativo para ser executado no Microsoft 365 ou Outlook.
A seguir está o esquema de manifesto do aplicativo de exemplo:
Manifesto de aplicativo de exemplo
{
"$schema": "https://developer.microsoft.com/json-schemas/teams/v1.16/MicrosoftTeams.schema.json",
"manifestVersion": "1.17",
"version": "1.0.0",
"id": "%MICROSOFT-APP-ID%",
"localizationInfo": {
"defaultLanguageTag": "en-us",
"additionalLanguages": [
{
"languageTag": "es-es",
"file": "en-us.json"
}
]
},
"developer": {
"name": "Publisher Name",
"websiteUrl": "https://example.com/",
"privacyUrl": "https://example.com/privacy",
"termsOfUseUrl": "https://example.com/app-tos",
"mpnId": "1234567890"
},
"name": {
"short": "Name of your app (<=30 chars)",
"full": "Full name of app, if longer than 30 characters (<=100 chars)"
},
"description": {
"short": "Short description of your app (<= 80 chars)",
"full": "Full description of your app (<= 4000 chars)"
},
"icons": {
"outline": "A relative path to a transparent .png icon — 32px X 32px",
"color": "A relative path to a full color .png icon — 192px X 192px"
},
"accentColor": "A valid HTML color code.",
"configurableTabs": [
{
"configurationUrl": "https://contoso.com/teamstab/configure",
"scopes": [
"team",
"groupChat"
],
"canUpdateConfiguration": true,
"context": [
"channelTab",
"privateChatTab",
"meetingChatTab",
"meetingDetailsTab",
"meetingSidePanel",
"meetingStage"
],
"sharePointPreviewImage": "Relative path to a tab preview image for use in SharePoint — 1024px X 768",
"supportedSharePointHosts": [
"sharePointFullPage",
"sharePointWebPart"
]
}
],
"staticTabs": [
{
"entityId": "unique Id for the page entity",
"scopes": [
"personal"
],
"context": [
"personalTab",
"channelTab"
],
"name": "Display name of tab",
"contentUrl": "https://contoso.com/content (displayed in Teams canvas)",
"websiteUrl": "https://contoso.com/content (displayed in web browser)",
"searchUrl": "https://contoso.com/content (displayed in web browser)"
}
],
"supportedChannelTypes": [
"sharedChannels",
"privateChannels"
],
"bots": [
{
"botId": "%MICROSOFT-APP-ID-REGISTERED-WITH-BOT-FRAMEWORK%",
"scopes": [
"team",
"personal",
"groupChat"
],
"needsChannelSelector": false,
"isNotificationOnly": false,
"supportsFiles": true,
"supportsCalling": false,
"supportsVideo": true,
"commandLists": [
{
"scopes": [
"team",
"groupChat"
],
"commands": [
{
"title": "Command 1",
"description": "Description of Command 1"
},
{
"title": "Command 2",
"description": "Description of Command 2"
}
]
},
{
"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%",
"scopes": [
"team"
],
"configurationUrl": "https://contoso.com/teamsconnector/configure"
}
],
"composeExtensions": [
{
"canUpdateConfiguration": true,
"botId": "%MICROSOFT-APP-ID-REGISTERED-WITH-BOT-FRAMEWORK%",
"commands": [
{
"id": "exampleCmd1",
"title": "Example Command",
"type": "query",
"context": [
"compose",
"commandBox"
],
"description": "Command Description; e.g., Search on the web",
"initialRun": true,
"fetchTask": false,
"parameters": [
{
"name": "keyword",
"title": "Search keywords",
"inputType": "choiceset",
"description": "Enter the keywords to search for",
"value": "Initial value for the parameter",
"choices": [
{
"title": "Title of the choice",
"value": "Value of the choice"
}
]
}
]
},
{
"id": "exampleCmd2",
"title": "Example Command 2",
"type": "action",
"context": [
"message"
],
"description": "Command Description; e.g., Add a customer",
"initialRun": true,
"fetchTask": false ,
"parameters": [
{
"name": "custinfo",
"title": "Customer name",
"description": "Enter a customer name",
"inputType": "text"
}
]
},
{
"id": "exampleCmd3",
"title": "Example Command 3",
"type": "action",
"context": [
"compose",
"commandBox",
"message"
],
"description": "Command Description; e.g., Add a customer",
"fetchTask": false,
"taskInfo": {
"title": "Initial dialog title",
"width": "Dialog width",
"height": "Dialog height",
"url": "Initial webview URL"
}
}
],
"messageHandlers": [
{
"type": "link",
"value": {
"domains": [
"mysite.someplace.com",
"othersite.someplace.com"
],
"supportsAnonymizedPayloads": false
}
}
]
}
],
"permissions": [
"identity",
"messageTeamMembers"
],
"devicePermissions": [
"geolocation",
"media",
"notifications",
"midi",
"openExternal"
],
"validDomains": [
"contoso.com",
"mysite.someplace.com",
"othersite.someplace.com"
],
"webApplicationInfo": {
"id": "AAD App ID",
"resource": "Resource URL for acquiring auth token for SSO"
},
"authorization": {
"permissions": {
"resourceSpecific": [
{
"type": "Application",
"name": "ChannelSettings.Read.Group"
},
{
"type": "Delegated",
"name": "ChannelMeetingParticipant.Read.Group"
}
]
}
},
"showLoadingIndicator": false,
"isFullScreen": false,
"activities": {
"activityTypes": [
{
"type": "taskCreated",
"description": "Task created activity",
"templateText": "<team member> created task <taskId> for you"
},
{
"type": "userMention",
"description": "Personal mention activity",
"templateText": "<team member> mentioned you"
}
]
},
"defaultBlockUntilAdminAction": true,
"publisherDocsUrl": "https://website.com/app-info",
"defaultInstallScope": "meetings",
"defaultGroupCapability": {
"meetings": "tab",
"team": "bot",
"groupChat": "bot"
},
"configurableProperties": [
"name",
"shortDescription",
"longDescription",
"smallImageUrl",
"largeImageUrl",
"accentColor",
"developerUrl",
"privacyUrl",
"termsOfUseUrl"
],
"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
}
]
}
}
O esquema define as seguintes propriedades:
$esquema
Opcional, mas recomendado – Cadeia de caracteres
A URL https:// referenciando o Esquema JSON para o manifesto do aplicativo.
manifestVersion
Obrigatório – Cadeia de caracteres
A versão do esquema de manifesto do aplicativo que esse manifesto está usando. Use 1.13
para habilitar o suporte ao aplicativo Teams no Outlook e no aplicativo Microsoft 365; use 1.12
(ou anteriormente) para aplicativos somente do Teams.
versão
Obrigatório – Cadeia de caracteres
A versão de um aplicativo específico. Quando você atualiza algo no manifesto do aplicativo, a versão também deve ser incrementada. Dessa forma, quando o novo manifesto do aplicativo é instalado, ele substitui o existente e o usuário recebe a nova funcionalidade. Quando esse aplicativo foi enviado para a Microsoft Teams Store, o novo manifesto do aplicativo deve ser reenviado e revalidado. Os usuários do aplicativo recebem o novo manifesto do aplicativo atualizado automaticamente poucas horas após a aprovação do manifesto do aplicativo.
Se as solicitações de permissões do aplicativo forem alteradas, os usuários serão solicitados a atualizar e consentir novamente com o aplicativo..
Esta cadeia de caracteres da versão deve seguir o padrão semver (MAJOR.MINOR.PATCH).
Observação
Se o aplicativo incluir um Suplemento do Office, cada segmento da cadeia de caracteres de versão será limitado a um máximo de cinco dígitos. Não há suporte para extensões de cadeia de caracteres de versão de versão de pré-lançamento e metadados do padrão semver.
ID
Obrigatório – ID do aplicativo microsoft
A ID é um identificador exclusivo gerado pela Microsoft para o aplicativo. O formato da ID é GUID. Você tem uma ID se seu bot estiver registrado por meio do Microsoft Bot Framework. Você tem uma ID se o aplicativo web da sua guia já entrar com a Microsoft. Você deve inserir a ID aqui. Caso contrário, você deverá gerar uma nova ID no Portal de Registro de Aplicativos da Microsoft. Use a mesma ID se você adicionar um bot.
A ID armazenada no Teams Administração Center é a ID do Aplicativo Externo e é visível como ExternalID nos rastreamentos.
Observação
Se você estiver enviando uma atualização para seu aplicativo existente no AppSource, a ID no manifesto do aplicativo não deverá ser modificada.
developer
Obrigatório – Objeto
Especifica informações sobre a sua empresa. Para aplicativos enviados à Teams Store, esses valores devem corresponder às informações na listagem da Teams Store. Para obter mais informações, consulte as diretrizes de publicação da Teams Store. O nome do desenvolvedor ajuda a melhorar a descoberta do aplicativo na Teams Store.
Nome | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|
name |
32 caracteres | ✔️ | O nome de exibição do desenvolvedor. |
websiteUrl |
2048 caracteres | ✔️ | A URL https:// para o site do desenvolvedor. Esse link deve levar os usuários à página de destino específica da sua empresa ou do produto. |
privacyUrl |
2048 caracteres | ✔️ | A URL https:// para a política de privacidade do desenvolvedor. |
termsOfUseUrl |
2048 caracteres | ✔️ | A URL https:// para os termos de uso do desenvolvedor. |
mpnId |
10 caracteres | Opcional A ID do Microsoft Partner Network que identifica a organização parceira criadora do aplicativo. |
nome
Obrigatório – Objeto
O nome da sua experiência de aplicativo, exibido aos usuários na experiência do Teams. Para aplicativos enviados ao AppSource, esses valores devem corresponder às informações na entrada do AppSource. Os valores de short
e full
devem ser diferentes. O nome do aplicativo ajuda a melhorar a descoberta do aplicativo na Teams Store.
Nome | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|
short |
30 caracteres | ✔️ | O nome de exibição curto para o aplicativo. Use short a propriedade em que o espaço é limitado, como o cabeçalho do aplicativo. |
full |
100 caracteres | ✔️ | O nome completo do aplicativo, utilizado se o nome completo do aplicativo exceder 30 caracteres. Use full a propriedade em que há mais espaço, como o catálogo de aplicativos ou a página de detalhes do aplicativo. |
Observação
- No manifesto do aplicativo v1.17 ou posterior, a
full
propriedade é necessária e para manifesto de aplicativo v1.16 ou anterior não é necessário. - A
short
propriedade é usada em todas as superfícies da interface do usuário.
description
Obrigatório – Objeto
Descreve o seu aplicativo para os usuários. Para aplicativos enviados ao AppSource, esses valores devem corresponder às informações na entrada do AppSource. A descrição do aplicativo ajuda a melhorar a descoberta do aplicativo na Teams Store.
Certifique-se de que a sua descrição detalhe a sua experiência e ajude os clientes em potencial a entender o que sua experiência faz. Você deve anotar na descrição completa, se uma conta externa for necessária para uso. Os valores de short
e full
devem ser diferentes. Sua breve descrição não pode ser repetida dentro da descrição longa e não deve incluir nenhum outro nome de aplicativo.
Nome | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|
short |
80 caracteres | ✔️ | Uma descrição curta da experiência do seu aplicativo, usada quando o espaço é limitado. |
full |
4000 caracteres | ✔️ | A descrição completa do seu aplicativo. |
localizationInfo
Opcional – Objeto
Permite a especificação de um idioma padrão e fornece ponteiros para mais arquivos de idioma. Para obter mais informações, consulte localização.
Nome | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|
defaultLanguageTag |
✔️ | A marca de idioma das cadeias de caracteres neste arquivo de manifesto de aplicativo de nível superior. |
localizationInfo.additionalLanguages
Uma matriz de objetos especificando mais traduções de idiomas.
Nome | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|
languageTag |
✔️ | A marca de idioma das cadeias de caracteres no arquivo fornecido. | |
file |
2048 caracteres | ✔️ | Um caminho de arquivo relativo para o arquivo .json que contém as cadeias de caracteres traduzidas. |
ícones
Obrigatório – Objeto
Ícones usados no aplicativo Teams. Os arquivos de ícone devem ser incluídos como parte do pacote de upload. Para obter mais informações, consulte Ícones.
Nome | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|
outline |
32 x 32 pixels | ✔️ | Um caminho de arquivo relativo para um ícone de contorno PNG transparente de 32x32. A cor da borda deve ser branca. |
color |
192 x 192 pixels | ✔️ | Um caminho de arquivo relativo para um ícone PNG colorido de 192x192. |
accentColor
Obrigatório – código de cor hex html
Uma cor a ser usada e como plano de fundo para seus ícones de cor.
O valor deve ser um código de cor HTML válido começando com '#', por exemplo #4464ee
. Para obter mais informações, consulte accentColor.
configurbleTabs
Opcional – Matriz
Usado quando sua experiência de aplicativo tem uma experiência de guia de canal de equipe que requer configuração extra antes de ser adicionada. As guias configuráveis são compatíveis apenas nos escopos team
e groupChat
, sendo que você pode configurar as mesmas guias várias vezes. No entanto, você pode defini-lo no manifesto do aplicativo apenas uma vez.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
configurationUrl |
Cadeia de caracteres | 2048 caracteres | ✔️ | A URL https:// a ser usada ao configurar a guia. |
scopes |
Matriz de enumerações | 2 | ✔️ | Atualmente, as guias configuráveis são compatíveis apenas com os escopos team e groupChat . |
canUpdateConfiguration |
Booliano | Um valor que indica se uma instância da configuração da guia pode ser atualizada pelo usuário após a criação. Padrão: true. | ||
meetingSurfaces |
Matriz de enumerações | 2 | O conjunto de meetingSurfaceItem escopos em que uma guia é compatível. Padrão: [sidepanel, stage]. |
|
context |
Matriz de enumerações | 8 | O conjunto de contextItem escopos em que uma guia é compatível. Valor aceito: [personalTab, channelTab, privateChatTab, meetingChatTab, meetingDetailsTab, meetingSidePanel, meetingStage]. |
|
sharePointPreviewImage |
Cadeia de caracteres | 2048 | Um caminho de arquivo relativo para uma imagem de visualização de guia para uso no SharePoint. Tamanho 1024x768. | |
supportedSharePointHosts |
Matriz de enumerações | 2 | Define como a sua guia é disponibilizada no SharePoint. As opções são sharePointFullPage e sharePointWebPart . |
staticTabs
Opcional – Matriz
Define um conjunto de guias que podem ser fixadas por padrão, sem que o usuário as adicione manualmente. As guias estáticas declaradas no escopo personal
são sempre vinculadas à experiência pessoal do aplicativo.
Este item é uma matriz (máximo de 16 elementos) com todos os elementos do tipo object
. Esse bloco é necessário apenas para soluções que fornecem uma solução de guia estática.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
entityId |
String | 64 caracteres | ✔️ | Um identificador exclusivo para a entidade que a guia exibe. |
name |
Cadeia de caracteres | 128 caracteres | O nome de exibição da guia. | |
contentUrl |
Cadeia de caracteres | 2048 caracteres | A URL https:// que aponta para a interface do usuário da entidade a ser exibida na tela do Teams. | |
contentBotId |
Cadeia de caracteres | 128 caracteres | A ID do aplicativo da Microsoft especificada para o bot no portal do Bot Framework. | |
websiteUrl |
Cadeia de caracteres | 2048 caracteres | A URL https:// para apontar se um usuário optar por visualizar em um navegador. | |
searchUrl |
Cadeia de caracteres | 2048 caracteres | A URL https:// para apontar para as consultas de pesquisa de um usuário. | |
scopes |
Matriz de enumerações | 3 | ✔️ | Valores aceitos: team , , personal groupChat |
context |
Matriz de enumerações | 8 | O conjunto de contextItem contextos em que há suporte para uma guia. Valores aceitos: personalTab , , channelTab , privateChatTab , meetingChatTab , meetingDetailsTab , meetingStage , , meetingSidepanel . teamLevelApp Valores padrão: personalTab , , channelTab , privateChatTab , meetingChatTab , meetingDetailsTab . |
Observação
- Os
groupChat
escopos eteam
têm suporte apenas na versão prévia do desenvolvedor público. - O
teamLevelApp
contexto é dedicado apenas para locatários da Educação. - O
searchUrl
recurso não está disponível para desenvolvedores de terceiros. - Se as suas guias exigirem informações dependentes do contexto para exibir conteúdo relevante ou para iniciar um fluxo de autenticação, para obter mais informações, consulte Obter contexto para sua guia do Microsoft Teams.
bots
Opcional – Matriz
Define uma solução de bot, juntamente com informações opcionais, como propriedades de comando padrão.
O item é uma matriz (máximo de apenas um elemento — atualmente, apenas um bot é permitido por aplicativo) com todos os elementos do tipo object
. Esse bloco é necessário apenas para soluções que fornecem uma experiência de bot.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
botId |
Cadeia de caracteres | ✔️ | O ID exclusivo do aplicativo Microsoft para o bot conforme registrado na estrutura do bot. A ID pode ser igual a ID do aplicativo geral. | |
scopes |
Matriz de enumerações | 3 | ✔️ | Especifica se o bot oferece uma experiência no contexto de um canal em um team , em um chat de grupo (groupChat ) ou uma experiência delimitada apenas a um usuário individual (personal ). Essas opções são não exclusivas. |
needsChannelSelector |
Booliano | Descreve se o bot usa ou não uma dica de usuário para adicionar o bot a um canal específico. Padrão: false |
||
isNotificationOnly |
Boolean | Indica se um bot é um bot unidirecional, somente para notificação, em vez de um bot de conversa. Padrão: false |
||
supportsFiles |
Boolean | Indica se o bot é compatível com a capacidade de carregar/baixar arquivos em chat pessoal. Padrão: false |
||
supportsCalling |
Booliano | Um valor que indica onde um bot dá suporte a chamadas de áudio. IMPORTANTE: Esta propriedade é experimental no momento. As propriedades experimentais podem estar incompletas e podem sofrer alterações antes de estarem totalmente disponíveis. A propriedade é fornecida apenas para fins de teste e exploração e não deve ser usada em aplicativos de produção. Padrão: false |
||
supportsVideo |
Booliano | Um valor que indica onde um bot oferece suporte a chamadas com vídeo. IMPORTANTE: Esta propriedade é experimental no momento. As propriedades experimentais podem estar incompletas e podem sofrer alterações antes de estarem totalmente disponíveis. A propriedade é fornecida apenas para fins de teste e exploração e não deve ser usada em aplicativos de produção. Padrão: false |
bots.configuration
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
team.fetchTask |
Booliano | ✔️ | Um valor booliano que indica se ele deve buscar a caixa de diálogo (conhecido como módulo de tarefa no TeamsJS v1.x) dinamicamente. Valor padrão: false |
|
team.taskInfo.title |
String | 64 caracteres | ✔️ | Título inicial da caixa de diálogo. |
team.taskInfo.width |
Cadeia de caracteres | 16 | A largura da caixa de diálogo é um número em pixels ou layout padrão, como large , medium ou small . |
|
team.taskInfo.height |
Cadeia de caracteres | 16 | A altura da caixa de diálogo é um número em pixels ou layout padrão, como large , medium ou small . |
|
team.taskInfo.url |
Cadeia de caracteres | 2048 caracteres | URL inicial da webview. | |
groupChat.fetchTask |
Booliano | ✔️ | Um valor booliano que indica se ele deve buscar a caixa de diálogo dinamicamente. Valor padrão: false |
|
groupChat.taskInfo |
Objeto | Caixa de diálogo a ser iniciada quando a tarefa de busca é definida como false. Valor padrão: false |
||
groupChat.taskInfo.title |
String | 64 caracteres | ✔️ | Título inicial da caixa de diálogo. |
groupChat.taskInfo.width |
Cadeia de caracteres | 16 | A largura da caixa de diálogo é um número em pixels ou layout padrão, como large , medium ou small . |
|
groupChat.taskInfo.height |
Cadeia de caracteres | 16 | A altura da caixa de diálogo é um número em pixels ou layout padrão, como large , medium ou small . |
|
groupChat.taskInfo.url |
Cadeia de caracteres | 2048 caracteres | URL inicial da webview. |
bots.commandLists
Uma lista de comandos que seu bot pode recomendar aos usuários. O objeto é uma matriz (máximo de dois elementos) com todos os elementos do tipo object
; você deve definir uma lista de comandos separada para cada escopo que o seu bot oferece suporte. Para obter mais informações, confira Menus de Bot.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
items.scopes |
Matriz de enumerações | 3 | ✔️ | Especifica o escopo para o qual a lista de comandos é válida. As opção são team , personal e groupChat . |
items.commands |
Matriz de objetos | 10 | ✔️ | Uma matriz de comandos que o bot suporta:title : o nome do comando bot (cadeia, 32)description : uma descrição simples ou exemplo da sintaxe do comando e seu argumento (cadeia, 128) |
Observação
O cliente móvel do Teams não dá suporte ao aplicativo bot quando não há valor na commandLists
propriedade.
bots.commandLists.commands
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
title | Cadeia de caracteres | 32 | ✔️ | O nome do comando do bot. |
description | Cadeia de caracteres | 128 caracteres | ✔️ | Uma descrição de texto simples ou um exemplo da sintaxe do comando e seus argumentos. |
conectores
Opcional – Matriz
O connectors
bloco define um conector cartão para Grupos do Microsoft 365 para o aplicativo.
O objeto é uma matriz (máximo de 2 elementos) com todos os elementos do tipo object
. Este bloco é necessário apenas para soluções que fornecem um Conector.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
configurationUrl |
Cadeia de caracteres | 2048 caracteres | ✔️ | O https:// URL a ser usado ao configurar o conector usando a experiência de configuração embutida. |
scopes |
Matriz de enumerações | 1 | ✔️ | Especifica se o Conector oferece uma experiência no contexto de um canal em um team , ou uma experiência com escopo apenas para um usuário individual (personal ). Atualmente, apenas o escopo team é compatível. |
connectorId |
String | 64 caracteres | ✔️ | Um identificador exclusivo para o Conector que corresponde a sua ID no Painel do Desenvolvedor de Conectores. |
composeExtensions
Opcional – Matriz
Define uma extensão de mensagens para o aplicativo.
Observação
O nome do recurso foi alterado de "extensão de composição" para "extensão de mensagem" em novembro de 2017, mas o nome do manifesto do aplicativo permanece o mesmo para que as extensões existentes continuem funcionando.
O item é uma matriz (máximo de um elemento) com todos os elementos do tipo object
. Este bloco é necessário apenas para soluções que fornecem uma extensão de mensagens.
Nome | Tipo | Tamanho Máximo | Obrigatório | Descrição |
---|---|---|---|---|
botId |
Cadeia de caracteres | A ID exclusiva do aplicativo da Microsoft para o bot que oferece suporte à extensão de mensagens, conforme registrado no Bot Framework. A ID pode ser igual à ID geral do aplicativo. | ||
composeExtensionType |
Cadeia de caracteres | ✔️ | Tipo da extensão de composição. Os valores de enumeração são botBased e apiBased . |
|
authorization |
Objeto | 2 | Informações relacionadas à autorização para a extensão de mensagem baseada em API | |
authorization.authType |
Cadeia de caracteres | Enumeração de possíveis tipos de autorização. Os valores com suporte são none , apiSecretServiceAuth e microsoftEntra . |
||
authorization.microsoftEntraConfiguration |
Objeto | Detalhes de captura de objeto necessários para fazer o fluxo de auth microsoftEntra. Aplicável somente quando o tipo de auth for microsoftEntra . |
||
authorization.microsoftEntraConfiguration.supportsSingleSignOn |
booliano | Um valor que indica se o logon único está configurado para o aplicativo. | ||
authorization.apiSecretServiceAuthConfiguration |
Objeto | Detalhes de captura de objeto necessários para fazer a auth de serviço. Aplicável somente quando o tipo de auth for apiSecretServiceAuth . |
||
authorization.apiSecretServiceAuthConfiguration.apiSecretRegistrationId |
Cadeia de caracteres | 128 caracteres | ID de registro retornada quando o desenvolvedor envia a chave da API por meio do Portal do Desenvolvedor. | |
apiSpecificationFile |
Cadeia de caracteres | 2048 caracteres | Um caminho de arquivo relativo para o arquivo de especificação da API no pacote de manifesto. | |
canUpdateConfiguration |
Booliano | Um valor que indica se a configuração de uma extensão de mensagem pode ser atualizada pelo usuário. Valor padrão: true |
||
commands |
Matriz de objetos | 10 | ✔️ | Matriz de comandos com suporte da extensão de mensagens. |
canUpdateConfiguration |
Booliano | Um valor que indica se a configuração de uma extensão de mensagem pode ser atualizada pelo usuário. Padrão: false. | ||
messageHandlers |
Matriz de objetos | 5 | Uma lista de manipuladores que permitem que aplicativos sejam invocados quando determinadas condições são atendidas. | |
messageHandlers.type |
Cadeia de caracteres | O tipo de manipulador de mensagens. Deve ser "link" . |
||
messageHandlers.value.domains |
Matriz de cadeias de caracteres | 2048 caracteres | Matriz de domínios para os quais o manipulador de mensagens de link pode se registrar. | |
messageHandlers.value.supportsAnonymizedPayloads |
Booliano | Um valor booliano que indica se o manipulador de mensagens de link do aplicativo dá suporte ao fluxo de invocação anônimo. O padrão é false. |
composeExtensions.commands
Sua extensão de mensagens deve declarar um ou mais comandos com no máximo 10 comandos. Cada comando aparece no Microsoft Teams como uma interação potencial do ponto de entrada baseado na interface do usuário.
Cada item de comando é um objeto com a seguinte estrutura:
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição | Copilot para mostrar solicitações de usuário para começar |
---|---|---|---|---|---|
id |
String | 64 caracteres | ✔️ | A ID do comando. | |
type |
String | O tipo do comando. Um de query ou action . Padrão: consulta. |
|||
samplePrompts |
array | 5 | Não | Propriedade usada por Copilot para exibir prompts com suporte pelo plug-in para o usuário. | |
samplePrompts.text |
string | 128 caracteres | ✔️ | Conteúdo do prompt de exemplo. | |
apiResponseRenderingTemplateFile |
Cadeia de caracteres | 2048 caracteres | Um caminho de arquivo relativo para o arquivo de modelo de renderização de resposta de api usado para formatar a resposta JSON da API do desenvolvedor para a resposta do Cartão Adaptável. | ||
context |
Matriz de cadeias de caracteres | 3 caracteres | Define de onde a extensão da mensagem pode ser invocada. Qualquer combinação de compose , commandBox e message . Valores padrão: compose, commandBox |
||
title |
Cadeia de caracteres | 32 caracteres | ✔️ | O nome do comando amigável. | |
description |
Cadeia de caracteres | 128 caracteres | A descrição que aparece para os usuários para indicar a finalidade deste comando. | ||
semanticDescription |
Cadeia de caracteres | 5000 caracteres | Descrição semântica do comando para consumo por Copilot usando llm (modelo de linguagem grande). | ||
initialRun |
Booliano | Um valor booliano indica se o comando é executado inicialmente sem parâmetros. O padrão é false. | |||
fetchTask |
Booliano | Um valor booliano que indica se ele precisa buscar a caixa de diálogo (conhecida como módulo de tarefa no TeamsJS v1.x) dinamicamente. O padrão é false. | |||
taskInfo |
Objeto | Especifique a caixa de diálogo para pré-carregar ao usar um comando de extensão de mensagem. | |||
taskInfo.title |
String | 64 caracteres | Título inicial da caixa de diálogo. | ||
taskInfo.width |
Cadeia de caracteres | Largura da caixa de diálogo - um número em pixels ou layout padrão, como 'grande', 'médio' ou 'pequeno'. | |||
taskInfo.height |
Cadeia de caracteres | Altura da caixa de diálogo - um número em pixels ou layout padrão, como 'grande', 'médio' ou 'pequeno'. | |||
taskInfo.url |
Cadeia de caracteres | URL inicial da webview. | |||
parameters |
Matriz de objeto | 5 itens | A lista de parâmetros que o comando usa. Mínimo: 1; máximo: 5. | ||
parameter.name |
String | 64 caracteres | ✔️ | O nome do parâmetro como ele aparece no cliente. O nome do parâmetro é incluído na solicitação do usuário. | |
parameter.title |
Cadeia de caracteres | 32 caracteres | ✔️ | Título amigável para o parâmetro. | |
parameter.description |
Cadeia de caracteres | 128 caracteres | Cadeia de caracteres amigável que descreve a finalidade desse parâmetro. | ||
parameter.semanticDescription |
Cadeia de caracteres | 2000 caracteres | Descrição semântica do parâmetro para consumo por Copilot usando LLM (modelo de linguagem grande). | ||
parameter.value |
Cadeia de caracteres | 512 caracteres | Valor inicial para o parâmetro. Atualmente, o valor não tem suporte | ||
parameter.inputType |
Cadeia de caracteres | Define o tipo de controle exibido em uma caixa de diálogo parafetchTask: false . O valor de entrada só pode ser um dos text, textarea, number, date, time, toggle, choiceset . |
|||
parameter.choices |
Matriz de objetos | 10 itens | As opções de escolha para choiceset . Use apenas quando parameter.inputType for choiceset . |
||
parameter.choices.title |
Cadeia de caracteres | 128 caracteres | ✔️ | Títulor da escolha. | |
parameter.choices.value |
Cadeia de caracteres | 512 caracteres | ✔️ | O valor da escolha. |
permissões
Opcional – Matriz de cadeias de caracteres
Uma matriz de string
, que especifica quais permissões o aplicativo solicita, que permite que os usuários finais saibam como a extensão funciona. As seguintes opções não são exclusivas:
identity
Requer informações de identidade do usuário.messageTeamMembers
Requer permissão para enviar mensagens diretas aos membros da equipe.
Alterar essas permissões durante a atualização do aplicativo faz com que seus usuários repitam o processo de consentimento depois de executar o aplicativo atualizado. Para saber mais, confira Atualizando seu aplicativo.
Observação
As permissões estão preteridas agora.
devicePermissions
Opcional – Matriz de cadeias de caracteres
Fornece os recursos nativos no dispositivo de um usuário aos quais o seu aplicativo solicita acesso. As opções são:
geolocation
media
notifications
midi
openExternal
validDomains
Opcional, exceto Obrigatório onde indicado.
Uma lista de domínios válidos para sites que o aplicativo espera carregar no cliente do Teams. As listagens de domínio podem incluir curingas, por exemplo, *.example.com
. O domínio válido corresponde exatamente a um segmento do domínio; se você precisar combinar a.b.example.com
, use *.*.example.com
. Se a sua configuração de guias ou interface do usuário de conteúdo navegar para qualquer outro domínio que não seja a configuração de guias, esse domínio deverá ser especificado aqui.
Não inclua os domínios dos provedores de identidade aos quais você deseja oferecer suporte em seu aplicativo. Por exemplo, para autenticar usando uma ID do Google, é necessário redirecionar para accounts.google.com, no entanto, você não deve incluir accounts.google.com no validDomains[]
.
Os aplicativos do Teams que exigem que suas próprias URLs do SharePoint funcionem bem incluem "{teamsitedomain}" em sua lista de domínios válida.
Importante
Não adicione domínios que estão fora do controle, diretamente ou por meio de curingas (). Por exemplo,.yoursite.com é válido, mas *.onmicrosoft.com não é válido, pois não está sob seu controle.
Ao usar curingas, as seguintes regras se aplicam:
- Se um segmento de subdomínio incluir um curinga, ele deve ser o único caractere no segmento.
- Qualquer segmento anterior a um segmento curinga também deve ser um segmento curinga.
Por exemplo, *.*.domain.com é válida, mas foo.*.myteam.domain.com não é válida.
O objeto é uma matriz com todos os elementos do tipo string
. O item máximo do objeto é de 16 e o comprimento máximo é de 2.048 caracteres.
webApplicationInfo
Opcional – Objeto
Forneça sua ID do aplicativo Microsoft Entra e informações do Microsoft Graph para ajudar os usuários a entrar perfeitamente em seu aplicativo. Se o aplicativo estiver registrado em Microsoft Entra ID, você deverá fornecer a ID do aplicativo. Os administradores podem revisar facilmente as permissões e conceder consentimento no centro de administração do Teams.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
id |
Cadeia de caracteres | ✔️ | Microsoft Entra ID do aplicativo. Essa ID deve ser um GUID. | |
resource |
Cadeia de caracteres | 2048 caracteres | URL de recurso do aplicativo para adquirir token de autenticação para SSO. NOTA: Se você não estiver usando o SSO, verifique se você insere um valor de cadeia de caracteres fictício neste campo no manifesto do aplicativo, por exemplo, https://example para evitar uma resposta de erro. |
graphConnector
Opcional – Objeto
Especifique a configuração do conector de gráfico do aplicativo. Se isso estiver presente, webApplicationInfo.id também deve ser especificado.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
notificationUrl |
Cadeia de caracteres | 2048 caracteres | ✔️ | A URL para a qual as notificações do conector do Graph para o aplicativo devem ser enviadas. |
showLoadingIndicator
Opcional – booliano
Indica se deve ou não mostrar o indicador de carregamento quando um aplicativo ou guia está carregando. O padrão é false.
Observação
- Se você selecionar
showLoadingIndicator
como true no manifesto do aplicativo, para carregar a página corretamente, modifique as páginas de conteúdo de suas guias e caixas de diálogo, conforme descrito em Mostrar um documento indicador de carregamento nativo . - Se você não modificar as páginas de conteúdo da guia, o aplicativo de guias não carregará e mostrará o erro
There was a problem reaching this app
.
isFullScreen
Opcional – booliano
Indica se um aplicativo pessoal é renderizado sem uma barra de cabeçalho de guia (significando o modo de tela inteira). O padrão é false.
Observação
isFullScreen
funciona apenas para aplicativos publicados em sua organização. Aplicativos de terceiros carregados e publicados não podem usar essa propriedade (ela é ignorada).O
isFullScreen=true
parâmetro elimina a barra de cabeçalho e o título fornecidos pelo Teams de aplicativos pessoais e caixas de diálogo. No entanto, é recomendável não usar oisFullScreen=true
parâmetro com aplicativos de bot de chat.
activities
Opcional – Objeto
Defina as propriedades que o seu aplicativo usa para postar um feed de atividades do usuário..
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
activityTypes |
Matriz de objetos | 128 itens | Forneça os tipos de atividades que seu aplicativo pode postar no feed de atividades de um usuário. |
activities.activityTypes
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
type |
Cadeia de caracteres | 32 caracteres | ✔️ | O tipo de notificação. Confira a seguir. |
description |
Cadeia de caracteres | 128 caracteres | ✔️ | Uma breve descrição da notificação. Confira a seguir. |
templateText |
Cadeia de caracteres | 128 caracteres | ✔️ | Ex: "{actor} criou a tarefa {taskId} para você" |
{
"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"
}
]
}
}
defaultInstallScope
Opcional – Cadeia de caracteres
Especifica o escopo de instalação definido para este aplicativo por padrão. O escopo definido é a opção exibida no botão quando um usuário tenta adicionar o aplicativo. As opções são:
personal
team
groupChat
meetings
defaultGroupCapability
Opcional – Objeto
Quando um escopo de instalação de grupo é selecionado, ele define o recurso padrão quando o usuário instala o aplicativo. As opções são:
team
groupChat
meetings
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
team |
Cadeia de caracteres | Quando o escopo de instalação selecionado é team , este campo especifica o recurso padrão disponível. Opções: tab , bot ou connector . |
||
groupChat |
Cadeia de caracteres | Quando o escopo de instalação selecionado é groupChat , este campo especifica o recurso padrão disponível. Opções: tab , bot ou connector . |
||
meetings |
Cadeia de caracteres | Quando o escopo de instalação selecionado é meetings , este campo especifica o recurso padrão disponível. Opções: tab , bot ou connector . |
configurableProperties
Opcional – Matriz
O bloco configurableProperties
define as propriedades do aplicativo que os administradores do Teams podem personalizar. Para obter mais informações, consulte habilitar a personalização do aplicativo. O recurso de personalização de aplicativo não tem suporte em aplicativos personalizados ou aplicativos personalizados criados para seus aplicativos LOB (organização).
Observação
Um mínimo de uma propriedade deve ser definido. Você pode definir um máximo de nove propriedades neste bloco.
Você pode definir qualquer uma das seguintes propriedades:
- nome: o nome de exibição do aplicativo.
- shortDescription: a breve descrição do aplicativo.
- longDescription: a longa descrição do aplicativo.
- smallImageUrl: o ícone de contorno do aplicativo.
- largeImageUrl: o ícone de cor do aplicativo.
- accentColor: a cor a ser usada e um plano de fundo para seus ícones de contorno.
- developerUrl: A URL HTTPS do site do desenvolvedor.
- privacyUrl: a URL HTTPS da política de privacidade do desenvolvedor.
- termsOfUseUrl: A URL HTTPS dos termos de uso do desenvolvedor.
supportedChannelTypes
Opcional – Matriz
Habilita seu aplicativo em canais não-padronizados. Se seu aplicativo der suporte a um escopo de equipe e esta propriedade for definida, o Teams habilita seu aplicativo em cada tipo de canal adequadamente. A propriedade SupportedChannelTypes só dá sharedChannels
suporte e privateChannels
.
Observação
- Se seu aplicativo der suporte a um escopo de equipe, ele funciona nos canais padrão independentemente dos valores que são definidos nesta propriedade.
- Seu aplicativo pode levar em conta as propriedades únicas de cada um dos tipos de canal para funcionar corretamente. Para habilitar sua guia para canais privados e compartilhados, confira Recuperar contexto em canais privados e obter contexto em canais compartilhados
defaultBlockUntilAdminAction
Opcional – booliano
Quando a propriedade defaultBlockUntilAdminAction
é definida como true, o aplicativo fica oculto dos usuários por padrão até que o administrador permita. Se definido como true, o aplicativo ficará oculto para todos os locatários e usuários finais. Os administradores de locatários podem ver o aplicativo no centro de administração do Teams e tomar medidas para permitir ou bloquear o aplicativo. O valor padrão é falso. Para obter mais informações sobre o bloco de aplicativos padrão, consulte Bloquear aplicativos por padrão para usuários até que um administrador aprove.
publisherDocsUrl
Opcional – Cadeia de caracteres
Tamanho máximo – 2048 caracteres
O valor do publisherDocsUrl
parâmetro é uma URL HTTPS segura para a página de documentação e informações do aplicativo que os desenvolvedores de aplicativos escolhem fornecer. Os administradores de locatários obtêm documentação sobre o aplicativo nesta URL. O centro de administração do Teams exibe a URL na página de detalhes do aplicativo. A documentação pode incluir as instruções para os administradores facilitarem a adoção do aplicativo e a distribuição de aplicativos. Na documentação do aplicativo, você também pode incluir instruções ou informações sobre o aplicativo que é útil para o administrador de locatários, usuários e outros stakeholders empresariais.
subscriptionOffer
Opcional – Objeto
Especifica a oferta de SaaS associada ao seu aplicativo.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
offerId |
string | 2,048 caracteres | ✔️ | Um identificador exclusivo que inclui a sua ID de editor e ID de oferta, que você pode encontrar no Partner Center. Você deve formatar a cadeia de caracteres como publisherId.offerId . |
meetingExtensionDefinition
Opcional – Objeto
Especifique a definição de extensão da reunião. Para obter mais informações, consulte cenas personalizadas do Modo Juntos no Teams.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
scenes |
matriz de objetos | 5 itens | Cenas suportadas da reunião. | |
supportsStreaming |
Booliano | Um valor que indica se um aplicativo pode transmitir o conteúdo de áudio e vídeo da reunião para um ponto de extremidade de protocolo de reunião em tempo real (RTMP). O valor padrão é falso. | ||
supportsAnonymousGuestUsers |
Booliano | Um valor que indica se um aplicativo dá suporte ao acesso para usuários anônimos. O valor padrão é falso. |
Observação
A supportsAnonymousGuestUsers
propriedade no esquema de manifesto do aplicativo v1.16 tem suporte apenas no novo cliente do Teams.
meetingExtensionDefinition.scenes
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
id |
Cadeia de caracteres | ✔️ | O identificador exclusivo para a cena. Essa ID deve ser um GUID. | |
name |
Cadeia de caracteres | 128 caracteres | ✔️ | O nome da cena. |
file |
Cadeia de caracteres | 2048 caracteres | ✔️ | O caminho do arquivo relativo para o arquivo JSON de metadados das cenas. |
preview |
Cadeia de caracteres | 2048 caracteres | ✔️ | O caminho do arquivo relativo para o ícone de visualização PNG das cenas. |
maxAudience |
Número inteiro | 50 | ✔️ | O número máximo de audiências suportadas na cena. |
seatsReservedForOrganizersOrPresenters |
Número inteiro | 50 | ✔️ | O número de assentos reservados para organizadores ou apresentadores. |
autorização
Opcional – Objeto
Observação
authorization
só há suporte para o manifesto do aplicativo versão 1.12 ou posterior.
Especifique e consolide as informações relacionadas à autorização para o aplicativo.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
permissions |
Objeto | Lista de permissões que o aplicativo precisa para funcionar. |
authorization.permissions
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
resourceSpecific |
Matriz de objetos | 16 itens | Permissões que protegem o acesso a dados no nível da instância do recurso. |
authorization.permissions.resourceSpecific
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
type |
Cadeia de caracteres | ✔️ | O tipo da permissão RSC (consentimento específico do recurso). Opções: Application e Delegated . |
|
name |
Cadeia de caracteres | 128 caracteres | ✔️ | O nome da permissão RSC. Para obter mais informações, confira Permissões de aplicativo RSC e permissões delegadas do RSC |
Permissões de aplicativo RSC
As permissões do aplicativo permitem que o aplicativo acesse dados sem um usuário conectado. Para obter informações sobre permissões de aplicativo, confira Permissões RSC para Microsoft Graph e Microsoft BotSDK.
Permissões delegadas do RSC
As permissões delegadas permitem que o aplicativo acesse dados em nome do usuário conectado.
Permissões delegadas do RSC para uma equipe
Nome Descrição ChannelMeetingParticipant.Read.Group
Permite que o aplicativo leia as informações dos participantes, incluindo nome, função, ID, horários de ingresso e de saída, de reuniões de canal associadas a esta equipe, em nome do usuário conectado. ChannelMeetingIncomingAudio.Detect.Group
Permite que o aplicativo detecte áudio de entrada em reuniões de canal associadas à equipe. ChannelMeetingActiveSpeaker.Read.Group
Permite que o aplicativo leia os participantes que estão enviando áudio para as reuniões do canal associadas à equipe. ChannelMeetingAudioVideo.Stream.Group
Permite que o aplicativo transmita conteúdo de áudio-vídeo de reuniões de canal associadas à equipe. InAppPurchase.Allow.Group
Permite que o aplicativo mostre ofertas de marketplace aos usuários da equipe e conclua suas compras no aplicativo, em nome do usuário conectado. ChannelMeetingStage.Write.Group
Permite que o aplicativo mostre conteúdo no estágio de reunião em reuniões de canal associadas à equipe, em nome do usuário conectado. LiveShareSession.ReadWrite.Group
Permite que o aplicativo crie e sincronize sessões do Live Share para reuniões associadas à equipe e acesse informações relacionadas sobre a lista da reunião, como a função de reunião do membro, em nome do usuário conectado. MeetingParticipantReaction.Read.Group
Permite que o aplicativo leia as reações dos participantes em reuniões de canal associadas à equipe. Permissões delegadas do RSC para chats ou reuniões
Nome Descrição InAppPurchase.Allow.Chat
Permite que o aplicativo mostre ofertas de marketplace aos usuários no chat e em qualquer reunião associada e conclua suas compras no aplicativo, em nome do usuário conectado. MeetingStage.Write.Chat
Permite que o aplicativo mostre conteúdo no estágio de reunião em reuniões associadas ao chat, em nome do usuário conectado. OnlineMeetingParticipant.Read.Chat
Permite que o aplicativo leia informações do participante, incluindo nome, função, id, tempos ingressados e deixados, de reunião associada ao chat, em nome do usuário conectado. OnlineMeetingParticipant.ToggleIncomingAudio.Chat
Permite que o aplicativo alterne o áudio de entrada para os participantes em reuniões associadas ao chat, em nome do usuário conectado. LiveShareSession.ReadWrite.Chat
Permite que o aplicativo crie e sincronize sessões do Live Share para reuniões associadas ao chat e acesse informações relacionadas sobre a lista da reunião, como a função de reunião do membro, em nome do usuário conectado. MeetingParticipantReaction.Read.Chat
Permite que o aplicativo leia as reações dos participantes em reuniões associadas ao chat. OnlineMeetingIncomingAudio.Detect.Chat
Permite que o aplicativo detecte alterações no status de áudio de entrada em reuniões associadas ao chat, em nome do usuário conectado. OnlineMeetingActiveSpeaker.Read.Chat
Permite que o aplicativo leia os participantes que estão enviando áudio para as reuniões associadas ao chat. OnlineMeetingAudioVideo.Stream.Chat
Permite que o aplicativo transmita conteúdo de áudio-vídeo de reuniões associadas ao chat. Permissões delegadas do RSC para usuários
Nome Descrição CameraStream.Read.User
Permite que o aplicativo leia o fluxo de câmera do usuário. InAppPurchase.Allow.User
Permite que o aplicativo mostrar as ofertas do marketplace do usuário e conclua as compras do usuário dentro do aplicativo, em nome do usuário conectado. OutgoingVideoStream.Write.User
Permite que o aplicativo modifique o vídeo de saída do usuário. MicrophoneStream.Read.User
Permite que o aplicativo leia o fluxo de microfone do usuário. MeetingParticipantReaction.Read.User
Permite que o aplicativo leia as reações do usuário durante a participação em uma reunião.
extensions
Opcional – Objeto
A extensions
propriedade especifica suplementos do Outlook em um manifesto de aplicativo e simplifica a distribuição e a aquisição em todo o ecossistema do Microsoft 365. Cada aplicativo dá suporte a apenas uma extensão.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
requirements |
Objeto | Especifica o conjunto de requisitos de cliente ou host para a extensão. | ||
runtimes |
Matriz | Configura o conjunto de runtimes e ações que podem ser usadas por cada ponto de extensão. Para obter mais informações, confira runtimes em Suplementos do Office. | ||
ribbons |
Matriz | Define o ponto de extensão faixas de opções. | ||
autoRunEvents |
Matriz | Define o ponto de extensão de ativação baseado em evento. | ||
alternates |
Matriz | Especifica a relação com soluções alternativas existentes do Microsoft 365. Ele é usado para ocultar ou priorizar suplementos do mesmo editor com funcionalidade sobreposta. | ||
audienceClaimUrl |
Cadeia de caracteres | 2048 caracteres | Especifica a URL da sua extensão e é usada para validar tokens de identidade de usuário do Exchange. Para obter mais informações, confira dentro do token de identidade do Exchange |
Para obter mais informações, consulte Manifesto de Suplementos do Office para Microsoft 365.
extensions.requirements
O extensions.requirements
objeto especifica os escopos, os fatores de formulário e os conjuntos de requisitos da Biblioteca JavaScript do Office que devem ter suporte no cliente do Office para que o suplemento seja instalado. Também há suporte para requisitos nas propriedades filho "ribbon", "runtime", "alternates" e "autoRunEvents" para filtrar seletivamente alguns recursos do suplemento. Para obter mais informações, confira Especificar requisitos de suplemento do Office no manifesto unificado do Microsoft 365.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
requirements.capabilities |
Matriz | Identifica os conjuntos de requisitos. Opções: name (obrigatório), minVersion , maxVersion |
||
requirements.capabilities.name |
Cadeia de caracteres | ✔️ | Identifica o nome do conjunto de requisitos. | |
requirements.capabilities.minVersion |
Cadeia de caracteres | Identifica a versão mínima para o conjunto de requisitos. | ||
requirements.capabilities.maxVersion |
Cadeia de caracteres | Identifica a versão máxima do conjunto de requisitos. | ||
requirements.scopes |
Matriz de enumerações | 1 | Identifica os escopos nos quais o suplemento pode ser executado e define os aplicativos do Microsoft 365 nos quais a extensão pode ser executada. Por exemplo, mail (Outlook). Valor com suporte: mail |
|
requirements.formFactors |
Matriz de enumerações | Identifica os fatores de formulário que dão suporte ao suplemento. Valores com suporte: mobile , desktop |
extensions.runtimes
A extensions.runtimes
matriz configura os conjuntos de runtimes e ações que cada ponto de extensão pode usar.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
id |
String | 64 caracteres | ✔️ | Especifica a ID para runtime. |
type |
Enumeração de cadeia de caracteres | ✔️ | Especifica o tipo de runtime. O valor de enumeração com suporte para runtime baseado no navegador é general . |
|
code |
Objeto | ✔️ | Especifica o local do código para o runtime. Com base em runtime.type , os suplementos podem usar um arquivo JavaScript ou uma página HTML com uma marca inserida script que especifica a URL de um arquivo JavaScript. Ambas as URLs são necessárias em situações em que o runtime.type é incerto. |
|
code.page |
URL | ✔️ | Especifica a URL da página da Web que contém uma marca inserida script , que especifica a URL de um arquivo JavaScript (a ser carregado em um runtime baseado no navegador). |
|
code.script |
URL | Especifica a URL do arquivo JavaScript a ser carregado no runtime somente JavaScript. | ||
lifetime |
Enumeração de cadeia de caracteres | Especifica o tempo de vida do runtime. Runtimes com uma short vida útil não preservam o estado em execuções enquanto runtimes com uma long vida útil fazem. Para obter mais informações, consulte Runtimes em Suplementos do Office. |
||
actions |
Matriz | Especifica o conjunto de ações com suporte pelo runtime. Uma ação está executando uma função JavaScript ou abrindo uma exibição, como um painel de tarefas. | ||
actions.id |
String | 64 caracteres | ✔️ | Especifica a ID da ação, que é passada para o arquivo de código. |
actions.type |
Cadeia de caracteres | ✔️ | Especifica o tipo de ação. O executeFunction tipo executa uma função JavaScript sem esperar que ela seja concluída e o openPage tipo abre uma página em uma determinada exibição. |
|
actions.displayName |
String | 64 caracteres | Especifica o nome de exibição da ação e não é o rótulo de um botão ou um item de menu que invoca a ação (que está configurada com tabs.groups.controls.label ). |
|
actions.pinnable |
Booliano | Especifica se um painel de tarefas tem suporte para fixação, que mantém o painel de tarefas aberto quando o usuário altera a seleção. Valor padrão: false |
||
actions.view |
String | 64 caracteres | Especifica a exibição em que a página deve ser aberta. Ele é usado somente quando actions.type é openPage . |
|
actions.multiselect |
Booliano | Especifica se o usuário final pode selecionar vários itens, como várias mensagens de email, e aplicar a ação a todos eles. | ||
actions.supportsNoItemContext |
Booliano | Permite que os suplementos do painel de tarefas ativem sem o Painel de Leitura habilitado ou uma mensagem selecionada. | ||
requirements |
Objeto | Especifica os escopos, os formFactors e os conjuntos de requisitos da Biblioteca JavaScript do Office que devem ter suporte no cliente do Office para que o runtime seja incluído no suplemento. Para obter mais informações, confira Especificar requisitos de suplemento do Office no manifesto unificado do Microsoft 365. | ||
requirements.capabilities |
Matriz | Identifica os conjuntos de requisitos. Opções: name (obrigatório), minVersion , maxVersion |
||
requirements.capabilities.name |
Cadeia de caracteres | ✔️ | Identifica o nome do conjunto de requisitos. | |
requirements.capabilities.minVersion |
Cadeia de caracteres | Identifica a versão mínima para o conjunto de requisitos. | ||
requirements.capabilities.maxVersion |
Cadeia de caracteres | Identifica a versão máxima do conjunto de requisitos. | ||
requirements.scopes |
Matriz de enumerações | 1 | Identifica os escopos nos quais o suplemento pode ser executado e define os aplicativos do Microsoft 365 nos quais a extensão pode ser executada. Por exemplo, mail (Outlook). Valor com suporte: mail |
|
requirements.formFactors |
Matriz de enumerações | Identifica os fatores de formulário que dão suporte ao suplemento. Valores com suporte: mobile , desktop |
Para usar extensions.runtimes
, confira criar comandos de suplemento, configure o runtime para um painel de tarefas e configure o runtime para o comando de função.
extensions.ribbons
A extensions.ribbons
propriedade fornece a capacidade de adicionar comandos de suplemento (botões e itens de menu) à faixa de opções do aplicativo Microsoft 365. A definição da faixa de opções é selecionada na matriz com base nos requisitos e no primeiro pedido.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
contexts |
Matriz | 7 | Especifica a janela do aplicativo Microsoft 365 na qual a personalização da faixa de opções está disponível para o usuário. Cada item na matriz é um membro de uma matriz de cadeia de caracteres. Valores com suporte: mailRead , , mailCompose , meetingDetailsOrganizer , meetingDetailsAttendee , onlineMeetingDetailsOrganizer , , logEventMeetingDetailsAttendee default |
|
requirements |
Objeto | Especifica os escopos, formFactors e conjuntos de requisitos da Biblioteca JavaScript do Office que devem ter suporte no cliente do Office para que a personalização da faixa de opções seja exibida. Para obter mais informações, confira Especificar requisitos de suplemento do Office no manifesto unificado do Microsoft 365. | ||
requirements.capabilities |
Matriz | Identifica os conjuntos de requisitos. Opções: name (obrigatório), minVersion , maxVersion |
||
requirements.capabilities.name |
Cadeia de caracteres | ✔️ | Identifica o nome do conjunto de requisitos. | |
requirements.capabilities.minVersion |
Cadeia de caracteres | Identifica a versão mínima para o conjunto de requisitos. | ||
requirements.capabilities.maxVersion |
Cadeia de caracteres | Identifica a versão máxima do conjunto de requisitos. | ||
requirements.scopes |
Matriz de enumerações | 1 | Identifica os escopos nos quais o suplemento pode ser executado e define os aplicativos do Microsoft 365 nos quais a extensão pode ser executada. Por exemplo, mail (Outlook). Valor com suporte: mail |
|
requirements.formFactors |
Matriz de enumerações | Identifica os fatores de formulário que dão suporte ao suplemento. Valores com suporte: mobile , desktop |
||
tabs |
Matriz | ✔️ | Configura as guias personalizadas na faixa de opções de aplicativo do Microsoft 365. | |
tabs.id |
String | 64 caracteres | Especifica a ID da guia dentro do aplicativo. | |
tabs.builtinTabId |
String | 64 caracteres | Especifica a ID de uma guia de faixa de opções interna do Office. Os valores possíveis variam de acordo com o aplicativo host do Office. Atualmente, há suporte apenas para suplementos do Outlook e o único valor permitido para o Outlook é "TabDefault". A guia padrão depende de onde o suplemento do Outlook é apresentado, conforme determinado na propriedade "extensions.ribbons.contexts". Na janela main Outlook, ela é a guia Página Inicial, em uma janela de mensagem, é a guia Mensagem e, em uma janela de reunião, é a guia Reunião. | |
tabs.label |
String | 64 caracteres | Especifica o texto exibido para a guia. | |
tabs.position |
Objeto | Configura a posição da guia personalizada em relação a outras guias na faixa de opções. | ||
tabs.position.builtinTabId |
String | 64 caracteres | ✔️ | Especifica a ID da guia interna à qual a guia personalizada deve ser posicionada ao lado. Para obter mais informações, consulte localizar as IDs de controles e grupos de controle. |
tabs.position.align |
Enumeração de cadeia de caracteres | ✔️ | Define o alinhamento da guia personalizada em relação à guia interna especificada. Valores com suporte: after , before |
|
tabs.groups |
Matriz | Define grupos de controles em uma guia de faixa de opções em um dispositivo não móvel. Para dispositivos móveis, confira tabs.customMobileRibbonGroups abaixo. |
||
tabs.groups.id |
String | 64 caracteres | Especifica a ID do grupo de guias no aplicativo. Ele deve ser diferente de qualquer ID de grupo interna no aplicativo Microsoft 365 e em qualquer outro grupo personalizado. | |
tabs.groups.label |
String | 64 caracteres | Especifica o texto exibido para o grupo. | |
tabs.groups.icons |
Matriz | Especifica os ícones exibidos para o grupo. | ||
tabs.groups.icons.size |
Número | ✔️ | Especifica o tamanho do ícone em pixels, enumerado como 16 ,20 ,,24 ,32 ,40 48 ,,64 ,80 . Tamanhos de imagem necessários: 16 , 32 , 80 . |
|
tabs.groups.icons.url |
URL | ✔️ | Especifica a URL absoluta do ícone. | |
tabs.groups.controls |
Matriz | Configura os botões e menus no grupo. | ||
tabs.groups.controls.id |
String | 64 caracteres | ✔️ | Especifica a ID do controle dentro do aplicativo. Ele deve ser diferente de qualquer ID de controle interna no aplicativo Microsoft 365 e qualquer outro controle personalizado. |
tabs.groups.controls.items |
Matriz | Configura os itens para um controle de menu. | ||
tabs.groups.controls.items.id |
Cadeia de caracteres | ✔️ | Especifica a ID dos itens dentro do aplicativo. | |
tabs.groups.controls.items.type |
Enumeração de cadeia de caracteres | ✔️ | Define o tipo de itens de controle. Valores com suporte: menu , button |
|
tabs.groups.controls.items.label |
String | 64 caracteres | ✔️ | Especifica o texto exibido para os itens. |
tabs.groups.controls.items.icons |
Matriz | Configura os ícones para o item personalizado. | ||
tabs.groups.controls.items.icons.size |
Número | ✔️ | Especifica o tamanho do ícone em pixels, enumerado como 16 ,20 ,,24 ,32 ,40 48 ,,64 ,80 . Tamanhos de imagem necessários: 16 , 32 , 80 . |
|
tabs.groups.controls.items.icons.url |
URL | ✔️ | Especifica a URL absoluta do ícone. | |
tabs.groups.controls.items.supertip |
✔️ | Configura uma super dica para o item personalizado. Uma super dica é um recurso de interface do usuário que exibe uma breve caixa de informações de ajuda sobre um controle quando o cursor passa sobre ele. A caixa pode conter várias linhas de texto. | ||
tabs.groups.controls.items.supertip.title |
String | 64 caracteres | ✔️ | Especifica o texto do título da supertipa. |
tabs.groups.controls.items.supertip.description |
Cadeia de caracteres | 128 caracteres | ✔️ | Especifica a descrição da supertipa. |
tabs.groups.controls.items.actionId |
String | 64 caracteres | ✔️ | Especifica a ID da ação que é tomada quando um usuário seleciona o item de controle ou menu. O actionId deve corresponder com runtime.actions.id . |
tabs.groups.controls.items.enabled |
Booliano | Indica se o controle está inicialmente habilitado. Valor padrão: true |
||
tabs.groups.controls.items.overriddenByRibbonApi |
Booliano | Especifica se um grupo, botão, menu ou item de menu oculto em combinações de aplicativo e plataforma que dão suporte à API (Office.ribbon.requestCreateControls) que instala guias contextuais personalizadas na faixa de opções. Valor padrão: false |
||
tabs.groups.controls.type |
Cadeia de caracteres | ✔️ | Define o tipo de controle. Valores com suporte: button , menu |
|
tabs.groups.controls.builtinControlId |
String | 64 caracteres | ✔️ | Especifica a ID de um controle existente do Microsoft 365. Para obter mais informações, consulte localizar as IDs de controles e grupos de controle. |
tabs.groups.controls.label |
String | 64 caracteres | ✔️ | Especifica o texto exibido para o controle. |
tabs.groups.controls.icons |
Matriz | ✔️ | Define os ícones para o controle. Deve haver pelo menos três objetos filho; um com size propriedades de 16 , 32 e 80 pixels. |
|
tabs.groups.controls.icons.size |
Número | ✔️ | Especifica o tamanho do ícone em pixels, enumerado como 16 ,20 ,,24 ,32 ,40 48 ,,64 ,80 . Tamanho da imagem necessário: 16 , , 32 80 |
|
tabs.groups.controls.icons.url |
URL | Especifica a URL absoluta para o ícone. | ||
tabs.groups.controls.supertip |
Objeto | ✔️ | Configura uma super dica para o controle. | |
tabs.groups.controls.supertip.title |
String | 64 caracteres | ✔️ | Especifica o texto do título da supertipa. |
tabs.groups.controls.supertip.description |
Cadeia de caracteres | 128 caracteres | ✔️ | Especifica a descrição da supertipa. |
tabs.groups.controls.actionId |
String | 64 caracteres | Necessário se o tipo de controle for button . Não use se o tipo de controle for menu . Especifica a ID da ação que é tomada quando um usuário seleciona o controle. O actionId deve corresponder à runtime.actions.id propriedade de uma ação no runtimes objeto. |
|
tabs.groups.controls.enabled |
Booliano | Indica se o controle está inicialmente habilitado. Valor padrão: true |
||
tabs.groups.controls.overriddenByRibbonApi |
Booliano | Especifica se um grupo, botão, menu ou item de menu está oculto em combinações de aplicativo e plataforma que dão suporte à API (Office.ribbon.requestCreateControls) que instala guias contextuais personalizadas na faixa de opções. Valor padrão: false |
||
tabs.groups.builtinGroupId |
String | 64 caracteres | Especifica a ID de um grupo interno. Para obter mais informações, consulte localizar as IDs de controles e grupos de controle. | |
tabs.customMobileRibbonGroups |
Matriz | 10 | Define grupos de controles na guia padrão da faixa de opções em um dispositivo móvel. Essa propriedade de matriz só pode estar presente em objetos de guia que têm uma tabs.builtinTabId propriedade definida como "DefaultTab". Para dispositivos não móveis, confira tabs.groups acima. |
|
tabs.customMobileRibbonGroups.id |
Cadeia de caracteres | 250 caracteres | ✔️ | Especifica a ID do grupo. Ele deve ser diferente de qualquer ID de grupo interna no aplicativo Microsoft 365 e em qualquer outro grupo personalizado. |
tabs.customMobileRibbonGroups.label |
Cadeia de caracteres | 32 caracteres | ✔️ | Especifica o rótulo no grupo. |
tabs.customMobileRibbonGroups.controls |
Matriz | 20 | ✔️ | Define os controles no grupo. Há suporte apenas para botões móveis. |
tabs.customMobileRibbonGroups.controls.id |
Cadeia de caracteres | 250 caracteres | ✔️ | Especifica a ID do controle, como "msgReadFunctionButton". |
tabs.customMobileRibbonGroups.controls.type |
Enumeração de cadeia de caracteres | ✔️ | Especifica o tipo de controle. Atualmente, há suporte apenas para "MobileButton". | |
tabs.customMobileRibbonGroups.controls.label |
Cadeia de caracteres | 32 caracteres | ✔️ | Especifica o rótulo no controle. |
tabs.customMobileRibbonGroups.controls.actionId |
String | 64 caracteres | ✔️ | Especifica a ID da ação que é tomada quando um usuário seleciona o controle. O actionId deve corresponder à runtime.actions.id propriedade de uma ação no runtimes objeto. |
tabs.customMobileRibbonGroups.controls.icons |
Matriz | 9 | ✔️ | Especifica os ícones que serão exibidos no controle dependendo das dimensões e da DPI da tela do dispositivo móvel. Deve haver exatamente 9 ícones. |
tabs.customMobileRibbonGroups.controls.icons.size |
Número enumeração | ✔️ | Tamanho em pixels do ícone. Os tamanhos possíveis são 25, 32 e 48. Deve haver exatamente um de cada tamanho para cada valor possível da propriedade dos scale ícones. |
|
tabs.customMobileRibbonGroups.controls.icons.url |
Cadeia de caracteres | 2048 caracteres | ✔️ | A URL completa e absoluta do arquivo de imagem do ícone. |
tabs.customMobileRibbonGroups.controls.icons.scale |
Número enumeração | ✔️ | Especifica a propriedade UIScreen.scale para dispositivos iOS. Os valores possíveis são 1, 2 e 3. Deve haver exatamente um de cada valor para cada valor possível da propriedade dos size ícones. |
Para usar extensions.ribbons
, consulte criar comandos de suplemento, configure a interface do usuário para o comando do painel de tarefas e configure a interface do usuário para o comando de função.
extensions.autoRunEvents
A extensions.autoRunEvents
propriedade define pontos de extensão de ativação baseados em evento.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
events |
Matriz | 20 | ✔️ | Configura o evento que faz com que as ações em um Suplemento do Outlook sejam executadas automaticamente. Por exemplo, confira usar alertas inteligentes e os OnMessageSend eventos e OnAppointmentSend em seus Suplementos do Outlook. |
events.type |
String | 64 caracteres | Especifica o tipo de evento. Para tipos com suporte, consulte eventos com suporte. | |
events.actionId |
String | 64 caracteres | Identifica a ação que é tomada quando o evento é acionado. O actionId deve corresponder com runtime.actions.id . |
|
events.options |
Objeto | Configura como o Outlook responde ao evento. | ||
events.options.sendMode |
Cadeia de caracteres | ✔️ | Especifica as ações a serem executadas durante uma ação de envio de email. Valores com suporte: promptUser , , softBlock . block Para obter mais informações, consulte opções de modo de envio disponíveis. |
|
requirements |
Objeto | Especifica os escopos, formFactors e conjuntos de requisitos da Biblioteca JavaScript do Office que devem ter suporte no cliente do Office para que o código de tratamento de eventos seja executado. Para obter mais informações, confira Especificar requisitos de suplemento do Office no manifesto unificado do Microsoft 365. | ||
requirements.capabilities |
Matriz | Identifica os conjuntos de requisitos. Opções: name (obrigatório), minVersion , maxVersion |
||
requirements.capabilities.name |
Cadeia de caracteres | ✔️ | Identifica o nome do conjunto de requisitos. | |
requirements.capabilities.minVersion |
Cadeia de caracteres | Identifica a versão mínima para o conjunto de requisitos. | ||
requirements.capabilities.maxVersion |
Cadeia de caracteres | Identifica a versão máxima do conjunto de requisitos. | ||
requirements.scopes |
Matriz de enumerações | 1 | Identifica os escopos nos quais o suplemento pode ser executado e define os aplicativos do Microsoft 365 nos quais a extensão pode ser executada. Por exemplo, mail (Outlook). Valor com suporte: mail |
|
requirements.formFactors |
Matriz de enumerações | Identifica os fatores de formulário que dão suporte ao suplemento. Valores com suporte: mobile , desktop |
extensions.alternates
A extensions.alternates
propriedade é usada para ocultar ou priorizar suplementos específicos no mercado quando você publicou vários suplementos com funcionalidade sobreposta.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
prefer |
Objeto | Especifica a compatibilidade retrógrada com um suplemento COM equivalente, suplemento XLL ou ambos. | ||
prefer.comAddin |
Objeto | Especifica um suplemento COM que deve ser usado no lugar do Suplemento Web do Microsoft 365 para Windows. | ||
prefer.comAddin.progId |
String | 64 caracteres | ✔️ | Identifica o tipo de aplicativo no qual a extensão pode ser executada. |
hide |
Objeto | Configura como ocultar outro suplemento que você publicou sempre que o suplemento estiver instalado, para que os usuários não vejam ambos na interface do usuário do Microsoft 365. Por exemplo, use essa propriedade quando você tiver publicado anteriormente um suplemento que usa o manifesto antigo do aplicativo XML e você a substituirá por uma versão que usa o novo manifesto do aplicativo JSON. | ||
hide.storeOfficeAddin |
Objeto | Especifica um Suplemento do Microsoft 365 disponível no Microsoft AppSource. | ||
hide.storeOfficeAddin.officeAddinId |
String | 64 caracteres | ✔️ | Especifica a ID do suplemento no mercado a ser ocultado. O GUID será retirado da propriedade manifesto id do aplicativo se o suplemento no mercado usar o manifesto do aplicativo JSON. O GUID será retirado do <Id> elemento se o suplemento no mercado usar o manifesto do aplicativo XML. |
hide.storeOfficeAddin.assetId |
String | 64 caracteres | ✔️ | Especifica a ID do ativo AppSource do suplemento no mercado a ser ocultado. |
hide.customOfficeAddin |
Objeto | Configura como ocultar um suplemento no mercado que não é distribuído por meio do AppSource. | ||
hide.customOfficeAddin.officeAddinId |
String | 64 caracteres | ✔️ | Especifica a ID do suplemento no mercado a ser ocultado. O GUID será retirado da propriedade manifesto id do aplicativo se o suplemento no mercado usar o manifesto do aplicativo JSON. O GUID será retirado do <Id> elemento se o suplemento no mercado usar o manifesto do aplicativo XML. |
requirements |
Objeto | Especifica os escopos, formFactors e conjuntos de requisitos da Biblioteca JavaScript do Office que devem ter suporte no cliente do Office para que as propriedades "ocultar", "preferir" ou "alternateIcons" entrem em vigor. Para obter mais informações, confira Especificar requisitos de suplemento do Office no manifesto unificado do Microsoft 365. | ||
requirements.capabilities |
Matriz | Identifica os conjuntos de requisitos. Opções: name (obrigatório), minVersion , maxVersion |
||
requirements.capabilities.name |
Cadeia de caracteres | ✔️ | Identifica o nome do conjunto de requisitos. | |
requirements.capabilities.minVersion |
Cadeia de caracteres | Identifica a versão mínima para o conjunto de requisitos. | ||
requirements.capabilities.maxVersion |
Cadeia de caracteres | Identifica a versão máxima do conjunto de requisitos. | ||
requirements.scopes |
Matriz de enumerações | 1 | Identifica os escopos nos quais o suplemento pode ser executado e define os aplicativos do Microsoft 365 nos quais a extensão pode ser executada. Por exemplo, mail (Outlook). Valor com suporte: mail |
|
requirements.formFactors |
Matriz de enumerações | Identifica os fatores de formulário que dão suporte ao suplemento. Valores com suporte: mobile , desktop |
||
alternateIcons |
Objeto | Especifica os ícones main que são usados para representar o suplemento em versões mais antigas do Office. Essa propriedade será necessária para que o suplemento do Office seja instalado no Office no Mac, licenças perpétuas do Office e versões de assinatura do Microsoft 365 do Office no Windows anteriores a 2304 (Build 16320.00000). | ||
alternateIcons.icon |
Objeto | ✔️ | Especifica as propriedades do arquivo de imagem usado para representar o suplemento. | |
alternateIcons.icon.size |
Número enumeração | ✔️ | Essa propriedade é reservada para uso futuro. O valor deve ser 64. | |
alternateIcons.icon.url |
Cadeia de caracteres | 2048 caracteres | ✔️ | Especifica a URL completa e absoluta do arquivo de imagem que é usado para representar o suplemento. A imagem do ícone deve ter 64 x 64 pixels e usar um dos seguintes formatos de arquivo: GIF, JPG, PNG, EXIF, BMP, TIFF. |
alternateIcons.highResolutionIcon |
Objeto | ✔️ | Especifica as propriedades do arquivo de imagem usado para representar o suplemento em telas DPI altas. | |
alternateIcons.highResolutionIcon.size |
Número enumeração | ✔️ | Essa propriedade é reservada para uso futuro. O valor deve ser 64 (não 128). | |
alternateIcons.highResolutionIcon.url |
Cadeia de caracteres | 2048 caracteres | ✔️ | Especifica a URL completa e absoluta do arquivo de imagem que é usado para representar o suplemento em telas DPI altas. A imagem do ícone deve ter 128 x 128 pixels e usar um dos seguintes formatos de arquivo: GIF, JPG, PNG, EXIF, BMP, TIFF. |
dashboardCards
Opcional – Matriz
Define uma lista de cartões que podem ser fixados em um dashboard, como Microsoft Viva Connections, para fornecer uma exibição resumida das informações do aplicativo. Para saber mais sobre como criar cartões para Viva Connections Dashboard, confira Visão geral das extensões de cartão adaptável do Bot Powered.
Este item é uma matriz de dashboardCard
elementos do tipo object
.
dashboardCards.dashboardCard
Define um único dashboard cartão e suas propriedades.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
id |
Cadeia de caracteres | ✔️ | Um identificador exclusivo para este dashboard cartão. A ID deve ser um GUID. | |
displayName |
Cadeia de caracteres | 255 caracteres | ✔️ | Nome de exibição do cartão. |
description |
Cadeia de caracteres | 255 caracteres | ✔️ | Descrição do cartão. |
pickerGroupId |
Cadeia de caracteres | ✔️ | ID do grupo no seletor de cartão. A ID deve ser um GUID. | |
icon |
Objeto | Especifica o ícone do cartão. | ||
contentSource |
Objeto | ✔️ | Especifica a origem do conteúdo do cartão | |
defaultSize |
Cadeia de caracteres | ✔️ | Tamanho de renderização do dashboard cartão. Opções: medium ou large . |
dashboardCards.dashboardCard.icon
Define as propriedades de ícone de um determinado dashboard cartão.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
iconUrl |
Cadeia de caracteres | 2048 caracteres | Local do ícone do cartão, a ser exibido na caixa de ferramentas e na barra de cartão. | |
officeUIFabricIconName |
Cadeia de caracteres | 255 caracteres | Nome amigável do ícone de interface do usuário fluente ou UI Fabric do Office para o cartão. Esse valor será usado se iconUrl não for especificado. |
dashboardCards.dashboardCard.contentSource
Define a fonte de conteúdo de um determinado dashboard cartão.
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
sourceType |
Cadeia de caracteres | Representa a origem do conteúdo de um cartão. Opções: bot . |
||
botConfiguration |
Objeto | A configuração da origem do bot. Necessário se o sourceType estiver definido como bot . |
dashboardCards.dashboardCard.contentSource.botConfiguration
Nome | Tipo | Tamanho máximo | Obrigatório | Descrição |
---|---|---|---|---|
botId |
Cadeia de caracteres | O ID exclusivo do aplicativo Microsoft para o bot conforme registrado na estrutura do bot. A ID deve ser um GUID. |
Create um arquivo de manifesto de aplicativo
Se seu aplicativo não tiver um arquivo de manifesto de aplicativo, você precisará criá-lo.
Para criar um arquivo de manifesto de aplicativo:
- Use o esquema de manifesto do aplicativo de exemplo para criar um arquivo .json.
- Salve-o na raiz da pasta do seu projeto como
manifest.json
.
Aqui está um exemplo do esquema de manifesto do aplicativo para um aplicativo de guia com o SSO habilitado:
Observação
O conteúdo do exemplo de manifesto do aplicativo mostrado aqui é apenas para um aplicativo de guias. Ele usa valores de exemplo para URI de subdomínio. Para obter mais informações, consulte esquema de manifesto de aplicativo de exemplo.
{
"$schema": "https://developer.microsoft.com/json-schemas/teams/v1.11/MicrosoftTeams.schema.json",
"manifestVersion": "1.12",
"version": "1.0.0",
"id": "{new GUID for this Teams app - not the Microsoft Entra App ID}",
"developer": {
"name": "Microsoft",
"websiteUrl": "https://www.microsoft.com",
"privacyUrl": "https://www.microsoft.com/privacy",
"termsOfUseUrl": "https://www.microsoft.com/termsofuse"
},
"name": {
"short": "Teams Auth SSO",
"full": "Teams Auth SSO"
},
"description": {
"short": "Teams Auth SSO app",
"full": "The Teams Auth SSO app"
},
"icons": {
"outline": "outline.png",
"color": "color.png"
},
"accentColor": "#60A18E",
"staticTabs": [
{
"entityId": "auth",
"name": "Auth",
"contentUrl": "https://subdomain.example.com/Home/Index",
"scopes": [ "personal" ]
}
],
"configurableTabs": [
{
"configurationUrl": "https://subdomain.example.com/Home/Configure",
"canUpdateConfiguration": true,
"scopes": [
"team"
]
}
],
"permissions": [ "identity", "messageTeamMembers" ],
"validDomains": [
"{subdomain or ngrok url}"
],
"webApplicationInfo": {
"id": "{Microsoft Entra AppId}",
"resource": "api://subdomain.example.com/{Microsoft Entra AppId}"
}
}
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários