Créer une page de suppression
Vous pouvez étendre et améliorer l’expérience utilisateur en prenant en charge les options de suppression et de modification dans votre application. Teams permet aux utilisateurs de renommer ou de supprimer un canal ou un onglet de groupe, et vous pouvez autoriser les utilisateurs à reconfigurer votre onglet après l’installation. En outre, l’expérience de suppression d’onglets offre aux utilisateurs des options de post-suppression permettant de supprimer ou d’archiver du contenu.
Remarque
Cette rubrique reflète la version 2.0.x de la bibliothèque de client JavaScript Microsoft Teams (TeamsJS). Si vous utilisez une version antérieure, reportez-vous à la vue d’ensemble de la bibliothèque TeamsJS pour obtenir des conseils sur les différences entre la dernière version de TeamsJS et les versions antérieures.
Activer la reconfiguration de votre onglet après l’installation
Votre manifest.json
définit les fonctionnalités et fonctionnalités de votre onglet. La propriété d’instance canUpdateConfiguration
tab prend une valeur booléenne qui indique si un utilisateur peut modifier ou reconfigurer l’onglet après sa création. Le tableau suivant fournit les détails de la propriété :
Nom | Type | Taille maximale | Requis | Description |
---|---|---|---|---|
canUpdateConfiguration |
Boolean | Valeur indiquant si une instance de la configuration de l’onglet peut être mise à jour par l’utilisateur après sa création. La valeur par défaut est true . |
Lorsque votre onglet est chargé dans une conversation de canal ou de groupe, Teams ajoute un menu déroulant contextuel pour votre onglet. Les options disponibles sont déterminées par le canUpdateConfiguration
paramètre . Le tableau suivant fournit les détails du paramètre :
canUpdateConfiguration |
true | false | description |
---|---|---|---|
Paramètres | √ | La configurationUrl page est rechargée dans un iFrame, ce qui permet à l’utilisateur de reconfigurer l’onglet. |
|
Renommer | √ | √ | L’utilisateur peut modifier le nom de l’onglet tel qu’il apparaît dans la barre d’onglets. |
Supprimer | √ | √ | Si la propriété et la removeURL valeur sont incluses dans la page de configuration, la page de suppression est chargée dans un iFrame et présentée à l’utilisateur. Si aucune page de suppression n’est incluse, une boîte de dialogue de confirmation s’affiche à l’utilisateur. |
Créer une page de suppression d’onglet pour votre application
La page de suppression facultative est une page HTML que vous hébergez et qui s’affiche lorsque l’onglet est supprimé. L’URL de la page de suppression est désignée par la setConfig()
méthode (ou setSettings()
avant TeamsJS v.2.0.0) dans votre page de configuration. Comme pour toutes les pages de votre application, la page de suppression doit respecter conditions préalables de l’onglet Teams.
Inscrire un gestionnaire de suppression
Si vous le souhaitez, dans votre logique de suppression de page, vous pouvez appeler le registerOnRemoveHandler((RemoveEvent) => {}
gestionnaire d’événements lorsque l’utilisateur supprime une configuration d’onglet existante. La méthode accepte l’interface RemoveEvent
et exécute le code dans le gestionnaire lorsqu’un utilisateur tente de supprimer du contenu. La méthode est utilisée pour effectuer des opérations de nettoyage telles que la suppression de la ressource sous-jacente qui alimente le contenu de l’onglet. À la fois, le gestionnaire de suppression peut être inscrit.
L’interface RemoveEvent
décrit un objet avec deux méthodes :
La fonction
notifySuccess()
est requise. Il indique que la suppression de la ressource sous-jacente a réussi et que son contenu peut être supprimé.La fonction
notifyFailure(string)
est facultative. Cela indique que la suppression de la ressource sous-jacente a échoué et que son contenu ne peut pas être supprimé. Le paramètre de chaîne facultatif spécifie une raison de l’échec. Si elle est fournie, cette chaîne s’affiche pour l’utilisateur ; sinon, une erreur générique s’affiche.
Utiliser la fonction getConfig()
Vous pouvez utiliser getConfig()
(anciennement getSettings()
) pour affecter le contenu de l’onglet à supprimer. La getConfig()
fonction retourne une promesse qui se résout avec l’objet Config et fournit les valeurs de propriété de paramètres valides qui peuvent être récupérées.
Utiliser la fonction getContext()
Vous pouvez utiliser getContext()
pour obtenir le contexte actuel dans lequel le frame s’exécute. La getContext()
fonction retourne une promesse qui se résout avec l’objet Context. L’objet Context fournit des valeurs de propriété valides Context
que vous pouvez utiliser dans votre logique de suppression de page pour déterminer le contenu à afficher dans la page de suppression.
Inclure l’authentification
L’authentification est requise avant de permettre à un utilisateur de supprimer le contenu de l’onglet. Les informations de contexte peuvent être utilisées pour aider à construire des demandes d’authentification et des URL de page d’autorisation. Consultez flux d’authentification Microsoft Teams pour les onglets. Assurez-vous que tous les domaines utilisés dans vos pages d’onglet sont répertoriés dans le validDomains
tableau du manifeste de votre application.
L’exemple suivant est un exemple de bloc de code de suppression de tabulation :
<body>
<button onclick="onClick()">Delete this tab and all underlying data?</button>
<script>
await microsoftTeams.app.initialize();
pages.config.registerOnRemoveHandler((removeEvent) => {
// Here you can designate the tab content to be removed and/or archived.
const configPromise = pages.getConfig();
configPromise.
then((configuration) => {
configuration.contentUrl = "...";
removeEvent.notifySuccess()}).
catch((error) => {removeEvent.notifyFailure("failure message")});
});
const onClick() => {
pages.config.setValidityState(true);
}
</script>
</body>
Lorsqu’un utilisateur sélectionne Supprimer dans le menu déroulant de l’onglet, Teams charge la page facultative removeUrl
affectée dans votre page de configuration, dans un iFrame. L’utilisateur voit s’afficher un bouton chargé avec la onClick()
fonction qui appelle pages.config.setValidityState(true)
et active le bouton Supprimer affiché en bas de l’iFrame de la page de suppression.
Une fois le gestionnaire de suppression exécuté, removeEvent.notifySuccess()
ou removeEvent.notifyFailure()
informe Teams du résultat de la suppression du contenu.
Remarque
- Pour s’assurer que le contrôle d’un utilisateur autorisé sur un onglet n’est pas inhibé, Teams supprime l’onglet dans les cas de réussite et d’échec.
- Après avoir appelé le
registerOnRemoveHandler
gestionnaire d’événements, répondez à la méthode dans les 15 secondes. L’application doit appelersetValidityState(true)
pour activer le bouton Supprimer et pour que le gestionnaire de suppression soit appelé. Le bouton Supprimer est activé au bout de cinq secondes. - Lorsque l’utilisateur sélectionne Supprimer, Teams supprime l’onglet après 30 secondes, que les actions aient été effectuées ou non.