Manifiesto de aplicación de versión preliminar para desarrolladores públicos
Para obtener información sobre cómo habilitar la versión preliminar para desarrolladores, consulte versión preliminar para desarrolladores públicos para Microsoft Teams.
Nota:
Si no usa características de versión preliminar para desarrolladores, incluida la ejecución de pestañas personales y extensiones de mensajes de Teams en outlook y aplicaciones de Microsoft 365, use el manifiesto de aplicación (anteriormente denominado manifiesto de aplicación de Teams) para las características disponibles con carácter general (GA) en su lugar.
El manifiesto de la aplicación describe cómo se integra la aplicación en la plataforma de Microsoft Teams. El manifiesto de la aplicación debe ajustarse al esquema hospedado en https://developer.microsoft.com/json-schemas/teams/vDevPreview/MicrosoftTeams.schema.json
.
Manifiesto de aplicación de ejemplo
{
"$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": "en",
"defaultLanguageFile": "en.json",
"additionalLanguages": [
{
"languageTag": "es",
"file": "es.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%",
"elementRelationshipSet": {
"oneWayDependencies" : [
{
"element" : {
"name" : "composeExtensions",
"id" : "composeExtension-id",
"commandIds": ["exampleCmd1", "exampleCmd2"]
},
"dependsOn" : [
{"name" : "bots", "id" : "bot-id"}
]
}
],
"mutualDependencies" : [
[
{"name" : "bots", "id" : "bot-id"},
{"name" : "staticTabs", "id" : "staticTab-id"},
{"name" : "composeExtensions", "id" : "composeExtension-id"},
{"name" : "configurableTabs", "id": "configurableTab-id"}
]
],
"copilotAgents": {
"declarativeAgents": [
{
"id": "agent1",
"file": "declarativeAgent1.json"
}
]
},
"configurableTabs": [
{
"id": "configurableTab-id",
"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"
],
"requirementSet": {
"hostMustSupportFunctionalities": [
{"name": "dialogUrl"},
{"name": "dialogUrlBot"}
]
}
}
],
"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"
}
]
}
],
"requirementSet": {
"hostMustSupportFunctionalities": [
{"name": "dialogUrl"},
{"name": "dialogUrlBot"}
]
}
}
],
"connectors": [
{
"connectorId": "GUID-FROM-CONNECTOR-DEV-PORTAL%",
"configurationUrl": "https://contoso.com/teamsconnector/configure",
"scopes": [
"team"
]
}
],
"composeExtensions": [
{
"botId": "%MICROSOFT-APP-ID-REGISTERED-WITH-BOT-FRAMEWORK%",
"id": "composeExtension-id",
"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"
]
}
}
]
}
],
"requirementSet": {
"hostMustSupportFunctionalities": [
{"name": "dialogUrl"},
{"name": "dialogUrlBot"}
]
}
}
],
"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
}
]
}
}
El esquema define las siguientes propiedades:
$schema
Opcional (pero recomendado): cadena
Dirección URL de https:// que hace referencia al esquema JSON para el manifiesto de la aplicación.
manifestVersion
Obligatorio : cadena
Versión del esquema de manifiesto de aplicación que usa este manifiesto.
version
Obligatorio : cadena
Versión de la aplicación específica. Si actualizas algo en el manifiesto de la aplicación, la versión también debe incrementarse. De este modo, cuando se instala el nuevo manifiesto de aplicación, sobrescribe el existente y el usuario obtiene la nueva funcionalidad. Si esta aplicación se envió a microsoft Teams Store, el nuevo manifiesto de aplicación debe volver a enviarse y volver a validarse. A continuación, los usuarios de esta aplicación reciben automáticamente el nuevo manifiesto de aplicación actualizado dentro de unas horas, después de su aprobación.
Si cambian los permisos solicitados por la aplicación, se pedirá a los usuarios que actualicen y vuelvan a dar su consentimiento a la aplicación.
La versión de esta cadena debe seguir el estándar de SemVer (MAJOR.MINOR.PATCH).
Nota:
Si la aplicación incluye un complemento de Office, cada segmento de la cadena de versión se limita a un máximo de cinco dígitos. No se admiten las extensiones de cadena de versión preliminar y de metadatos del estándar semver.
id
Obligatorio : identificador de aplicación de Microsoft
El id. es un identificador único generado por Microsoft para la aplicación. El formato del identificador es GUID. Si ha registrado un bot a través de Microsoft Bot Framework o la aplicación web de la pestaña ya inicia sesión con Microsoft, es posible que ya tenga un identificador y que tenga que escribirlo aquí. De lo contrario, debe generar un nuevo identificador en el Portal de registro de aplicaciones de Microsoft (Mis aplicaciones), escribirlo aquí y reutilizarlo cuando agregue un bot.
developer
Requerido : objeto
Especifica información sobre el desarrollador y su negocio. En el caso de las aplicaciones de la Tienda Teams, el valor debe coincidir con los valores que proporcione en el formulario de envío de aplicaciones del Centro de partners.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
name |
Cadena | 32 caracteres | ✔️ | Nombre para mostrar del desarrollador. |
websiteUrl |
Cadena | 2048 caracteres | ✔️ | La dirección URL https:// a la página específica de la aplicación en el sitio web. |
privacyUrl |
Cadena | 2048 caracteres | ✔️ | La dirección URL de https:// a la directiva de privacidad de la aplicación. |
termsOfUseUrl |
Cadena | 2048 caracteres | ✔️ | La dirección URL https:// a los términos de uso de la aplicación. |
mpnId |
Cadena | 10 caracteres | El identificador del Programa de partners en la nube de Microsoft (CCP) (anteriormente conocido como identificador de Microsoft Partner Network (MPN) que identifica la organización asociada que crea la aplicación. Optional | |
contactInfo |
Objeto | Información de contacto del desarrollador de la aplicación. |
developer.contactInfo
Opcional : objeto
La información de contacto que usan los clientes para ponerse en contacto con usted a través del chat o correo electrónico de Teams. Es posible que los clientes necesiten información adicional al evaluar la aplicación o si tienen consultas sobre la aplicación cuando no funciona. Los clientes pueden ponerse en contacto con usted mediante el chat de Teams, por lo que soliciten a los administradores de TI que habiliten las comunicaciones externas en su organización. Para obtener más información, consulte la información de contacto y la aplicación proporcionada por el desarrollador.
Nota:
Solo debe proporcionar una dirección de correo electrónico de contacto.
Se recomienda evaluar las consultas de los clientes de forma oportuna y enrutar las consultas internamente dentro de la organización, por ejemplo, a otras funciones para obtener las respuestas. Ayuda a mejorar la adopción de aplicaciones, genera confianza para los desarrolladores y aumenta los ingresos si monetiza la aplicación.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
defaultsupport |
Object | ✔️ | La información de contacto predeterminada de la aplicación. | |
defaultsupport.userEmailsForChatSupport |
Matriz | 10 | ✔️ | Email dirección para recibir consultas de clientes mediante el chat de Teams. Aunque el manifiesto de la aplicación permite hasta 10 direcciones de correo electrónico, Teams usa solo la primera dirección de correo electrónico para permitir que los administradores de TI se comuniquen con usted. El objeto es una matriz con todos los elementos de la cadena de tipo. La longitud máxima del correo electrónico es de 80 caracteres. |
defaultsupport.emailsForEmailSupport |
Matriz | 1 | ✔️ | Póngase en contacto con el correo electrónico para consultar al cliente (mínimo: 1; máximo: 1). El objeto es una matriz con todos los elementos de la cadena de tipo. La longitud máxima del correo electrónico es de 80 caracteres. |
localizationInfo
Opcional : objeto
Permite la especificación de un idioma predeterminado y punteros a archivos de idioma adicionales. Consulte localización.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
defaultLanguageTag |
Cadena | ✔️ | Etiqueta de idioma para las cadenas de este archivo de manifiesto de aplicación. Por ejemplo: en |
|
defaultLanguageFile |
Cadena | 2048 caracteres | Ruta de acceso de archivo relativa al archivo .json que contiene las cadenas. Si no se especifica, las cadenas se toman directamente del archivo de manifiesto de la aplicación. Se requiere un archivo de idioma predeterminado para los agentes de Copilot que admiten varios idiomas. |
localizationInfo.additionalLanguages
Matriz de objetos con las siguientes propiedades para especificar traducciones de idioma adicionales.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
languageTag |
Cadena | ✔️ | Etiqueta de idioma de las cadenas del archivo proporcionado. Por ejemplo: es |
|
file |
Cadena | 2048 caracteres | ✔️ | Ruta de acceso de archivo relativa al archivo .json que contiene las cadenas traducidas. |
name
Requerido : objeto
El nombre de la experiencia de la aplicación, que se muestra a los usuarios en la experiencia de Teams. Para las aplicaciones enviadas a AppSource, estos valores deben coincidir con la información de la entrada de AppSource. Los valores de short
y full
deben ser diferentes.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
short |
Cadena | 30 caracteres | ✔️ | El nombre corto para mostrar de la aplicación. |
full |
Cadena | 100 caracteres | ✔️ | Nombre completo de la aplicación. Se usa si el nombre completo de la aplicación supera los 30 caracteres. |
abbreviated |
Cadena | 15 caracteres | Nombre abreviado de la aplicación; se usa como nombre para mostrar en la barra de aplicaciones del lado izquierdo de la interfaz de usuario. Si no se especifica, short el nombre se usa en la barra de aplicaciones. |
description
Requerido : objeto
Describe la aplicación a los usuarios. Para las aplicaciones enviadas a AppSource, estos valores deben coincidir con la información de la entrada de AppSource.
Asegúrese de que la descripción describe su experiencia y ayuda a los clientes potenciales a comprender lo que hace su experiencia. Debe anotar en la descripción completa si se requiere una cuenta externa para su uso. Los valores de short
y full
deben ser diferentes. La descripción breve no se puede repetir dentro de la descripción larga y no debe incluir ningún otro nombre de la aplicación.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
short |
Cadena | 80 caracteres | ✔️ | Una breve descripción de la experiencia de la aplicación, que se usa cuando el espacio es limitado. |
full |
Cadena | 4000 caracteres | ✔️ | La descripción completa de la aplicación. |
iconos
Requerido : objeto
Iconos usados en la aplicación Teams. Los archivos de icono deben incluirse como parte del paquete de carga.
Nombre | Tamaño máximo | Necesario | Descripción |
---|---|---|---|
outline |
2048 caracteres | ✔️ | Ruta de acceso de archivo relativa a un icono de esquema PNG transparente de 32x32. El color del borde debe ser blanco. |
color |
2048 caracteres | ✔️ | Ruta de acceso de archivo relativa a un icono PNG 192x192 de color completo. |
color32x32 |
Carácter 2048 | Una ruta de acceso de archivo relativa a un icono PNG de color completo de 32 x 32 con fondo transparente. Se usa cuando la aplicación está anclada en outlook y en la aplicación de Microsoft 365. |
accentColor
Obligatorio : cadena
Color que se usará con y como fondo para los iconos de esquema.
El valor debe ser un código de color HTML válido que empiece por "#", como por ejemplo #4464ee
.
elementRelationshipSet
Opcional : objeto
Describe las relaciones entre las funcionalidades de aplicación individuales, como staticTabs
, configurableTabs
, composeExtensions
y bots
. Se usa para especificar dependencias en tiempo de ejecución para asegurarse de que la aplicación solo se inicia en los hosts de Microsoft 365 aplicables, como Teams, Outlook y la aplicación Microsoft 365 (Office). Para obtener más información, consulte cómo especificar los requisitos en tiempo de ejecución en el manifiesto de la aplicación.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
oneWayDependencies |
Matriz | Define una o varias relaciones de dependencia unidireccionales entre los componentes de la aplicación (cada una representada por un oneWayDependency objeto con un dependienteelement y un dependsOn element ). |
||
mutualDependencies |
Matriz | Define una o varias relaciones de dependencia mutua entre las funcionalidades de la aplicación (cada una representada por una mutualDependency matriz de element objetos). |
elemento
Opcional : objeto
Describe una funcionalidad de aplicación (element
) en .elementRelationshipSet
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
name |
Enumeración de cadena | ✔️ | El tipo de funcionalidad de la aplicación. Valores admitidos: bots , staticTabs , , composeExtensions . configurableTabs |
|
id |
Cadena | ✔️ | Si hay varias instancias de un bot, una pestaña o una extensión de mensaje, esta propiedad define una instancia específica de la funcionalidad. Se asigna a botId para bots, entityId para pestañas estáticas y id para pestañas configurables y extensiones de mensaje. |
|
commandIds |
Matriz de cadenas | Lista de uno o varios comandos de extensión de mensaje que dependen de la funcionalidad especificada dependsOn . Use solo para extensiones de mensaje. |
elementRelationshipSet.oneWayDependency
Describe la dependencia unidireccional de una funcionalidad de aplicación (X) a otra (Y). Si un host en tiempo de ejecución de Microsoft 365 no admite una funcionalidad necesaria (Y), la funcionalidad dependiente (X) no se cargará ni se mostrará al usuario.
Opcional : objeto
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
element |
Object | ✔️ | Representa una funcionalidad de aplicación individual (representada por element ) que tiene una dependencia de tiempo de ejecución unidireccional en otra funcionalidad que se está cargando. |
|
dependsOn |
Matriz | ✔️ | Define una o varias funcionalidades de aplicación (cada una representada por element ) necesarias para que se cargue el especificado element . |
elementRelationshipSet.mutualDependencies
Describe un conjunto de dependencias mutuas entre dos o más funcionalidades de la aplicación. Un host en tiempo de ejecución de Microsoft 365 debe admitir todas las funcionalidades necesarias para que cualquiera de esas funcionalidades esté disponible para los usuarios de ese host.
Opcional : matriz de matrices (cada una de ellas contiene dos o más element
objetos)
copilotAgents
Opcional : objeto
Define uno o varios agentes para Microsoft 365 Copilot (anteriormente conocido como copilotExtensions
).
Los agentes declarativos son personalizaciones de Microsoft 365 Copilot que se ejecutan en sus mismos modelos de orquestador y base (anteriormente conocidos como declarativeCopilots
).
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
declarativeAgents |
Matriz de objetos | 1 | ✔️ | Matriz de objetos que definen cada uno un agente declarativo. |
declarativeAgents
Representa una personalización de Microsoft 365 Copilot, tal como se define en su archivo de manifiesto.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
id |
Cadena | ✔️ | Identificador único del agente. Cuando se usa Microsoft Copilot Studio para compilar agentes, se genera automáticamente. De lo contrario, asigne manualmente el valor según sus propias convenciones o preferencias. | |
file |
Cadena | ✔️ | Ruta de acceso relativa dentro del paquete de la aplicación al archivo de manifiesto del agente declarativo . |
configurableTabs
Opcional : matriz
Se usa cuando la experiencia de la aplicación tiene una experiencia de pestaña de canal de equipo que requiere una configuración adicional antes de agregarla. Las pestañas configurables solo se admiten en el ámbito de teams y solo se admite una pestaña por aplicación.
El objeto es una matriz con todos los elementos del tipo object
. Este bloque solo es necesario para las soluciones que proporcionan una solución de pestaña de canal configurable.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
id |
Cadena | Identificador único para la pestaña configurable. Se usa al definir dependencias de funcionalidad de aplicación unidireccionales y mutuas en elementRelationshipSet. | ||
configurationUrl |
Cadena | 2048 caracteres | ✔️ | Dirección URL de https:// que se va a usar al configurar la pestaña. |
canUpdateConfiguration |
Booleano | Valor que indica si el usuario puede actualizar una instancia de la configuración de la pestaña tras su creación. Valor predeterminado: true |
||
scopes |
Matriz de enumeración | 2 | ✔️ | Las pestañas configurables solo admiten los team ámbitos y groupChat . |
context |
Matriz de enumeración | 8 | Cojunto de ámbitos contextItem donde se admite una pestaña. Valores predeterminados: channelTab , privateChatTab , meetingChatTab , meetingDetailsTab , meetingSidePanel , , meetingStage personalTab . |
|
sharePointPreviewImage |
Cadena | 2048 caracteres | Una ruta de acceso de archivo relativa a una imagen de vista previa de pestaña para su uso en SharePoint. Tamaño 1024x768. | |
supportedSharePointHosts |
Matriz de enumeración | 2 | Define cómo está disponible la pestaña en SharePoint. Las opciones son sharePointFullPage , sharePointWebPart |
|
meetingSurfaces |
Matriz de enumeración | 2 | Conjunto de meetingSurfaceItem ámbitos al que pertenece una pestaña. Valores predeterminados: sidePanel , stage |
|
supportedPlatform |
Matriz de enumeración | 3 | Conjunto de supportedPlatform ámbitos al que pertenece una pestaña. Valores predeterminados: desktop , , mobile teamsMeetingDevices |
staticTabs
Opcional : matriz
Define un conjunto de pestañas que se pueden anclar de forma predeterminada, sin que el usuario las agregue manualmente. Las pestañas estáticas declaradas en el ámbito personal
siempre se anclan a la experiencia personal de la aplicación. Sin embargo, las pestañas ancladas se pueden reordenar agregando los detalles de la pestaña en el mismo orden deseado. Para obtener más información, vea reordenar las pestañas personales estáticas.
Esta propiedad también permite establecer la funcionalidad de aterrizaje predeterminada para una aplicación que admite las funcionalidades de tabulación y bot en el ámbito personal. Para obtener más información, consulte Configuración de la funcionalidad de aterrizaje predeterminada.
Representar pestañas con tarjetas adaptables especificando contentBotId
en lugar de contentUrl
en el bloque staticTabs.
El objeto es una matriz (con un máximo de 16 elementos) y todos los elementos de tipo object
. Este bloque solo es necesario para las soluciones que proporcionan una solución de pestaña estática.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
entityId |
String | 64 caracteres | ✔️ | Un identificador único de la entidad que la pestaña muestra. |
name |
Cadena | 128 caracteres | Nombre para mostrar de la pestaña. | |
contentUrl |
Cadena | 2048 caracteres | Dirección URL de https:// que apunta a la interfaz de usuario de la entidad que se mostrará en el lienzo de Teams. | |
contentBotId |
Cadena | El identificador de la aplicación Microsoft Teams especificado para el bot en el portal de Bot Framework. | ||
websiteUrl |
Cadena | 2048 caracteres | La dirección URL https:// que se va a apuntar a si un usuario opta por ver en un explorador. | |
scopes |
Matriz de enumeración | 3 | ✔️ | Las pestañas estáticas admiten los personal ámbitos , team y groupChat , lo que significa que se pueden aprovisionar como parte de la experiencia personal, de chat grupal y de reuniones de canal. |
searchUrl |
Cadena | 2048 caracteres | Dirección URL https:// para dirigir las consultas de búsqueda de un usuario. | |
context |
Matriz de enumeración | 8 | Conjunto de contextItem ámbitos al que pertenece una pestaña. Valores predeterminados: , , , privateChatTab meetingChatTab , meetingDetailsTab , , meetingSidePanel , meetingStage channelTab personalTab teamLevelApp |
|
supportedPlatform |
Matriz de enumeración | 3 | Conjunto de supportedPlatform ámbitos al que pertenece una pestaña. Valores predeterminados: desktop , , mobile teamsMeetingDevices |
|
requirementSet |
Objeto | Requisitos en tiempo de ejecución para que la pestaña funcione correctamente en la aplicación host de Microsoft 365. Si el host en tiempo de ejecución no admite uno o varios de los requisitos, el host no cargará la pestaña. |
staticTabs.requirementSet
Opcional : objeto
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
requirementSet.hostMustSupportFunctionalities |
Matriz de objetos | ✔️ | Especifica una o varias funcionalidades en tiempo de ejecución que la pestaña requiere para funcionar correctamente. Valores admitidos: dialogUrl , dialogUrlBot , dialogAdaptiveCard , dialogAdaptiveCardBot . Para obtener más información, consulte cómo especificar los requisitos en tiempo de ejecución en el manifiesto de la aplicación. |
bots
Opcional : matriz
Define una solución de bot, junto con información opcional, como las propiedades de comando predeterminadas.
El objeto es una matriz (máximo de solo 1 elemento, solo se permite un bot por aplicación) con todos los elementos del tipo object
. Este bloque solo es necesario para las soluciones que proporcionan una experiencia de bot.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
botId |
Cadena | ✔️ | El ID. de aplicación de Microsoft único para el bot, registrado con Bot Framework. El id. puede ser el mismo que el id. general de la aplicación. | |
needsChannelSelector |
Booleano | Describe si el bot usa una sugerencia de usuario para agregar el bot a un canal específico. Valor predeterminado: false |
||
isNotificationOnly |
Booleano | Indica si un bot es un bot unidireccional de solo notificación o un bot de conversación. Valor predeterminado: false |
||
supportsFiles |
Booleano | Indica si el bot es compatible con la capacidad para cargar y descargar archivos en chat personal. Valor predeterminado: false |
||
scopes |
Matriz de enumeración | 3 | ✔️ | Especifica si el bot ofrece una experiencia en el contexto de un canal en un team , en un chat de grupo (groupChat ) o una experiencia específica para un solo usuario (personal ). Estas opciones no son exclusivas. |
supportsCalling |
Booleano | Valor que indica dónde admite llamadas de audio un bot.
IMPORTANTE: Esta propiedad es experimental. Las propiedades experimentales pueden estar incompletas y pueden experimentar cambios antes de que estén totalmente disponibles. La propiedad se proporciona solo con fines de prueba y exploración y no se debe usar en aplicaciones de producción. Valor predeterminado: false |
||
supportsVideo |
Booleano | Valor que indica dónde admite llamadas de vídeo un bot.
IMPORTANTE: Esta propiedad es experimental. Las propiedades experimentales pueden estar incompletas y pueden experimentar cambios antes de que estén totalmente disponibles. La propiedad se proporciona solo con fines de prueba y exploración y no se debe usar en aplicaciones de producción. Valor predeterminado: false |
||
requiresSecurityEnabledGroup |
Booleano | Valor que indica si el grupo de Office del equipo debe estar habilitado para la seguridad. Valor predeterminado: false |
||
requirementSet |
Objeto | Requisitos en tiempo de ejecución para que el bot funcione correctamente en la aplicación host de Microsoft 365. Si el host en tiempo de ejecución no admite uno o varios de los requisitos, el host no cargará el bot. |
bots.configuration
Opcional : objeto
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
team.fetchTask |
Booleano | ✔️ | Valor booleano que indica si debe capturar el cuadro de diálogo (denominado módulo de tareas en TeamsJS v1.x) dinámicamente. Valor predeterminado: false |
|
team.taskInfo |
Objeto | ✔️ | Cuadro de diálogo que se va a precargar cuando se usa un bot. | |
team.taskInfo.title |
String | 64 caracteres | ✔️ | Título del cuadro de diálogo inicial. |
team.taskInfo.width |
Cadena | 16 caracteres | El ancho del cuadro de diálogo es un número en píxeles o un diseño predeterminado, como large , medium o small . |
|
team.taskInfo.height |
Cadena | 16 caracteres | El alto del cuadro de diálogo es un número en píxeles o un diseño predeterminado, como large , medium o small . |
|
team.taskInfo.url |
Cadena | 2048 caracteres | Dirección URL de la vista web inicial. | |
groupChat.fetchTask |
Booleano | ✔️ | Valor booleano que indica si debe capturar el cuadro de diálogo dinámicamente. Valor predeterminado: false |
|
groupChat.taskInfo |
Objeto | Cuadro de diálogo que se iniciará cuando la tarea de captura se establezca en false. Valor predeterminado: false |
||
groupChat.taskInfo.title |
String | 64 caracteres | ✔️ | Título del cuadro de diálogo inicial. |
groupChat.taskInfo.width |
Cadena | 16 caracteres | El ancho del cuadro de diálogo es un número en píxeles o un diseño predeterminado, como large , medium o small . |
|
groupChat.taskInfo.height |
Cadena | 16 caracteres | El alto del cuadro de diálogo es un número en píxeles o un diseño predeterminado, como large , medium o small . |
|
groupChat.taskInfo.url |
Cadena | 2048 caracteres | Dirección URL de la vista web inicial. |
bots.commandLists
Opcional : matriz
Lista opcional de comandos que el bot puede recomendar a los usuarios. El objeto es una matriz (un máximo de 3 elementos) con todos los elementos de tipo object
; debe definir una lista de comandos independiente para cada ámbito que admita el bot. Para obtener más información, consulte Menús de bot.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
scopes |
Matriz de enumeración | 3 | ✔️ | Especifica el ámbito para el que la lista de comandos es válida. Las opciones son team , personal y groupChat . |
commands |
Matriz de objetos | 10 | ✔️ | Matriz de comandos que admite el bot. |
bots.commandLists.commands
Requerido : matriz
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
title |
Cadena | 32 caracteres | ✔️ | Nombre del comando del bot. |
description |
Cadena | 128 caracteres | ✔️ | Una descripción del texto o un ejemplo sencillos de la sintaxis del comando y sus argumentos. |
bots.requirementSet
Opcional : objeto
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
requirementSet.hostMustSupportFunctionalities |
Matriz de objetos | ✔️ | Especifica una o varias funcionalidades en tiempo de ejecución que el bot requiere para funcionar correctamente. Valores admitidos: dialogUrl , dialogUrlBot , dialogAdaptiveCard , dialogAdaptiveCardBot . Para obtener más información, consulte cómo especificar los requisitos en tiempo de ejecución en el manifiesto de la aplicación. |
conectores
Opcional : matriz
El connectors
bloque define un conector para Grupos de Microsoft 365 para la aplicación.
El objeto es una matriz (con un máximo de 1 elemento) y todos los elementos de tipo object
. Este bloque solo es necesario para las soluciones que proporcionan un conector. Solo se admite un conector por aplicación.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
configurationUrl |
Cadena | 2048 caracteres | La dirección URL de https:// que se va a usar al configurar el conector mediante la experiencia de configuración insertada. | |
connectorId |
String | 64 caracteres | ✔️ | Un identificador único del conector que coincide con su identificador en el Panel de desarrolladores de conectores. |
scopes |
Matriz de enumeración | 1 | ✔️ | Especifica si el conector ofrece una experiencia en el contexto de un canal en un team o una experiencia específica para un solo usuario (personal ). Solo se admite el team ámbito. |
composeExtensions
Opcional : matriz
Define una extensión de mensajería para la aplicación.
Nota:
El nombre de la característica se cambió de "extensión de redacción" a "extensión de mensaje" en noviembre de 2017, pero el nombre del manifiesto de la aplicación sigue siendo el mismo para que las extensiones existentes sigan funcionando.
El objeto es una matriz (con un máximo de 1 elemento) y todos los elementos de tipo object
. Este bloque solo es necesario para las soluciones que proporcionan una extensión de mensajería.
Nombre | Tipo | Tamaño máximo | Obligatorio | Descripción |
---|---|---|---|---|
id |
Cadena | Identificador único de la extensión de mensaje. Se usa al definir dependencias de funcionalidad de aplicación unidireccionales y mutuas en elementRelationshipSet. | ||
botId |
Cadena | El id. único de la aplicación de Microsoft para el bot que respalda la extensión de mensajería, tal como está registrado con el Bot Framework. El id. puede ser el mismo que el id. general de la aplicación. | ||
composeExtensionType |
Cadena | Tipo de la extensión de mensaje. Los valores de enumeración son botBased y apiBased . |
||
authorization |
Objeto | 2 | Información relacionada con la autorización para la extensión de mensaje basada en API | |
authorization.authType |
Cadena | Enumeración de posibles tipos de autorización. Los valores admitidos son none , apiSecretServiceAuth y microsoftEntra . |
||
authorization.microsoftEntraConfiguration |
Objeto | Detalles de captura de objetos necesarios para realizar el flujo de autenticación de microsoftEntra. Solo se aplica cuando el tipo de autenticación es microsoftEntra . |
||
authorization.microsoftEntraConfiguration.supportsSingleSignOn |
Booleano | Valor que indica si el inicio de sesión único está configurado para la aplicación. | ||
authorization.apiSecretServiceAuthConfiguration |
Objeto | Detalles de captura de objetos necesarios para realizar la autenticación del servicio. Solo se aplica cuando el tipo de autenticación es apiSecretServiceAuth . |
||
authorization.apiSecretServiceAuthConfiguration.apiSecretRegistrationId |
Cadena | 128 caracteres | Id. de registro devuelto cuando el desarrollador envía la clave de API a través del Portal para desarrolladores. | |
apiSpecificationFile |
Cadena | 2048 caracteres | Ruta de acceso de archivo relativa al archivo de especificación de api en el paquete de manifiesto. | |
canUpdateConfiguration |
Booleano | Valor que indica si el usuario puede actualizar la configuración de una extensión de mensaje. Valor predeterminado: true |
||
commands |
Matriz de objetos | 10 | Matriz de comandos que admite la extensión de mensajería. | |
messageHandlers |
Matriz de objetos | 5 | Una lista de controladores que permiten invocar aplicaciones cuando se cumplen determinadas condiciones. Los dominios también deben aparecer en validDomains . |
|
messageHandlers.type |
Cadena | Tipo de controlador de mensajes. Debe ser link . |
||
messageHandlers.value.domains |
Matriz de cadenas | 2048 caracteres | Matriz de dominios para los que se puede registrar el controlador de mensajes de vínculo. | |
messageHandlers.supportsAnonymizedPayloads |
Booleano | Valor booleano que indica si el controlador de mensajes de vínculo de la aplicación admite el flujo de invocación anónimo. Valor predeterminado: false Para habilitar la instalación cero para la desurling de vínculos, el valor debe establecerse en true . Nota: La propiedad supportAnonymousAccess se reemplaza por supportsAnonymizedPayloads . |
||
type |
Tipo de la extensión de mensaje. Los valores admitidos son apiBased o botBased . |
|||
requirementSet |
Objeto | Requisitos en tiempo de ejecución para que la extensión de mensaje funcione correctamente en la aplicación host de Microsoft 365. Si el host en tiempo de ejecución no admite uno o varios de los requisitos, el host no cargará la extensión de mensaje. |
composeExtensions.commands
La extensión de mensaje debe declarar uno o varios comandos. Cada comando aparece en Teams como una posible interacción desde el punto de entrada basado en la interfaz de usuario. Hay un máximo de 10 comandos.
Cada elemento de comando es un objeto con la estructura siguiente:
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
id |
String | 64 caracteres | ✔️ | Id. para el comando. |
type |
String | 64 caracteres | Tipo de comando. Uno de query o action . Predeterminado: query |
|
samplePrompts |
Matriz | 5 | Propiedad usada por Microsoft 365 Copilot para mostrar al usuario los mensajes admitidos por el complemento. Para Microsoft 365 Copilot escenarios, esta propiedad es necesaria para pasar la validación de la aplicación para el envío de la tienda. | |
samplePrompts.text |
string | 128 caracteres | ✔️ | Contenido del símbolo del sistema de ejemplo. |
apiResponseRenderingTemplateFile |
Cadena | 2048 caracteres | Ruta de acceso de archivo relativa para el archivo de plantilla de representación de respuesta de api que se usa para dar formato a la respuesta JSON de la API del desarrollador a la respuesta de tarjeta adaptable. | |
context |
Matriz de cadenas | 3 caracteres | Define desde dónde se puede invocar la extensión de mensaje. Cualquier combinación de compose ,commandBox ,message . Valores predeterminados: compose, commandBox |
|
title |
Cadena | 32 caracteres | ✔️ | Nombre del comando fácil de usar. |
description |
Cadena | 128 caracteres | Descripción que aparece a los usuarios para indicar el propósito de este comando. | |
semanticDescription |
Cadena | 5000 caracteres | Descripción semántica del comando para su consumo Microsoft 365 Copilot mediante modelos de lenguaje grande (LLM). | |
initialRun |
Booleano | Valor booleano que indica si el comando se ejecuta inicialmente sin parámetros. Valor predeterminado: false |
||
fetchTask |
Booleano | Valor booleano que indica si debe capturar el cuadro de diálogo dinámicamente. Valor predeterminado: false |
||
taskInfo |
Objeto | Especifique el cuadro de diálogo que se va a precargar al usar un comando de extensión de mensaje. | ||
taskInfo.title |
String | 64 caracteres | Título del cuadro de diálogo inicial. | |
taskInfo.width |
Cadena | 16 caracteres | Ancho del cuadro de diálogo: un número en píxeles o un diseño predeterminado como large , medium o small . |
|
taskInfo.height |
Cadena | 16 caracteres | Alto del cuadro de diálogo: un número en píxeles o un diseño predeterminado como large , medium o small . |
|
taskInfo.url |
Cadena | 2048 caracteres | Dirección URL de la vista web inicial. | |
parameters |
Matriz de objetos | 5 | Lista de parámetros que toma el comando. | |
parameters.name |
String | 64 caracteres | ✔️ | Nombre del parámetro tal como aparece en el cliente. Esto se incluye en la solicitud del usuario.
Para la extensión de mensaje basada en API, el nombre debe asignarse a en parameters.name la descripción de OpenAPI. Si hace referencia a una propiedad en el esquema del cuerpo de la solicitud, el nombre debe asignarse a properties.name los parámetros de consulta o . |
parameters.title |
Cadena | 32 caracteres | ✔️ | Título fácil de usar para el parámetro. |
parameters.description |
Cadena | 128 caracteres | Cadena fácil de usar que describe el propósito de este parámetro. | |
parameters.semanticDescription |
Cadena | 2000 caracteres | Descripción semántica del parámetro para su consumo por parte de los modelos de lenguaje grande (LLM). | |
parameters.inputType |
Cadena | Define el tipo de control que se muestra en un cuadro de diálogo para fetchTask: false . El valor de entrada solo puede ser uno de text , textarea , number , date , time , , toggle , choiceset . Valor predeterminado: text |
||
parameters.value |
Cadena | 512 caracteres | Valor inicial del parámetro. | |
parameters.choices |
Matriz de objetos | 10 | Las opciones de elección para el choiceset . Use solo cuando parameters.inputType sea choiceset . |
|
parameters.choices.title |
Cadena | 128 caracteres | ✔️ | Título de la elección. |
parameters.choices.value |
Cadena | 512 caracteres | ✔️ | Valor de la elección. |
composeExtensions.requirementSet
Opcional : objeto
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
requirementSet.hostMustSupportFunctionalities |
Matriz de objetos | ✔️ | Especifica una o varias funcionalidades en tiempo de ejecución que la extensión de mensaje requiere para funcionar correctamente. Valores admitidos: dialogUrl , dialogUrlBot , dialogAdaptiveCard , dialogAdaptiveCardBot . Para obtener más información, consulte cómo especificar los requisitos en tiempo de ejecución en el manifiesto de la aplicación. |
scopeConstraints
Restricciones de ámbito impuestas a una aplicación para especificar en qué subprocesos puede instalar la aplicación. Cuando no se especifica ninguna restricción, puede instalar la aplicación en todos los subprocesos del ámbito específico.
Opcional : objeto
Nombre | Tipo | Tamaño máximo | Obligatorio | Descripción |
---|---|---|---|---|
teams |
Matriz | 128 | Una lista de identificadores de subprocesos de equipo a los que está restringida la aplicación. | |
teams.id |
String | 64 caracteres | ✔️ | Identificador de subproceso del equipo. |
groupChats |
Matriz | 128 | Una lista de identificadores de subprocesos de chat a los que está restringida la aplicación. | |
groupChats.id |
String | 64 caracteres | ✔️ | Identificador de subproceso del chat. |
permissions
Opcional : matriz de cadenas
Matriz de string
, que especifica qué permisos solicita la aplicación, lo que permite a los usuarios finales saber cómo funciona la extensión. Las siguientes opciones no son exclusivas:
-
identity
Requiere información de identidad de usuario. -
messageTeamMembers
Requiere permiso para enviar mensajes directos a los miembros del equipo.
Cambiar estos permisos al actualizar la aplicación hace que los usuarios repitan el proceso de consentimiento la primera vez que ejecuten la aplicación actualizada.
devicePermissions
Opcional : matriz de cadenas
Especifica las características nativas en el dispositivo de un usuario al que la aplicación puede solicitar acceso. Las opciones son:
geolocation
media
notifications
midi
openExternal
validDomains
Opcional, excepto cuando se indique que es necesario.
Lista de dominios válidos desde los que la aplicación espera cargar cualquier contenido. Las listas de dominios pueden incluir caracteres comodín, por ejemplo *.example.com
. El dominio válido coincide exactamente con un segmento del dominio; si necesita que coincida con a.b.example.com
entonces use *.*.example.com
. Si la interfaz de usuario de contenido o configuración de pestaña necesita ir a cualquier otro dominio además del que se usa para la configuración de pestañas, ese dominio debe especificarse aquí.
Nota:
Los complementos de Office, configurados con una extensions
propiedad en el manifiesto, no tienen en cuenta los dominios que contienen un carácter comodín. Si la aplicación incorpora un complemento de Office, especifique el nombre de dominio completo para los dominios a los que accede el complemento.
Sin embargo, no es necesario incluir los dominios de los proveedores de identidades que quieres admitir en la aplicación. Por ejemplo, para autenticarse mediante un identificador de Google, es necesario redirigir a accounts.google.com, pero no debe incluir accounts.google.com en validDomains[]
.
Importante
No agregue dominios que estén fuera de su control, ya sea directamente o a través de caracteres comodín. Por ejemplo, yourapp.onmicrosoft.com
es válido, pero *.onmicrosoft.com
no es válido.
El objeto es una matriz con todos los elementos del tipo string
. El elemento máximo del objeto es 16 y la longitud máxima es de 2048 caracteres.
WebApplicationInfo
Opcional : objeto
Especifique el identificador de aplicación de Microsoft Entra y la información de Graph para ayudar a los usuarios a iniciar sesión sin problemas en la aplicación de Microsoft Entra.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
id |
Cadena | ✔️ | Microsoft Entra identificador de aplicación de la aplicación. Este identificador debe ser un GUID. | |
resource |
Cadena | 2048 caracteres | Dirección URL de recurso de la aplicación para adquirir el token de autenticación para SSO. |
graphConnector
Opcional : objeto
Especifique la configuración del conector de Graph de la aplicación. Si está presente, también debe especificarse webApplicationInfo.id .
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
notificationUrl |
Cadena | 2048 caracteres | ✔️ | La dirección URL https:// donde se deben enviar las notificaciones del conector de Graph para la aplicación. |
showLoadingIndicator
Opcional : booleano
Indica si se debe mostrar el indicador de carga cuando se carga una aplicación o una pestaña.
Valor predeterminado: false
Nota:
- Si selecciona
showLoadingIndicator
como true en el manifiesto de la aplicación, para cargar la página correctamente, modifique las páginas de contenido de las pestañas y diálogos como se describe en Mostrar un documento de indicador de carga nativo . - Si no modifica las páginas de contenido de la pestaña, la aplicación de pestaña no se carga y muestra el error
There was a problem reaching this app
.
IsFullScreen
Opcional : booleano
Indica dónde se representa una aplicación personal con o sin una barra de encabezado de pestaña.
Valor predeterminado: false
Nota:
isFullScreen
funciona solo para las aplicaciones publicadas en su organización.
activities
Opcional : objeto
Defina las propiedades que usa la aplicación para publicar una fuente de actividades del usuario.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
activityTypes |
Matriz de objetos | 128 | Proporciona los tipos de actividades que la aplicación puede publicar en una fuente de actividades de los usuarios. El systemDefault tipo de actividad es una cadena reservada y no válida. |
activities.activityTypes
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
type |
Cadena | 32 caracteres | ✔️ | El tipo de notificación. |
description |
Cadena | 128 caracteres | ✔️ | Una breve descripción de la notificación. |
templateText |
Cadena | 128 caracteres | ✔️ | P. ej.: " {actor} creó la tarea {taskId} para usted" |
{
"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
Opcional : matriz
El bloque configurableProperties
define las propiedades de la aplicación que los administradores de Teams pueden personalizar. Para más información, consulte Habilitar la personalización de aplicaciones.
Nota:
Se debe definir una propiedad como mínimo. Puede definir un máximo de nueve propiedades en este bloque.
Puede definir cualquiera de las siguientes propiedades:
-
name
: nombre para mostrar de la aplicación. -
shortDescription
: descripción breve de la aplicación. -
longDescription
: descripción detallada de la aplicación. -
smallImageUrl
: icono de esquema de la aplicación. -
largeImageUrl
: icono de color de la aplicación. -
accentColor
: color que se va a usar con y como fondo para los iconos de esquema. -
developerUrl
: la dirección URL HTTPS del sitio web del desarrollador. -
privacyUrl
: la dirección URL HTTPS de la directiva de privacidad del desarrollador. -
termsOfUseUrl
: la dirección URL HTTPS de los términos de uso del desarrollador.
supportedChannelTypes
Opcional : matriz
Habilita la aplicación en canales no estándar. Si la aplicación admite un ámbito de equipo y se define esta propiedad, Teams habilita la aplicación en cada tipo de canal en consecuencia. Se admiten los tipos de canal privado y compartido.
Nota:
- Si la aplicación admite un ámbito de equipo, funciona en los canales estándar, independientemente de los valores definidos en esta propiedad.
- La aplicación puede tener en cuenta las propiedades únicas de cada uno de los tipos de canal para que funcione correctamente. Para habilitar la pestaña para canales privados y compartidos, consulte recuperación del contexto en canales privados y obtención del contexto en canales compartidos.
defaultBlockUntilAdminAction
Opcional : booleano
Valor que indica si una aplicación está bloqueada de forma predeterminada hasta que el administrador lo permita.
Valor predeterminado: false
publisherDocsUrl
Opcional : cadena
La dirección URL de https:// a la página que proporciona información adicional de la aplicación para los administradores. La longitud máxima de la cadena es de 2048 caracteres.
defaultInstallScope
Opcional : cadena
Especifica el ámbito de instalación definido para esta aplicación de forma predeterminada. El ámbito definido es la opción que se muestra en el botón cuando un usuario intenta agregar la aplicación. Las opciones son:
personal
team
groupChat
meetings
defaultGroupCapability
Opcional : objeto
Cuando se selecciona un ámbito de instalación de grupo, define la funcionalidad predeterminada cuando el usuario instala la aplicación. Las opciones son:
team
groupchat
meetings
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
team |
Cadena | Cuando el ámbito de instalación seleccionado es team , este campo especifica la funcionalidad predeterminada disponible. Opciones: tab , bot o connector . |
||
groupchat |
Cadena | Cuando el ámbito de instalación seleccionado es groupChat , este campo especifica la funcionalidad predeterminada disponible. Opciones: tab , bot o connector . |
||
meetings |
Cadena | Cuando el ámbito de instalación seleccionado es meetings , este campo especifica la funcionalidad predeterminada disponible. Opciones: tab , bot o connector . |
subscriptionOffer
Opcional : objeto
Especifica la oferta de SaaS asociada a la aplicación.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
offerId |
Cadena | 2048 caracteres | ✔️ | Identificador único que incluye el identificador del publicador y el identificador de la oferta, que puede encontrar en Centro de partners. Debe dar formato a la cadena como publisherId.offerId . |
meetingExtensionDefinition
Opcional : objeto
Especifique la definición de la extensión de reunión. Para obtener más información, vea escenas personalizadas del Modo conferencia en Teams
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
scenes |
Matriz de objetos | 5 | Escenas admitidas de la reunión. | |
supportsStreaming |
Boolean | Valor booleano que indica si una aplicación puede transmitir contenido de audio y vídeo de la reunión a un punto de conexión de protocolo de reunión en tiempo real (RTMP). Valor predeterminado: false |
||
videoFiltersConfigurationUrl |
Cadena | 2048 caracteres | Dirección URL de https:// para configurar los filtros de vídeo. | |
supportsAnonymousGuestUsers |
Booleano | Valor booleano que indica si la aplicación admite el acceso de usuarios invitados anónimos. Valor predeterminado: false |
meetingExtensionDefinition.scenes
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
id |
Cadena | ✔️ | Identificador único de la escena. Este identificador debe ser un GUID. | |
name |
Cadena | 128 caracteres | ✔️ | Nombre de la escena. |
file |
Cadena | 2048 caracteres | ✔️ | Ruta de acceso relativa al archivo JSON de metadatos de las escenas. |
preview |
Cadena | 2048 caracteres | ✔️ | Ruta de acceso relativa del archivo al icono de vista previa PNG de las escenas. |
maxAudience |
Entero | 50 | ✔️ | Número máximo de audiencias admitidas en la escena. |
seatsReservedForOrganizersOrPresenters |
Entero | 50 | ✔️ | Número de puestos reservados para organizadores o moderadores. |
meetingExtensionDefinition.videoFilters
Este objeto indica que se cumplen los filtros de vídeo admitidos.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
id |
Cadena | ✔️ | Identificador único del filtro de vídeo. Este identificador debe ser un GUID. | |
name |
Cadena | 128 caracteres | ✔️ | Nombre del filtro de vídeo. |
thumbnail |
Cadena | 2048 caracteres | ✔️ | Ruta de acceso del archivo relativa a la miniatura del filtro de vídeo. |
Autorización
Opcional : objeto
Nota:
authorization
solo se admite para la versión 1.12 o posterior del manifiesto de la aplicación.
Especifique y consolide la información relacionada con la autorización de la aplicación.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
permissions |
Object | Lista de permisos que la aplicación necesita para funcionar. |
authorization.permissions
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
resourceSpecific |
Matriz de objetos | 16 | Permisos que protege el acceso a los datos en el nivel de instancia de recursos. |
authorization.permissions.resourceSpecific
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
type |
Cadena | ✔️ | Tipo de permiso de consentimiento específico del recurso (RSC). Opciones: Application y Delegated . |
|
name |
Cadena | 128 caracteres | ✔️ | Nombre del permiso RSC. Para obtener más información, consulte Permisos de aplicación de RSC y permisos delegados de RSC. |
Permisos de aplicación de RSC
Los permisos de aplicación permiten a la aplicación acceder a los datos sin que un usuario haya iniciado sesión. Para obtener información sobre los permisos de aplicación, consulte Permisos de RSC para Microsoft Graph y Microsoft BotSDK.
Permisos delegados de RSC
Los permisos delegados permiten a la aplicación acceder a los datos en nombre del usuario que ha iniciado sesión.
Permisos delegados de RSC para un equipo
Nombre Descripción ChannelMeetingParticipant.Read.Group
Permite que la aplicación lea la información de los participantes, incluidos el nombre, rol, identificador, horas de unión y salida de las reuniones de canal asociadas a este equipo, en nombre del usuario que ha iniciado sesión. ChannelMeetingIncomingAudio.Detect.Group
Permite que la aplicación detecte el audio entrante en las reuniones de canal asociadas al equipo. ChannelMeetingActiveSpeaker.Read.Group
Permite que la aplicación lea a los participantes que envían audio a las reuniones del canal asociadas con el equipo. ChannelMeetingAudioVideo.Stream.Group
Permite que la aplicación transmita contenido de audio y vídeo desde las reuniones de canal asociadas al equipo. InAppPurchase.Allow.Group
Permite que la aplicación muestre las ofertas de Marketplace a los usuarios del equipo y complete sus compras dentro de la aplicación, en nombre del usuario que ha iniciado sesión. ChannelMeetingStage.Write.Group
Permite que la aplicación muestre contenido en la fase de reunión en las reuniones de canal asociadas al equipo, en nombre del usuario que ha iniciado sesión. LiveShareSession.ReadWrite.Group
Permite a la aplicación crear y sincronizar sesiones de Live Share para el equipo y obtener información relacionada con el acceso, como el nombre y el rol, sobre la lista del equipo y las reuniones asociadas en nombre del usuario que ha iniciado sesión. MeetingParticipantReaction.Read.Group
Permite a la aplicación leer las reacciones de los participantes en las reuniones de canal asociadas con el equipo. Permisos delegados de RSC para chats o reuniones
Nombre Descripción InAppPurchase.Allow.Chat
Permite a la aplicación mostrar las ofertas de Marketplace a los usuarios en el chat, y cualquier reunión asociada, y completar sus compras dentro de la aplicación, en nombre del usuario que ha iniciado sesión. MeetingStage.Write.Chat
Permite que la aplicación muestre contenido en la fase de reunión en las reuniones asociadas al chat, en nombre del usuario que ha iniciado sesión. OnlineMeetingParticipant.Read.Chat
Permite que la aplicación lea la información de los participantes, incluidos el nombre, el rol, el identificador, las horas unidas y las horas izquierdas, de la reunión asociada al chat, en nombre del usuario que ha iniciado sesión. OnlineMeetingParticipant.ToggleIncomingAudio.Chat
Permite a la aplicación alternar el audio entrante para los participantes en las reuniones asociadas al chat, en nombre del usuario que ha iniciado sesión. LiveShareSession.ReadWrite.Chat
Permite a la aplicación crear y sincronizar sesiones de Live Share para el chat y obtener información relacionada con el acceso, como el nombre y el rol, sobre la lista del chat y las reuniones asociadas en nombre del usuario que ha iniciado sesión. MeetingParticipantReaction.Read.Chat
Permite a la aplicación leer las reacciones de los participantes en las reuniones asociadas al chat. OnlineMeetingIncomingAudio.Detect.Chat
Permite que la aplicación detecte cambios en el estado del audio entrante en las reuniones asociadas al chat, en nombre del usuario que ha iniciado sesión. OnlineMeetingActiveSpeaker.Read.Chat
Permite que la aplicación lea a los participantes que envían audio a las reuniones asociadas al chat. OnlineMeetingAudioVideo.Stream.Chat
Permite que la aplicación transmita contenido de audio y vídeo de las reuniones asociadas al chat. Permisos delegados de RSC para los usuarios
Nombre Descripción CameraStream.Read.User
Permite que la aplicación lea la secuencia de cámara del usuario. InAppPurchase.Allow.User
Permite que la aplicación muestre las ofertas de Marketplace del usuario y complete las compras del usuario dentro de la aplicación, en nombre del usuario que ha iniciado sesión. OutgoingVideoStream.Write.User
Permite que la aplicación modifique el vídeo saliente del usuario. MicrophoneStream.Read.User
Permite que la aplicación lea el flujo de micrófono del usuario. MeetingParticipantReaction.Read.User
Permite que la aplicación lea las reacciones del usuario mientras participa en una reunión.
extensions
Opcional : objeto
La extensions
propiedad especifica complementos de Outlook dentro de un manifiesto de aplicación y simplifica la distribución y adquisición en todo el ecosistema de Microsoft 365. Cada aplicación solo admite una extensión.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
requirements |
Object | Especifica el conjunto de requisitos de cliente o host para la extensión. | ||
runtimes |
Matriz | 20 | Configura el conjunto de tiempos de ejecución y acciones que puede usar cada punto de extensión. Para obtener más información, vea Runtimes in Office Add-ins. | |
ribbons |
Matriz | 20 | Define el punto de extensión de las cintas de opciones. | |
autoRunEvents |
Matriz | 10 | Define el punto de extensión de activación basado en eventos. | |
alternates |
Matriz | 10 | Especifica la relación con soluciones alternativas existentes de Microsoft 365. Se usa para ocultar o priorizar complementos del mismo publicador con funcionalidad superpuesta. | |
audienceClaimUrl |
Cadena | 2048 caracteres | Especifica la dirección URL de la extensión y se usa para validar los tokens de identidad de usuario de Exchange. Para obtener más información, consulte dentro del token de identidad de Exchange. | |
appDeeplinks |
Matriz | No usar. Solo para uso interno de Microsoft. |
Para obtener más información, vea Manifiesto de complementos de Office para Microsoft 365.
extensions.requirements
El extensions.requirements
objeto especifica los ámbitos, los factores de forma y los conjuntos de requisitos de la biblioteca javascript de Office que se deben admitir en el cliente de Office para que se instale el complemento. Los requisitos también se admiten en las propiedades secundarias "ribbon", "runtime", "alternates" y "autoRunEvents" para filtrar selectivamente algunas características del complemento. Para obtener más información, vea Especificar requisitos de complementos de Office en el manifiesto unificado para Microsoft 365.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
capabilities |
Matriz | 100 | Identifica los conjuntos de requisitos. | |
capabilities.name |
Cadena | ✔️ | Identifica el nombre del conjunto de requisitos. | |
capabilities.minVersion |
Cadena | Identifica la versión mínima del conjunto de requisitos. | ||
capabilities.maxVersion |
Cadena | Identifica la versión máxima del conjunto de requisitos. | ||
scopes |
Matriz de enumeraciones | 1 | Identifica los ámbitos en los que se puede ejecutar el complemento y define las aplicaciones de Microsoft 365 en las que se puede ejecutar la extensión. Por ejemplo, mail (Outlook). Valor admitido: mail |
|
formFactors |
Matriz de enumeraciones | Identifica los factores de forma que admiten el complemento. Valores admitidos: mobile , desktop |
extensions.runtimes
Opcional : matriz
La extensions.runtimes
matriz configura los conjuntos de tiempos de ejecución y las acciones que puede usar cada punto de extensión.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
id |
String | 64 caracteres | ✔️ | Especifica el identificador del entorno de ejecución. |
type |
Enumeración de cadena | ✔️ | Especifica el tipo de tiempo de ejecución. El valor de enumeración admitido para el entorno de ejecución basado en explorador es general . |
|
code |
Objeto | ✔️ | Especifica la ubicación del código para el tiempo de ejecución.
runtime.type En función de , los complementos pueden usar un archivo JavaScript o una página HTML con una etiqueta incrustada script que especifica la dirección URL de un archivo JavaScript. Ambas direcciones URL son necesarias en situaciones en las que es runtime.type incierto. |
|
code.page |
Cadena | 2048 caracteres | ✔️ | Especifica la dirección URL de la página web que contiene una etiqueta incrustada script , que especifica la dirección URL de un archivo JavaScript (que se va a cargar en un entorno de ejecución basado en explorador). |
code.script |
Cadena | 2048 caracteres | Especifica la dirección URL del archivo JavaScript que se va a cargar en tiempo de ejecución de solo JavaScript. | |
lifetime |
Enumeración de cadena | Especifica la duración del tiempo de ejecución. Los tiempos de ejecución con una short duración no conservan el estado de las ejecuciones mientras que los tiempos de ejecución con una long duración sí lo hacen. Para obtener más información, vea Runtimes in Office Add-ins.Valor predeterminado: short |
||
actions |
Matriz | 20 | Especifica el conjunto de acciones admitidas por el entorno de ejecución. Una acción ejecuta una función de JavaScript o abre una vista como un panel de tareas. | |
actions.id |
String | 64 caracteres | ✔️ | Especifica el identificador de la acción, que se pasa al archivo de código. |
actions.type |
Cadena | ✔️ | Especifica el tipo de acción. El executeFunction tipo ejecuta una función de JavaScript sin esperar a que finalice y el openPage tipo abre una página en una vista determinada. |
|
actions.displayName |
String | 64 caracteres | Especifica el nombre para mostrar de la acción y no es la etiqueta de un botón o un elemento de menú que invoca la acción (que está configurada con tabs.groups.controls.label ). |
|
actions.pinnable |
Booleano | Especifica que un panel de tareas admite el anclado, lo que provoca que el panel de tareas siga abierto aunque el usuario cambie la selección. Valor predeterminado: false |
||
actions.view |
String | 64 caracteres | Especifica la vista donde se debe abrir la página. Solo se usa cuando actions.type es openPage . |
|
actions.multiselect |
Booleano | Especifica si el usuario final puede seleccionar varios elementos, como varios mensajes de correo electrónico, y aplicar la acción a todos ellos. Valor predeterminado: false |
||
actions.supportsNoItemContext |
Booleano | Permite que los complementos del panel de tareas se activen sin el panel de lectura habilitado o un mensaje seleccionado. Valor predeterminado: false |
||
requirements |
Objeto | Especifica los ámbitos, formFactors y los conjuntos de requisitos de la biblioteca JavaScript de Office que se deben admitir en el cliente de Office para que el tiempo de ejecución se incluya en el complemento. Para obtener más información, vea Especificar requisitos de complementos de Office en el manifiesto unificado para Microsoft 365. | ||
requirements.capabilities |
Matriz | Identifica los conjuntos de requisitos. Opciones: name (obligatorio), minVersion , maxVersion |
||
requirements.capabilities.name |
Cadena | ✔️ | Identifica el nombre del conjunto de requisitos. | |
requirements.capabilities.minVersion |
Cadena | Identifica la versión mínima del conjunto de requisitos. | ||
requirements.capabilities.maxVersion |
Cadena | Identifica la versión máxima del conjunto de requisitos. | ||
requirements.scopes |
Matriz de enumeraciones | 1 | Identifica los ámbitos en los que se puede ejecutar el complemento y define las aplicaciones de Microsoft 365 en las que se puede ejecutar la extensión. Por ejemplo, mail (Outlook). Valor admitido: mail |
|
requirements.formFactors |
Matriz de enumeraciones | Identifica los factores de forma que admiten el complemento. Valores admitidos: mobile , desktop |
Para usar extensions.runtimes
, consulte creación de comandos de complemento,configuración del tiempo de ejecución para un panel de tareas y configuración del tiempo de ejecución para el comando de función.
extensions.ribbons
Opcional : matriz
La extensions.ribbons
propiedad proporciona la capacidad de agregar comandos de complemento (botones y elementos de menú) a la cinta de opciones de la aplicación de Microsoft 365. La definición de la cinta de opciones se selecciona de la matriz en función de los requisitos y el primer orden.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
contexts |
Matriz | 8 | Especifica la ventana de aplicación de Microsoft 365 en la que la personalización de la cinta de opciones está disponible para el usuario. Cada elemento de la matriz es un miembro de una matriz de cadenas. Valores admitidos: , , , meetingDetailsOrganizer meetingDetailsAttendee , onlineMeetingDetailsOrganizer , , logEventMeetingDetailsAttendee , spamReportingOverride mailCompose mailRead default |
|
requirements |
Objeto | Especifica los ámbitos, formFactors y los conjuntos de requisitos de la biblioteca JavaScript de Office que se deben admitir en el cliente de Office para que aparezca la personalización de la cinta de opciones. Para obtener más información, vea Especificar requisitos de complementos de Office en el manifiesto unificado para Microsoft 365. | ||
requirements.capabilities |
Matriz | Identifica los conjuntos de requisitos. Opciones: name (obligatorio), minVersion , maxVersion |
||
requirements.capabilities.name |
Cadena | ✔️ | Identifica el nombre del conjunto de requisitos. | |
requirements.capabilities.minVersion |
Cadena | Identifica la versión mínima del conjunto de requisitos. | ||
requirements.capabilities.maxVersion |
Cadena | Identifica la versión máxima del conjunto de requisitos. | ||
requirements.scopes |
Matriz de enumeraciones | 1 | Identifica los ámbitos en los que se puede ejecutar el complemento y define las aplicaciones de Microsoft 365 en las que se puede ejecutar la extensión. Por ejemplo, mail (Outlook). Valor admitido: mail |
|
requirements.formFactors |
Matriz de enumeraciones | Identifica los factores de forma que admiten el complemento. Valores admitidos: mobile , desktop |
||
tabs |
Matriz | 20 | ✔️ | Configura las pestañas personalizadas en la cinta de opciones de la aplicación de Microsoft 365. |
tabs.id |
String | 64 caracteres | Especifica el identificador de la pestaña dentro de la aplicación. | |
tabs.builtInTabId |
String | 64 caracteres | Especifica el identificador de una pestaña integrada de la cinta de Opciones de Office. Para obtener más información sobre los valores posibles, vea Buscar los identificadores de las pestañas integradas de la cinta de opciones de Office. Las únicas propiedades secundarias de un objeto tab que se pueden incluir con esta propiedad son groups y customMobileRibbonGroups . |
|
tabs.label |
String | 64 caracteres | Especifica el texto que se muestra para la pestaña. A pesar de la longitud máxima de 64 caracteres, para alinear correctamente la pestaña de la cinta de opciones, se recomienda limitar la etiqueta a 16 caracteres. | |
tabs.position |
Objeto | Configura la posición de la pestaña personalizada con respecto a otras pestañas de la cinta de opciones. | ||
tabs.position.builtInTabId |
String | 64 caracteres | ✔️ | Especifica el identificador de la pestaña integrada en la que se debe colocar la pestaña personalizada junto a . Para obtener más información, vea Buscar los identificadores de controles y grupos de controles. |
tabs.position.align |
Enumeración de cadena | ✔️ | Define la alineación de la pestaña personalizada con respecto a la pestaña integrada especificada. Valores admitidos: after , before |
|
tabs.groups |
Matriz | 10 | Define grupos de controles en una pestaña de cinta de opciones en un dispositivo que no es móvil. Para dispositivos móviles, consulte tabs.customMobileRibbonGroups a continuación. |
|
tabs.groups.id |
String | 64 caracteres | Especifica el identificador del grupo de pestañas dentro de la aplicación. Debe ser diferente de cualquier identificador de grupo integrado en la aplicación de Microsoft 365 y en cualquier otro grupo personalizado. | |
tabs.groups.label |
String | 64 caracteres | Especifica el texto mostrado para el grupo. A pesar de la longitud máxima de 64 caracteres, para alinear correctamente la pestaña de la cinta de opciones, se recomienda limitar la etiqueta a 16 caracteres. | |
tabs.groups.icons |
Matriz | 3 | Especifica los iconos que se muestran para el grupo. | |
tabs.groups.icons.size |
Número | ✔️ | Especifica el tamaño del icono en píxeles, enumerado como ,,,,,,,64 .80 .48 40 32 24 20 16 Tamaños de imagen necesarios: 16 , 32 , 80 . |
|
tabs.groups.icons.url |
Cadena | 2048 caracteres | ✔️ | Especifica la dirección URL absoluta del icono. |
tabs.groups.controls |
Matriz | Configura los botones y menús del grupo. | ||
tabs.groups.controls.id |
String | 64 caracteres | ✔️ | Especifica el identificador del control dentro de la aplicación. Debe ser diferente de cualquier identificador de control integrado en la aplicación de Microsoft 365 y cualquier otro control personalizado. |
tabs.groups.controls.items |
Matriz | Configura los elementos de un control de menú. | ||
tabs.groups.controls.items.id |
Cadena | ✔️ | Especifica el identificador de un elemento de menú. | |
tabs.groups.controls.items.type |
Enumeración de cadena | ✔️ | Define el tipo de control del elemento de menú. Valores admitidos: button |
|
tabs.groups.controls.items.label |
String | 64 caracteres | ✔️ | Especifica el texto mostrado para el elemento de menú. |
tabs.groups.controls.items.icons |
Matriz | Configura los iconos del elemento de menú. | ||
tabs.groups.controls.items.icons.size |
Número | ✔️ | Especifica el tamaño del icono en píxeles, enumerado como ,,,,,,,64 .80 .48 40 32 24 20 16 Tamaños de imagen necesarios: 16 , 32 , 80 . |
|
tabs.groups.controls.items.icons.url |
URL | ✔️ | Especifica la dirección URL absoluta del icono. | |
tabs.groups.controls.items.supertip |
✔️ | Configura una superinquitación para el elemento de menú. Una superinformación es una característica de interfaz de usuario que muestra un breve cuadro de información de ayuda sobre un control cuando el cursor mantiene el cursor sobre él. El cuadro puede contener varias líneas de texto. | ||
tabs.groups.controls.items.supertip.title |
String | 64 caracteres | ✔️ | Especifica el texto del título de la supertip. |
tabs.groups.controls.items.supertip.description |
Cadena | 128 caracteres | ✔️ | Especifica la descripción de la supertip. |
tabs.groups.controls.items.actionId |
String | 64 caracteres | ✔️ | Especifica el identificador de la acción que se realiza cuando un usuario selecciona el control o elemento de menú.
actionId debe coincidir con algún runtimes.actions.id valor de propiedad. |
tabs.groups.controls.items.enabled |
Booleano | Indica si el elemento de menú está habilitado inicialmente. Valor predeterminado: true |
||
tabs.groups.controls.items.overriddenByRibbonApi |
Booleano | Especifica si el elemento de menú está oculto en las combinaciones de aplicaciones y plataformas que admiten la API (Office.ribbon.requestCreateControls). Esta API instala pestañas contextuales personalizadas en la cinta de opciones. Valor predeterminado: false |
||
tabs.groups.controls.type |
Cadena | ✔️ | Define el tipo de control. Valores admitidos: button , menu |
|
tabs.groups.controls.builtInControlId |
String | 64 caracteres | Especifica el identificador de un control de Microsoft 365 existente. Para obtener más información, vea Buscar los identificadores de controles y grupos de controles. Esta propiedad no se puede combinar con ninguna otra propiedad secundaria del objeto de control porque un complemento no puede personalizar los controles integrados. | |
tabs.groups.controls.label |
String | 64 caracteres | ✔️ | Especifica el texto mostrado para el control. A pesar de la longitud máxima de 64 caracteres, para alinear correctamente la pestaña de la cinta de opciones, se recomienda limitar la etiqueta a 16 caracteres. |
tabs.groups.controls.icons |
Matriz | ✔️ | Define los iconos del control. Debe haber al menos tres objetos secundarios; uno cada uno con size propiedades de 16 , 32 y 80 píxeles. |
|
tabs.groups.controls.icons.size |
Número | ✔️ | Especifica el tamaño del icono en píxeles, enumerado como ,,,,,,,64 .80 .48 40 32 24 20 16 Tamaños de imagen necesarios: 16 , , 32 80 |
|
tabs.groups.controls.icons.url |
URL | Especifica la dirección URL absoluta del archivo de icono. | ||
tabs.groups.controls.supertip |
Objeto | ✔️ | Configura una supertip para el control. Una superinformación es una característica de interfaz de usuario que muestra un breve cuadro de información de ayuda sobre un control cuando el cursor mantiene el cursor sobre él. El cuadro puede contener varias líneas de texto. | |
tabs.groups.controls.supertip.title |
String | 64 caracteres | ✔️ | Especifica el texto del título de la supertip. |
tabs.groups.controls.supertip.description |
Cadena | 128 caracteres | ✔️ | Especifica la descripción de la supertip. |
tabs.groups.controls.actionId |
String | 64 caracteres | Obligatorio si el tipo de control es button . No use si el tipo de control es menu . Especifica el identificador de la acción que se realiza cuando un usuario selecciona el control.
actionId debe coincidir con la runtime.actions.id propiedad de una acción en el runtimes objeto . |
|
tabs.groups.controls.enabled |
Booleano | Indica si el control está habilitado inicialmente. Valor predeterminado: true |
||
tabs.groups.controls.overriddenByRibbonApi |
Booleano | Especifica si el control está oculto en las combinaciones de aplicaciones y plataformas que admiten la API (Office.ribbon.requestCreateControls). Esta API instala pestañas contextuales personalizadas en la cinta de opciones. Valor predeterminado: false |
||
tabs.groups.builtInGroupId |
String | 64 caracteres | Especifica el identificador de un grupo integrado. Para obtener más información, vea Buscar los identificadores de controles y grupos de controles. Esta propiedad no se puede combinar con ninguna otra propiedad secundaria del objeto de grupo porque un complemento no puede personalizar los grupos integrados. | |
tabs.customMobileRibbonGroups |
Matriz | 10 | Define grupos de controles en la pestaña predeterminada de la cinta de opciones en un dispositivo móvil. Esta propiedad de matriz solo puede estar presente en objetos de tabulación que tienen una tabs.builtInTabId propiedad establecida en DefaultTab . Para dispositivos que no son móviles, consulte tabs.groups anteriormente. |
|
tabs.customMobileRibbonGroups.id |
Cadena | 250 caracteres | ✔️ | Especifica el identificador del grupo. Debe ser diferente de cualquier identificador de grupo integrado en la aplicación de Microsoft 365 y en cualquier otro grupo personalizado. |
tabs.customMobileRibbonGroups.label |
Cadena | 32 caracteres | ✔️ | Especifica la etiqueta del grupo. |
tabs.customMobileRibbonGroups.controls |
Matriz | 20 | ✔️ | Define los controles del grupo. Solo se admiten botones móviles. |
tabs.customMobileRibbonGroups.controls.id |
Cadena | 250 caracteres | ✔️ | Especifica el identificador del control, como msgReadFunctionButton . |
tabs.customMobileRibbonGroups.controls.type |
Enumeración de cadena | ✔️ | Especifica el tipo de control.
MobileButton solo se admite. |
|
tabs.customMobileRibbonGroups.controls.label |
Cadena | 32 caracteres | ✔️ | Especifica la etiqueta en el control. |
tabs.customMobileRibbonGroups.controls.actionId |
String | 64 caracteres | ✔️ | Especifica el identificador de la acción que se realiza cuando un usuario selecciona el control.
actionId debe coincidir con la runtime.actions.id propiedad de una acción en el runtimes objeto . |
tabs.customMobileRibbonGroups.controls.icons |
Matriz | 9 | ✔️ | Especifica los iconos que aparecerán en el control en función de las dimensiones y ppp de la pantalla del dispositivo móvil. Debe haber exactamente 9 iconos. |
tabs.customMobileRibbonGroups.controls.icons.size |
Enumeración numérica | ✔️ | Tamaño en píxeles del icono. Los tamaños posibles son 25, 32 y 48. Debe haber exactamente uno de cada tamaño para cada valor posible de la propiedad de scale los iconos. |
|
tabs.customMobileRibbonGroups.controls.icons.url |
Cadena | 2048 caracteres | ✔️ | Dirección URL completa y absoluta del archivo de imagen del icono. |
tabs.customMobileRibbonGroups.controls.icons.scale |
Enumeración numérica | ✔️ | Especifica la propiedad UIScreen.scale para dispositivos iOS. Los valores posibles son 1, 2 y 3. Debe haber exactamente uno de cada valor para cada valor posible de la propiedad de size los iconos. |
|
fixedControls |
Matriz | 1 | Configura el botón de un complemento integrado de informes de correo no deseado en Outlook. Debe configurar si spamReportingOverride se especifica en la extensions.ribbons.contexts matriz. |
|
fixedControls.id |
String | 64 caracteres | ✔️ | Especifica el identificador único del botón de un complemento de informes de correo no deseado. |
fixedControls.type |
Cadena | ✔️ | Define el tipo de control de un complemento de informes de correo no deseado. Valor admitido: button |
|
fixedControls.label |
String | 64 caracteres | ✔️ | Especifica el texto que aparece en el botón de un complemento de informes de correo no deseado. |
fixedControls.enabled |
Booleano | ✔️ | Esta propiedad debe especificarse en el fixedControls objeto . Sin embargo, no afecta a la funcionalidad de un complemento de informes de correo no deseado.Valor predeterminado: True |
|
fixedControls.icons |
Matriz | 3 | ✔️ | Define los iconos del botón de un complemento de informes de correo no deseado. Debe haber al menos tres objetos secundarios, cada uno con tamaños de icono de 16 , 32 y 80 píxeles, respectivamente. |
fixedControls.icons.size |
Número | ✔️ | Especifica el tamaño del icono en píxeles, enumerado como 16 , 20 , 24 , 32 , 40 , 48 64 y 80 .Tamaños de imagen necesarios: 16 , , 32 80 |
|
fixedControls.icons.url |
Cadena | 2048 caracteres | ✔️ | Especifica la dirección URL absoluta del icono. |
fixedControls.supertip |
Objeto | ✔️ | Configura una superinquipación para el botón de un complemento de informes de correo no deseado. | |
fixedControls.supertip.title |
String | 64 caracteres | ✔️ | Especifica el texto del título de la supertip. |
fixedControls.supertip.description |
Cadena | 250 caracteres | ✔️ | Especifica la descripción de la supertip. |
fixedControls.actionId |
String | 64 caracteres | ✔️ | Especifica el identificador de la acción realizada cuando un usuario selecciona el botón de un complemento de informes de correo no deseado.
actionId debe coincidir con la runtime.actions.id propiedad de una acción en el runtimes objeto . |
spamPreProcessingDialog |
Objeto | Configura el cuadro de diálogo de preprocesamiento de un complemento integrado de informes de correo no deseado en Outlook. | ||
spamPreProcessingDialog.title |
Cadena | 128 caracteres | ✔️ | Especifica el título personalizado del cuadro de diálogo de preprocesamiento de un complemento de informes de correo no deseado. |
spamPreProcessingDialog.description |
Cadena | 250 caracteres | ✔️ | Especifica el texto personalizado que aparece en el cuadro de diálogo de preprocesamiento de un complemento de informes de correo no deseado. |
spamPreProcessingDialog.spamReportingOptions |
Objeto | Especifica hasta cinco opciones que un usuario puede seleccionar en el cuadro de diálogo de preprocesamiento para proporcionar un motivo para informar de un mensaje. | ||
spamPreProcessingDialog.spamReportingOptions.title |
Cadena | 128 caracteres | ✔️ | Especifica el texto personalizado o el título para describir las opciones de informes proporcionadas en el cuadro de diálogo de preprocesamiento. |
spamPreProcessingDialog.spamReportingOptions.options |
Matriz de cadenas | 5 opciones 128 caracteres por opción |
✔️ | Especifica una opción personalizada con una casilla que un usuario puede seleccionar en el cuadro de diálogo de preprocesamiento para proporcionar un motivo para informar de un mensaje. Se debe especificar al menos una opción. Se puede incluir un máximo de cinco opciones. |
spamPreProcessingDialog.spamFreeTextSectionTitle |
Cadena | 128 caracteres | Agrega un cuadro de texto al cuadro de diálogo de preprocesamiento para que los usuarios proporcionen información adicional sobre el mensaje que están notificando. La cadena proporcionada en esta propiedad aparece encima del cuadro de texto. | |
spamPreProcessingDialog.spamMoreInfo |
Objeto | Configura un vínculo para proporcionar recursos informativos a un usuario. En el cuadro de diálogo de preprocesamiento, el vínculo aparece debajo del texto proporcionado en spamPreProcessingDialog.description . |
||
spamPreProcessingDialog.spamMoreInfo.text |
Cadena | 128 caracteres | ✔️ | Especifica el texto del vínculo de una dirección URL que dirige a los usuarios a los recursos informativos desde el cuadro de diálogo de preprocesamiento. |
spamPreProcessingDialog.spamMoreInfo.url |
Cadena | 2048 caracteres | ✔️ | Especifica la dirección URL HTTPS de un sitio que contiene recursos informativos. |
Para usar extensions.ribbons
, consulte creación de comandos de complemento, configuración de la interfaz de usuario para el comando del panel de tareas y configuración de la interfaz de usuario para el comando de función.
extensions.autoRunEvents
Opcional : matriz
La extensions.autoRunEvents
propiedad define puntos de extensión de activación basados en eventos.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
events |
Matriz | 20 | ✔️ | Configura el evento que hace que las acciones de un complemento de Outlook se ejecuten automáticamente. Por ejemplo, vea usar alertas inteligentes y los OnMessageSend eventos y OnAppointmentSend en los complementos de Outlook. |
events.type |
String | 64 caracteres | Especifica el tipo de evento. Para ver los tipos admitidos, consulte eventos admitidos. | |
events.actionId |
String | 64 caracteres | Identifica la acción que se realiza cuando se desencadena el evento.
actionId debe coincidir con runtime.actions.id . |
|
events.options |
Objeto | Configura cómo responde Outlook al evento. | ||
events.options.sendMode |
Cadena | ✔️ | Especifica las acciones que se deben realizar durante una acción de envío de correo. Valores admitidos: promptUser , softBlock , block . Para obtener más información, consulte opciones de modo de envío disponibles. |
|
requirements |
Objeto | Especifica los ámbitos, formFactors y conjuntos de requisitos de la biblioteca javascript de Office que se deben admitir en el cliente de Office para que se ejecute el código de control de eventos. Para obtener más información, vea Especificar requisitos de complementos de Office en el manifiesto unificado para Microsoft 365. | ||
requirements.capabilities |
Matriz | Identifica los conjuntos de requisitos. Opciones: name (obligatorio), minVersion , maxVersion |
||
requirements.capabilities.name |
Cadena | ✔️ | Identifica el nombre del conjunto de requisitos. | |
requirements.capabilities.minVersion |
Cadena | Identifica la versión mínima del conjunto de requisitos. | ||
requirements.capabilities.maxVersion |
Cadena | Identifica la versión máxima del conjunto de requisitos. | ||
requirements.scopes |
Matriz de enumeraciones | 1 | Identifica los ámbitos en los que se puede ejecutar el complemento y define las aplicaciones de Microsoft 365 en las que se puede ejecutar la extensión. Por ejemplo, mail (Outlook). Valor admitido: mail |
|
requirements.formFactors |
Matriz de enumeraciones | Identifica los factores de forma que admiten el complemento. Valores admitidos: mobile , desktop |
extensions.alternates
La extensions.alternates
propiedad se usa para ocultar o priorizar complementos específicos en el mercado cuando se han publicado varios complementos con funcionalidad superpuesta.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
prefer |
Object | Especifica la compatibilidad con versiones anteriores con un complemento COM equivalente, un complemento XLL o ambos. | ||
prefer.comAddin |
Objeto | Especifica un complemento COM que se debe usar en lugar del complemento web de Microsoft 365 para Windows. | ||
prefer.comAddin.progId |
String | 64 caracteres | ✔️ | Identifica el tipo de aplicación en el que se puede ejecutar la extensión. |
hide |
Objeto | Configura cómo ocultar otro complemento que haya publicado cada vez que se instale el complemento, de modo que los usuarios no vean ambos en la interfaz de usuario de Microsoft 365. Por ejemplo, use esta propiedad cuando haya publicado anteriormente un complemento que use el manifiesto de aplicación XML anterior y lo reemplace por una versión que use el nuevo manifiesto de aplicación JSON. | ||
hide.storeOfficeAddin |
Objeto | Especifica un complemento de Microsoft 365 disponible en Microsoft AppSource. | ||
hide.storeOfficeAddin.officeAddinId |
String | 64 caracteres | ✔️ | Especifica el identificador del complemento en el mercado que se va a ocultar. El GUID se toma de la propiedad de manifiesto id de la aplicación si el complemento en el mercado usa el manifiesto de aplicación JSON. El GUID se toma del <Id> elemento si el complemento en el mercado usa el manifiesto de aplicación XML. |
hide.storeOfficeAddin.assetId |
String | 64 caracteres | ✔️ | Especifica el identificador de recurso de AppSource del complemento en el mercado que se va a ocultar. |
hide.customOfficeAddin |
Objeto | Configura cómo ocultar un complemento en el mercado que no se distribuye a través de AppSource. | ||
hide.customOfficeAddin.officeAddinId |
String | 64 caracteres | ✔️ | Especifica el identificador del complemento en el mercado que se va a ocultar. El GUID se toma de la propiedad de manifiesto id de la aplicación si el complemento en el mercado usa el manifiesto de aplicación JSON. El GUID se toma del <Id> elemento si el complemento en el mercado usa el manifiesto de aplicación XML. |
requirements |
Objeto | Especifica los ámbitos, formFactors y los conjuntos de requisitos de la biblioteca JavaScript de Office que se deben admitir en el cliente de Office para que las propiedades "hide", "prefer" o "alternateIcons" surtan efecto. Para obtener más información, vea Especificar requisitos de complementos de Office en el manifiesto unificado para Microsoft 365. | ||
requirements.capabilities |
Matriz | Identifica los conjuntos de requisitos. Opciones: name (obligatorio), minVersion , maxVersion |
||
requirements.capabilities.name |
Cadena | ✔️ | Identifica el nombre del conjunto de requisitos. | |
requirements.capabilities.minVersion |
Cadena | Identifica la versión mínima del conjunto de requisitos. | ||
requirements.capabilities.maxVersion |
Cadena | Identifica la versión máxima del conjunto de requisitos. | ||
requirements.scopes |
Matriz de enumeraciones | 1 | Identifica los ámbitos en los que se puede ejecutar el complemento y define las aplicaciones de Microsoft 365 en las que se puede ejecutar la extensión. Por ejemplo, mail (Outlook). Valor admitido: mail |
|
requirements.formFactors |
Matriz de enumeraciones | Identifica los factores de forma que admiten el complemento. Valores admitidos: mobile , desktop |
||
alternateIcons |
Objeto | Especifica los iconos principales que se usan para representar el complemento en versiones anteriores de Office. Esta propiedad es necesaria si el complemento de Office se puede instalar en Office en Mac, licencias perpetuas de Office y versiones de suscripción de Microsoft 365 de Office en Windows anteriores a 2304 (compilación 16320.00000). | ||
alternateIcons.icon |
Objeto | ✔️ | Especifica las propiedades del archivo de imagen que se usa para representar el complemento. | |
alternateIcons.icon.size |
Enumeración numérica | ✔️ | Especifica el tamaño del icono en píxeles, enumerado como ,,,,,,,64 .80 .48 40 32 24 20 16 Tamaños de imagen necesarios: 16 , 32 , 80 . |
|
alternateIcons.icon.url |
Cadena | 2048 caracteres | ✔️ | Especifica la dirección URL completa y absoluta del archivo de imagen que se usa para representar el complemento. La imagen de icono debe tener 64 x 64 píxeles y usar uno de los siguientes formatos de archivo: GIF, JPG, PNG, EXIF, BMP, TIFF. |
alternateIcons.highResolutionIcon |
Objeto | ✔️ | Especifica las propiedades del archivo de imagen que se usa para representar el complemento en pantallas con valores altos de PPP. | |
alternateIcons.highResolutionIcon.size |
Enumeración numérica | ✔️ | Especifica el tamaño del icono en píxeles, enumerado como ,,,,,,,64 .80 .48 40 32 24 20 16 Tamaños de imagen necesarios: 16 , 32 , 80 . |
|
alternateIcons.highResolutionIcon.url |
Cadena | 2048 caracteres | ✔️ | Especifica la dirección URL completa y absoluta del archivo de imagen que se usa para representar el complemento en pantallas con valores altos de PPP. La imagen de icono debe tener 128 x 128 píxeles y usar uno de los siguientes formatos de archivo: GIF, JPG, PNG, EXIF, BMP, TIFF. |
actions
Nota:
Las acciones de Microsoft 365 están disponibles en versión preliminar para desarrolladores públicos.
Las acciones son compatibles con la aplicación de Microsoft 365 (Office) para web y escritorio.
El objeto es una matriz de objetos de acción. Este bloque solo es necesario para las soluciones que proporcionan Acciones.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
id |
String | 64 caracteres | ✔️ | Cadena de identificador en la configuración regional predeterminada que se usa para catalogar acciones. Debe ser único en todas las acciones de esta aplicación. Por ejemplo, openDocInContoso . |
displayName |
Cadena | 64 caracteres | ✔️ | Nombre para mostrar de la acción. Ponga en mayúscula la primera letra y el nombre de la marca. Por ejemplo, Agregar a proveedores, Abrir en Contoso y Solicitar firmas. |
description |
Cadena | ✔️ | Especifica la descripción de las acciones. | |
intent |
Enumeración de cadena | ✔️ | Especifica el tipo de intención. Los valores de enumeración admitidos son open , addTo y custom . |
|
handlers |
Matriz de objetos | ✔️ | Una matriz de objetos de controlador define cómo se administran las acciones. En la versión preliminar pública actual, agregue un único controlador para cada acción. |
actions.handlers
Define los controladores de la acción. Los controladores son una matriz de objetos de controlador. Cada acción debe tener al menos un controlador.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
supportedObjects |
Object | Objetos que definen qué objetos pueden desencadenar esta acción. | ||
type |
Enumeración de cadena | ✔️ | Especifica el tipo de controlador de Actions. El valor de enumeración admitido es openPage . |
|
pageInfo |
Objeto | Obligatorio si el tipo de controlador es openPage . Objeto que contiene los metadatos de la página que se va a abrir. |
actions.handlers.supportedObjects
Los tipos de objeto admitidos que pueden desencadenar esta acción.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
file |
Object | Tipos de archivo admitidos. | ||
file.extensions |
Matriz de cadenas | Matriz de cadenas. Extensiones de archivo del tipo de archivo que action puede desencadenar. Por ejemplo, pdf y docx. |
actions.handlers.pageInfo
Obligatorio si el tipo de controlador es openPage
. Objeto que contiene los metadatos de la página que se va a abrir.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
PageId |
Cadena | Se asigna a de EntityId la pestaña estática. |
||
SubPageId |
Cadena | Se asigna a de SubEntityId la pestaña estática. |
dashboardCards
Opcional : matriz
Define una lista de tarjetas que se pueden anclar a un panel, como Microsoft Viva Connections, para proporcionar una vista resumida de la información de la aplicación. Para obtener más información sobre cómo crear tarjetas para Viva Connections Panel, consulte Información general sobre las extensiones de tarjeta adaptable con tecnología de bot.
La dashboardCards
propiedad es una matriz de elementos del tipo object
.
dashboardCards.dashboardCard
Define una sola tarjeta de panel y sus propiedades.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
id |
Cadena | ✔️ | Identificador único de esta tarjeta de panel. El identificador debe ser un GUID. | |
displayName |
Cadena | 255 caracteres | ✔️ | Nombre para mostrar de la tarjeta. |
description |
Cadena | 255 caracteres | ✔️ | Descripción de la tarjeta. |
pickerGroupId |
Cadena | ✔️ | Identificador del grupo en el selector de tarjetas. El identificador debe ser un GUID. | |
icon |
Objeto | Especifica el icono de la tarjeta. | ||
contentSource |
Objeto | ✔️ | Especifica el origen del contenido de la tarjeta. | |
defaultSize |
Cadena | ✔️ | Tamaño de representación de la tarjeta del panel. Opciones: medium o large . |
dashboardCards.dashboardCard.icon
Define las propiedades de icono de una tarjeta de panel determinada.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
iconUrl |
Cadena | 2048 caracteres | Ubicación del icono de la tarjeta, que se mostrará en el cuadro de herramientas y la barra de tarjetas. | |
officeUIFabricIconName |
Cadena | 255 caracteres | Nombre descriptivo del icono de la interfaz de usuario de Office UI Fabric o Fluent para la tarjeta. Este valor se usa si iconUrl no se especifica. |
dashboardCards.dashboardCard.contentSource
Define el origen de contenido de una tarjeta de panel determinada.
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
sourceType |
Cadena | Representa el origen del contenido de una tarjeta. Opción: bot . |
||
botConfiguration |
Objeto | Configuración del origen del bot. Obligatorio si está sourceType establecido en bot . |
dashboardCards.dashboardCard.contentSource.botConfiguration
Nombre | Tipo | Tamaño máximo | Necesario | Descripción |
---|---|---|---|---|
botId |
Cadena | El ID. de aplicación de Microsoft único para el bot, registrado con Bot Framework. El identificador debe ser un GUID. |