Schéma de manifeste de l’aperçu développeur pour Microsoft teamsDeveloper preview manifest schema for Microsoft Teams

Notes

Pour plus d’informations sur le programme et sur la procédure de participation, voir developer preview .See Developer Preview for information on the program and how you can join. Si vous n’utilisez pas l’aperçu du développeur, vous ne devez pas utiliser cette version du manifeste.If you are not using the developer preview you should not be using this version of the manifest. Voir référence : schéma de manifeste pour Microsoft teams pour la version publique du manifeste.See Reference: Manifest schema for Microsoft Teams for the public version of the manifest.

Le manifeste Microsoft teams décrit la façon dont l’application s’intègre dans le produit Microsoft Teams.The Microsoft Teams manifest describes how the app integrates into the Microsoft Teams product. Votre manifeste doit être conforme au schéma hébergé sur https://raw.githubusercontent.com/OfficeDev/microsoft-teams-app-schema/preview/DevPreview/MicrosoftTeams.schema.json.Your manifest must conform to the schema hosted at https://raw.githubusercontent.com/OfficeDev/microsoft-teams-app-schema/preview/DevPreview/MicrosoftTeams.schema.json.

Pour plus d’informations sur les fonctionnalités disponibles, voir : Features in the public developer preview for Microsoft teams.For more information on the features available see: Features in the Public Developer Preview for Microsoft Teams.

Exemple de manifeste completSample full manifest

{
  "$schema": "https://raw.githubusercontent.com/OfficeDev/microsoft-teams-app-schema/preview/DevPreview/MicrosoftTeams.schema.json",
  "manifestVersion": "devPreview",
  "version": "1.0.0",
  "id": "%MICROSOFT-APP-ID%",
  "packageName": "com.example.myapp",
  "devicePermissions" : [ "geolocation", "media" ],
  "developer": {
    "name": "Publisher Name",
    "websiteUrl": "https://website.com/",
    "privacyUrl": "https://website.com/privacy",
    "termsOfUseUrl": "https://website.com/app-tos",
    "mpnId": "1234567890"
  },
  "localizationInfo": {
    "defaultLanguageTag": "es-es",
    "additionalLanguages": [
      {
        "languageTag": "en-us",
        "file": "en-us.json"
      }
    ]
  },
  "name": {
    "short": "Name of your app (<=30 chars)",
    "full": "Full name of app, if longer than 30 characters"
  },
  "description": {
    "short": "Short description of your app",
    "full": "Full description of your app"
  },
  "icons": {
    "outline": "%FILENAME-32x32px%",
    "color": "%FILENAME-192x192px"
  },
  "accentColor": "%HEX-COLOR%",
  "configurableTabs": [
    {
      "configurationUrl": "https://contoso.com/teamstab/configure",
      "canUpdateConfiguration": true,
      "scopes": [ "team", "groupchat" ]
    }
  ],
  "staticTabs": [
    {
      "entityId": "idForPage",
      "name": "Display name of tab",
      "contentUrl": "https://contoso.com/content?host=msteams",
      "websiteUrl": "https://contoso.com/content",
      "scopes": [ "personal" ]
    }
  ],
  "bots": [
    {
      "botId": "%MICROSOFT-APP-ID-REGISTERED-WITH-BOT-FRAMEWORK%",
      "needsChannelSelector": false,
      "isNotificationOnly": false,
      "scopes": [ "team", "personal", "groupchat" ],
      "supportsFiles": true,
      "commandLists": [
        {
          "scopes": [ "team", "groupchat" ],
          "commands": [
            {
              "title": "Command 1",
              "description": "Description of Command 1"
            },
            {
              "title": "Command N",
              "description": "Description of Command N"
            }
          ]
        },
        {
          "scopes": [ "personal", "groupchat" ],
          "commands": [
            {
              "title": "Personal command 1",
              "description": "Description of Personal command 1"
            },
            {
              "title": "Personal command N",
              "description": "Description of Personal command N"
            }
          ]
        }
      ]
    }
  ],
  "connectors": [
    {
      "connectorId": "GUID-FROM-CONNECTOR-DEV-PORTAL%",
      "configurationUrl": "https://contoso.com/teamsconnector/configure",
      "scopes": [ "team"]
    }
  ],
  "composeExtensions": [
    {
      "botId": "%MICROSOFT-APP-ID-REGISTERED-WITH-BOT-FRAMEWORK%",
      "canUpdateConfiguration": true,
      "commands": [
        {
          "id": "exampleCmd1",
          "title": "Example Command",
          "description": "Command Description; e.g., Search on the web",
          "initialRun": true,
          "type" : "search",
          "context" : ["compose", "commandBox"],
          "parameters": [
            {
              "name": "keyword",
              "title": "Search keywords",
              "description": "Enter the keywords to search for"
            }
          ]
        },
        {
          "id": "exampleCmd2",
          "title": "Example Command 2",
          "description": "Command Description; e.g., Search for a customer",
          "initialRun": true,
          "type" : "action",
          "fetchTask" : true,
          "context" : ["message"],
          "parameters": [
            {
              "name": "custinfo",
              "title": "Customer name",
              "description": "Enter a customer name",
              "inputType" : "text"
            }
          ]
        },
        {
          "id": "exampleMessageHandler",
          "title": "Message Handler",
          "description": "Domains that will create a preview when pasted into the compose box",
          "messageHandlers": [
            {
              "type" : "link",
              "value" : {
                "domains" : [
                  "mysite.someplace.com",
                  "othersite.someplace.com"
                ]
              }
            }
          ]
        }
      ]
    }
  ],
  "permissions": [
    "identity",
    "messageTeamMembers",
  ],
  "validDomains": [
     "contoso.com",
     "mysite.someplace.com",
     "othersite.someplace.com"
  ]
}

Le schéma définit les propriétés suivantes :The schema defines the following properties:

$schema$schema

Facultatif, mais chaîne recommandéeOptional, but recommended – String

URL https://référençant le schéma JSON du manifeste.The https:// URL referencing the JSON Schema for the manifest.

manifestVersionmanifestVersion

Chaîne obligatoireRequired – String

Version du schéma de manifeste utilisé par ce manifeste.The version of the manifest schema this manifest is using. Il doit être « devPreview ».It should be "devPreview".

versionversion

Chaîne obligatoireRequired – String

Version de l’application spécifique.The version of the specific app. Si vous mettez à jour un événement dans votre manifeste, la version doit également être incrémentée.If you update something in your manifest, the version must be incremented as well. Ainsi, lorsque le nouveau manifeste est installé, il remplace celui existant et l’utilisateur a accès aux nouvelles fonctionnalités.This way, when the new manifest is installed, it will overwrite the existing one and the user will get the new functionality. Si cette application a été envoyée au magasin, le nouveau manifeste doit être soumis à nouveau et revalidé.If this app was submitted to the store, the new manifest will have to be re-submitted and re-validated. Ensuite, les utilisateurs de cette application obtiendront automatiquement le nouveau manifeste mis à jour en quelques heures, une fois celui-ci approuvé.Then, users of this app will get the new updated manifest automatically in a few hours, after it is approved.

Si l’application a demandé une modification des autorisations, les utilisateurs sont invités à effectuer une mise à niveau et à reconfigurer l’application.If the app requested permissions change, users will be prompted to upgrade and re-consent to the app.

Cette chaîne de version doit suivre la norme semver (major. Petites. CORRECTIF).This version string must follow the semver standard (MAJOR.MINOR.PATCH).

idid

ID d’application Microsoft requisRequired – Microsoft app ID

Identificateur unique généré par Microsoft pour cette application.The unique Microsoft-generated identifier for this app. Si vous avez inscrit un robot via Microsoft bot Framework ou si l’application Web de votre onglet se connecte déjà à Microsoft, vous devez déjà avoir un ID et l’entrer ici.If you have registered a bot via the Microsoft Bot Framework, or your tab's web app already signs in with Microsoft, you should already have an ID and should enter it here. Dans le cas contraire, vous devez générer un nouvel ID dans le portail d’inscription des applications Microsoft (mes applications), l’entrer ici, puis le réutiliser lorsque vous Ajoutez un bot.Otherwise, you should generate a new ID at the Microsoft Application Registration Portal (My Applications), enter it here, and then reuse it when you add a bot.

packageNamepackageName

Chaîne obligatoireRequired – String

Un identificateur unique pour cette application dans la notation de domaine inverse ; par exemple, com. example. MyApp.A unique identifier for this app in reverse domain notation; for example, com.example.myapp.

developerdeveloper

ObligatoireRequired

Spécifie les informations relatives à votre société.Specifies information about your company. Pour les applications soumises à AppSource (anciennement Office Store), ces valeurs doivent correspondre aux informations contenues dans votre entrée AppSource.For apps submitted to AppSource (formerly Office Store), these values must match the information in your AppSource entry.

NomName Taille maximaleMaximum size RequisRequired DescriptionDescription
name 32 caractères32 characters Nom complet du développeur.The display name for the developer.
websiteUrl 2 048 caractères2048 characters URL https://vers le site Web du développeur.The https:// URL to the developer's website. Ce lien doit prendre les utilisateurs à la page d’accueil de votre entreprise ou de votre propre produit.This link should take users to your company or product-specific landing page.
privacyUrl 2 048 caractères2048 characters URL https://vers la stratégie de confidentialité du développeur.The https:// URL to the developer's privacy policy.
termsOfUseUrl 2 048 caractères2048 characters L’URL https://vers les conditions d’utilisation du développeur.The https:// URL to the developer's terms of use.
mpnId 10 caractères10 characters Facultatif ID réseau du partenaire Microsoft qui identifie l’organisation partenaire qui crée l’application.Optional The Microsoft Partner Network ID that identifies the partner organization building the app.

localizationInfolocalizationInfo

OptionalOptional

Permet de spécifier une langue par défaut, ainsi que des pointeurs vers des fichiers de langue supplémentaires.Allows the specification of a default language, as well as pointers to additional language files. Consultez la rubrique Localization.See localization.

NomName Taille maximaleMaximum size RequisRequired DescriptionDescription
defaultLanguageTag 4 caractères4 characters Balise de langue des chaînes dans ce fichier manifeste de niveau supérieur.The language tag of the strings in this top level manifest file.

localizationInfo.additionalLanguageslocalizationInfo.additionalLanguages

Tableau d’objets spécifiant des traductions de langue supplémentaires.An array of objects specifying additional language translations.

NomName Taille maximaleMaximum size RequisRequired DescriptionDescription
languageTag 4 caractères4 characters Balise de langue des chaînes dans le fichier fourni.The language tag of the strings in the provided file.
file 4 caractères4 characters Chemin d’accès relatif à un fichier. JSON contenant les chaînes traduites.A relative file path to a the .json file containing the translated strings.

nomname

ObligatoireRequired

Nom de l’expérience de votre application, affiché aux utilisateurs dans l’expérience de teams.The name of your app experience, displayed to users in the Teams experience. Pour les applications soumises à AppSource, ces valeurs doivent correspondre aux informations contenues dans votre entrée AppSource.For apps submitted to AppSource, these values must match the information in your AppSource entry. Les valeurs short et full ne doivent pas être identiques.The values of short and full should not be the same.

NomName Taille maximaleMaximum size RequisRequired DescriptionDescription
short 30 caractères30 characters Nom complet court de l’application.The short display name for the app.
full 100 caractères100 characters Nom complet de l’application, utilisé si le nom complet de l’application dépasse les 30 caractères.The full name of the app, used if the full app name exceeds 30 characters.

descriptiondescription

ObligatoireRequired

Décrit votre application aux utilisateurs.Describes your app to users. Pour les applications soumises à AppSource, ces valeurs doivent correspondre aux informations contenues dans votre entrée AppSource.For apps submitted to AppSource, these values must match the information in your AppSource entry.

Assurez-vous que votre description décrit précisément votre expérience et fournit des informations pour aider les clients potentiels à comprendre ce que fait votre expérience.Ensure that your description accurately describes your experience and provides information to help potential customers understand what your experience does. Vous devez également noter, dans la description complète, si un compte externe est requis pour l’utilisation.You should also note, in the full description, if an external account is required for use. Les valeurs short et full ne doivent pas être identiques.The values of short and full should not be the same. Votre description courte ne doit pas être répétée dans la description longue et ne doit pas inclure d’autre nom d’application.Your short description must not be repeated within the long description and must not include any other app name.

NomName Taille maximaleMaximum size RequisRequired DescriptionDescription
short 80 caractères80 characters Brève description de l’expérience de votre application, utilisée lorsque l’espace est limité.A short description of your app experience, used when space is limited.
full 4000 caractères4000 characters Description complète de votre application.The full description of your app.

iconsicons

ObligatoireRequired

Icônes utilisées dans l’application Teams.Icons used within the Teams app. Les fichiers d’icône doivent être inclus dans le package de téléchargement.The icon files must be included as part of the upload package.

NomName Taille maximaleMaximum size RequisRequired DescriptionDescription
outline 2 048 caractères2048 characters Chemin d’accès relatif à une icône de contour PNG 32x32 transparent.A relative file path to a transparent 32x32 PNG outline icon.
color 2 048 caractères2048 characters Chemin d’accès relatif à une icône PNG 192x192 couleur complète.A relative file path to a full color 192x192 PNG icon.

accentColoraccentColor

Chaîne obligatoireRequired – String

Couleur à utiliser en combinaison avec et en arrière-plan pour vos icônes de plan.A color to use in conjunction with and as a background for your outline icons.

La valeur doit être un code de couleur HTML valide commençant par « # », par #4464eeexemple.The value must be a valid HTML color code starting with '#', for example #4464ee.

configurableTabsconfigurableTabs

OptionalOptional

Utilisé lorsque l’expérience de votre application dispose d’un onglet Channel Team qui nécessite une configuration supplémentaire avant d’être ajoutée.Used when your app experience has a team channel tab experience that requires extra configuration before it is added. Les onglets configurables sont pris en charge uniquement dans l’étendue teams et un seul onglet par application est pris en charge.Configurable tabs are supported only in the teams scope, and currently only one tab per app is supported.

L’objet est un tableau contenant tous les éléments du type object.The object is an array with all elements of the type object. Ce bloc est requis uniquement pour les solutions qui fournissent une solution de sous-onglet canal configurable.This block is required only for solutions that provide a configurable channel tab solution.

NomName TypeType Taille maximaleMaximum size RequisRequired DescriptionDescription
configurationUrl ChaîneString 2 048 caractères2048 characters URL https://à utiliser lors de la configuration de l’onglet.The https:// URL to use when configuring the tab.
canUpdateConfiguration BooleanBoolean Valeur indiquant si une instance de la configuration de l’onglet peut être mise à jour par l’utilisateur après sa création.A value indicating whether an instance of the tab's configuration can be updated by the user after creation. DefaulttrueDefault: true
scopes Tableau d’énumérationArray of enum 1 1 Actuellement, les onglets configurables prennent team en groupchat charge uniquement les étendues et.Currently, configurable tabs support only the team and groupchat scopes.
sharePointPreviewImage ChaîneString 20482048 Chemin d’accès relatif à une image d’aperçu de tabulation à utiliser dans SharePoint.A relative file path to a tab preview image for use in SharePoint. Taille 1024 x 768.Size 1024x768.
supportedSharePointHosts Tableau d’énumérationArray of enum 1 1 Définit la manière dont votre onglet sera disponible dans SharePoint.Defines how your tab will be made available in SharePoint. Les options sharePointFullPage sont etsharePointWebPartOptions are sharePointFullPage and sharePointWebPart

staticTabsstaticTabs

OptionalOptional

Définit un ensemble d’onglets qui peuvent être « épinglés » par défaut, sans que l’utilisateur ne les ajoute manuellement.Defines a set of tabs that can be "pinned" by default, without the user adding them manually. Les onglets statiques déclarés dans personal l’étendue sont toujours épinglés à l’expérience personnelle de l’application.Static tabs declared in personal scope are always pinned to the app's personal experience. Les onglets statiques team déclarés dans l’étendue ne sont pas pris en charge actuellement.Static tabs declared in the team scope are currently not supported.

L’objet est un tableau (au maximum 16 éléments) avec tous les éléments du type object.The object is an array (maximum of 16 elements) with all elements of the type object. Ce bloc est requis uniquement pour les solutions qui fournissent une solution d’onglet statique.This block is required only for solutions that provide a static tab solution.

NomName TypeType Taille maximaleMaximum size RequisRequired DescriptionDescription
entityId ChaîneString 64 caractères64 characters Identificateur unique de l’entité que l’onglet affiche.A unique identifier for the entity that the tab displays.
name ChaîneString 128 caractères128 characters Nom d’affichage de l’onglet dans l’interface de canal.The display name of the tab in the channel interface.
contentUrl ChaîneString 2 048 caractères2048 characters URL https://qui pointe vers l’interface utilisateur de l’entité à afficher dans la zone de dessin de teams.The https:// URL that points to the entity UI to be displayed in the Teams canvas.
websiteUrl ChaîneString 2 048 caractères2048 characters URL https://vers laquelle pointer si un utilisateur choisit de l’afficher dans un navigateur.The https:// URL to point at if a user opts to view in a browser.
scopes Tableau d’énumérationArray of enum 1 1 Actuellement, les onglets statiques personal prennent en charge uniquement l’étendue, ce qui signifie qu’elle peut être mise en service uniquement dans le cadre de l’expérience personnelle.Currently, static tabs support only the personal scope, which means it can be provisioned only as part of the personal experience.

botsbots

OptionalOptional

Définit une solution de robot, ainsi que des informations facultatives telles que les propriétés de commande par défaut.Defines a bot solution, along with optional information such as default command properties.

L’objet est un tableau (maximum d’un seul élément—, actuellement un seul bot est autorisé par application) à tous les éléments du objecttype.The object is an array (maximum of only 1 element—currently only one bot is allowed per app) with all elements of the type object. Ce bloc est requis uniquement pour les solutions qui fournissent une expérience de robot.This block is required only for solutions that provide a bot experience.

NomName TypeType Taille maximaleMaximum size RequisRequired DescriptionDescription
botId ChaîneString 64 caractères64 characters ID d’application Microsoft unique pour le bot enregistré avec l’infrastructure bot.The unique Microsoft app ID for the bot as registered with the Bot Framework. Il peut s’agir de la même chose que l' ID d’applicationglobal.This may well be the same as the overall app ID.
needsChannelSelector BooleanBoolean Indique si le bot utilise un Conseil de l’utilisateur pour ajouter le bot à un canal spécifique.Describes whether or not the bot utilizes a user hint to add the bot to a specific channel. DefaultfalseDefault: false
isNotificationOnly BooleanBoolean Indique si un bot est un robot à sens unique, par opposition à un bot de conversation.Indicates whether a bot is a one-way, notification-only bot, as opposed to a conversational bot. DefaultfalseDefault: false
supportsFiles BooleanBoolean Indique si le bot prend en charge la possibilité de télécharger ou de télécharger des fichiers dans une conversation personnelle.Indicates whether the bot supports the ability to upload/download files in personal chat. DefaultfalseDefault: false
scopes Tableau d’énumérationArray of enum 3 3 Indique si le bot offre une expérience dans le contexte d’un canal dans un team, dans une conversation de groupegroupchat() ou dans une expérience étendue à un utilisateur individuel (personal).Specifies whether the bot offers an experience in the context of a channel in a team, in a group chat (groupchat), or an experience scoped to an individual user alone (personal). Ces options ne sont pas exclusives.These options are non-exclusive.

bots. commandListsbots.commandLists

Liste facultative de commandes que votre bot peut recommander aux utilisateurs.An optional list of commands that your bot can recommend to users. L’objet est un tableau (nombre maximal de 2 éléments) avec tous les éléments objectde type ; vous devez définir une liste de commandes distincte pour chaque étendue prise en charge par votre bot.The object is an array (maximum of 2 elements) with all elements of type object; you must define a separate command list for each scope that your bot supports. Pour plus d’informations, voir menus de bot .See Bot menus for more information.

NomName TypeType Taille maximaleMaximum size RequisRequired DescriptionDescription
items.scopes Tableau d’énumérationarray of enum 3 3 Spécifie l’étendue pour laquelle la liste de commandes est valide.Specifies the scope for which the command list is valid. Les options teamsont personal, et groupchat.Options are team, personal, and groupchat.
items.commands Tableau d’objetsarray of objects 10 10 Tableau de commandes pris en charge par le bot :An array of commands the bot supports:
title: nom de la commande bot (chaîne, 32)title: the bot command name (string, 32)
description: description simple ou exemple de la syntaxe de commande et de son argument (String, 128)description: a simple description or example of the command syntax and its argument (string, 128)

ceuxconnectors

OptionalOptional

Le connectors bloc définit un connecteur Office 365 pour l’application.The connectors block defines an Office 365 Connector for the app.

L’objet est un tableau (un maximum de 1 élément) avec tous les éléments objectde type.The object is an array (maximum of 1 element) with all elements of type object. Ce bloc est requis uniquement pour les solutions qui fournissent un connecteur.This block is required only for solutions that provide a Connector.

NomName TypeType Taille maximaleMaximum size RequisRequired DescriptionDescription
configurationUrl ChaîneString 2 048 caractères2048 characters URL https://à utiliser lors de la configuration du connecteur.The https:// URL to use when configuring the connector.
connectorId ChaîneString 64 caractères64 characters Identificateur unique du connecteur correspondant à son ID dans le tableau de bord du développeur de connecteurs.A unique identifier for the Connector that matches its ID in the Connectors Developer Dashboard.
scopes Tableau d’énumérationArray of enum 1 1 Indique si le connecteur offre une expérience dans le contexte d’un canal dans un team, ou une expérience étendue à un utilisateur individuel (personal).Specifies whether the Connector offers an experience in the context of a channel in a team, or an experience scoped to an individual user alone (personal). Actuellement, seule l' team étendue est prise en charge.Currently, only the team scope is supported.

composeExtensionscomposeExtensions

OptionalOptional

Définit une extension de messagerie pour l’application.Defines a messaging extension for the app.

Notes

Le nom de la fonctionnalité a été modifié de « extension de composition » en « extension de messagerie » en novembre 2017, mais le nom de manifeste reste le même afin que les extensions existantes continuent de fonctionner.The name of the feature was changed from "compose extension" to "messaging extension" in November, 2017, but the manifest name remains the same so that existing extensions continue to function.

L’objet est un tableau (un maximum de 1 élément) avec tous les éléments objectde type.The object is an array (maximum of 1 element) with all elements of type object. Ce bloc est requis uniquement pour les solutions qui fournissent une extension de messagerie.This block is required only for solutions that provide a messaging extension.

NomName TypeType Taille maximaleMaximum Size RequisRequired DescriptionDescription
botId ChaîneString 6464 ID d’application Microsoft unique pour le bot qui sauvegarde l’extension de messagerie, tel qu’inscrit auprès de l’infrastructure bot.The unique Microsoft app ID for the bot that backs the messaging extension, as registered with the Bot Framework. Il peut s’agir de la même chose que l' ID d’applicationglobal.This may well be the same as the overall app ID.
canUpdateConfiguration BooleanBoolean Valeur indiquant si la configuration d’une extension de messagerie peut être mise à jour par l’utilisateur.A value indicating whether the configuration of a messaging extension can be updated by the user. La valeur par falsedéfaut est.The default is false.
commands Tableau d’objetsArray of object 10 10 Tableau de commandes prises en charge par l’extension de messagerieArray of commands the messaging extension supports

composeExtensions. CommandscomposeExtensions.commands

Votre extension de messagerie doit déclarer une ou plusieurs commandes.Your messaging extension should declare one or more commands. Chaque commande apparaît dans Microsoft teams comme une interaction potentielle à partir du point d’entrée basé sur l’interface utilisateur.Each command appears in Microsoft Teams as a potential interaction from the UI-based entry point. Il y a un maximum de 10 commandes.There is a maximum of 10 commands.

Chaque élément de commande est un objet de la structure suivante :Each command item is an object with the following structure:

NomName TypeType Taille maximaleMaximum size RequisRequired DescriptionDescription
id ChaîneString 64 caractères64 characters ID de la commandeThe ID for the command
type ChaîneString 64 caractères64 characters Type de la commande.Type of the command. L’une query ou actionl’autre.One of query or action. DefaultqueryDefault: query
title ChaîneString 32 caractères32 characters Nom de commande convivialThe user-friendly command name
description ChaîneString 128 caractères128 characters La description qui s’affiche pour les utilisateurs afin d’indiquer la finalité de cette commande.The description that appears to users to indicate the purpose of this command
initialRun BooleanBoolean Valeur booléenne indiquant si la commande doit être exécutée initialement sans paramètre.A Boolean value that indicates whether the command should be run initially with no parameters. DefaultfalseDefault: false
context Tableau de chaînesArray of Strings 3 3 Définit l’emplacement à partir duquel l’extension de message peut être appelée.Defines where the message extension can be invoked from. Toute combinaison de compose, commandBox, message.Any combination of compose, commandBox, message. Valeur par défaut est["compose", "commandBox"]Default is ["compose", "commandBox"]
fetchTask BooleanBoolean Une valeur booléenne qui indique s’il doit extraire le module de tâches de façon dynamique.A boolean value that indicates if it should fetch the task module dynamically
taskInfo ObjetObject Spécifier le module de tâche à précharger lors de l’utilisation d’une commande d’extension de messagerieSpecify the task module to preload when using a messaging extension command
taskInfo.title ChaîneString 6464 Titre de la boîte de dialogue initialeInitial dialog title
taskInfo.width ChaîneString Largeur de la boîte de dialogue-soit un nombre en pixels, soit une mise en page par défaut telle que « grande », « moyen » ou « petite »Dialog width - either a number in pixels or default layout such as 'large', 'medium', or 'small'
taskInfo.height ChaîneString Hauteur de la boîte de dialogue : nombre en pixels ou mise en page par défaut, par exemple, « grande », « moyen » ou « petite »Dialog height - either a number in pixels or default layout such as 'large', 'medium', or 'small'
taskInfo.url ChaîneString URL d’affichage WebView initialeInitial webview URL
messageHandlers Tableau d’objetsArray of Objects 5 5 Liste de gestionnaires permettant d’appeler des applications lorsque certaines conditions sont remplies.A list of handlers that allow apps to be invoked when certain conditions are met. Les domaines doivent également être affichés dansvalidDomainsDomains must also be listed in validDomains
messageHandlers.type ChaîneString Type de gestionnaire de messages.The type of message handler. Doit être "link".Must be "link".
messageHandlers.value.domains Tableau de chaînesArray of Strings Tableau de domaines pour lesquels le gestionnaire de messages de liaison peut s’inscrire.Array of domains that the link message handler can register for.
parameters Tableau d’objetsArray of object 5 5 La liste des paramètres que la commande prend.The list of parameters the command takes. Minimum : 1 ; maximum : 5Minimum: 1; maximum: 5
parameter.name ChaîneString 64 caractères64 characters Nom du paramètre tel qu’il apparaît dans le client.The name of the parameter as it appears in the client. Elle est incluse dans la demande de l’utilisateur.This is included in the user request.
parameter.title ChaîneString 32 caractères32 characters Titre convivial du paramètre.User-friendly title for the parameter.
parameter.description ChaîneString 128 caractères128 characters Chaîne conviviale qui décrit l’objectif de ce paramètre.User-friendly string that describes this parameter’s purpose.
parameter.inputType ChaîneString 128 caractères128 characters Définit le type de contrôle affiché sur un module de tâche fetchTask: truepour.Defines the type of control displayed on a task module for fetchTask: true. text textarea number, date,, time toggle``choicesetOne of text, textarea, number, date, time, toggle, choiceset
parameter.choices Tableau d’objetsArray of Objects 10 10 Options de choix pour le choiceset.The choice options for the choiceset. À utiliser uniquement parameter.inputType lorsque estchoicesetUse only when parameter.inputType is choiceset
parameter.choices.title ChaîneString 128128 Titre du choixTitle of the choice
parameter.choices.value ChaîneString 512512 Valeur du choixValue of the choice

autorisationspermissions

OptionalOptional

Un tableau string qui spécifie les autorisations demandées par l’application, ce qui permet aux utilisateurs finaux de savoir comment effectuer l’extension.An array of string which specifies which permissions the app requests, which lets end users know how the extension will perform. Les options suivantes ne sont pas exclusives :The following options are non-exclusive:

  • identity  Nécessite des informations d’identité d’utilisateuridentity   Requires user identity information
  • messageTeamMembers  Nécessite l’autorisation d’envoyer des messages directs aux membres de l’équipemessageTeamMembers   Requires permission to send direct messages to team members

Si vous modifiez ces autorisations lors de la mise à jour de votre application, vos utilisateurs répéteront le processus de consentement la première fois qu’ils exécuteront l’application mise à jour.Changing these permissions when updating your app will cause your users to repeat the consent process the first time they run the updated app.

devicePermissionsdevicePermissions

Facultatif Tableau de chaînesOptional Array of Strings

Spécifie les fonctionnalités natives sur l’appareil d’un utilisateur auquel votre application peut demander l’accès.Specifies the native features on a user's device that your app may request access to. Les options sont les suivantes :Options are:

  • geolocation
  • media
  • notifications
  • midi
  • openExternal

validDomainsvalidDomains

Facultatif , sauf indication contraireOptional, except Required where noted

Une liste des domaines valides à partir desquels l’application prévoit de charger tout contenu.A list of valid domains from which the app expects to load any content. Les listes de domaine peuvent inclure des caractères génériques *.example.com, par exemple.Domain listings can include wildcards, for example *.example.com. Cela correspond exactement à un segment du domaine ; Si vous devez faire correspondre a.b.example.com , utilisez *.*.example.com.This matches exactly one segment of the domain; if you need to match a.b.example.com then use *.*.example.com. Si la configuration de votre onglet ou de votre interface utilisateur de contenu doit accéder à un autre domaine en plus de celui utilisé pour la configuration d’onglet, ce domaine doit être spécifié ici.If your tab configuration or content UI needs to navigate to any other domain besides the one use for tab configuration, that domain must be specified here.

Toutefois, il n’est pas nécessaire d’inclure les domaines des fournisseurs d’identité que vous souhaitez prendre en charge dans votre application.It is not necessary to include the domains of identity providers you want to support in your app, however. Par exemple, pour authentifier à l’aide d’un ID Google, il est nécessaire de rediriger vers accounts.google.com, mais vous ne validDomains[]devez pas inclure Accounts.google.com dans.For example, to authenticate using a Google ID, it's necessary to redirect to accounts.google.com, but you should not include accounts.google.com in validDomains[].

Important

N’ajoutez pas de domaines qui se trouvent en dehors de votre contrôle, soit directement, soit via des caractères génériques.Do not add domains that are outside your control, either directly or via wildcards. Par exemple, yourapp.onmicrosoft.com est valide, mais *.onmicrosoft.com n’est pas valide.For example, yourapp.onmicrosoft.com is valid, but *.onmicrosoft.com is not valid.

L’objet est un tableau contenant tous les éléments du type string.The object is an array with all elements of the type string.

webApplicationInfowebApplicationInfo

OptionalOptional

Spécifiez l’ID de votre application AAD et les informations graphiques pour aider les utilisateurs à se connecter à votre application AAD de manière transparente.Specify your AAD App ID and Graph information to help users seamlessly sign into your AAD app.

NomName TypeType Taille maximaleMaximum size RequisRequired DescriptionDescription
id ChaîneString 36 caractères36 characters ID de l’application AAD de l’application.AAD application id of the app. Cet ID doit être un GUID.This id must be a GUID.
resource ChaîneString 2 048 caractères2048 characters URL de ressource de l’application pour l’acquisition du jeton d’authentification pour l’authentification unique.Resource url of app for acquiring auth token for SSO.