Partager via


Gérer les tâches alimentées par les applications dans Planificateur pour des expériences de tâches personnalisées

Remarque

Cette fonctionnalité est actuellement en préversion publique.

Vue d’ensemble

La fonctionnalité tâches alimentées par l’application offre à votre organization plus de contrôle sur ce que les utilisateurs voient lorsqu’ils ouvrent leurs tâches dans l’application Planificateur dans Microsoft Teams. Au lieu d’afficher uniquement l’ensemble standard de champs de tâche, vous pouvez fournir aux utilisateurs une expérience adaptée à la tâche en cours. Cette expérience peut être un ensemble de champs spécifiques au flux de travail ou des instructions pas à pas pour guider l’utilisateur dans un flux de travail du début à la fin. Pour ce faire, vous intégrez une application Teams à la tâche et vous créez ces tâches par programme.

Supposons, par exemple, que les utilisateurs de votre organization utilisent une application Teams pour suivre et effectuer des inspections. Vous pouvez intégrer cette application d’inspection à des tâches afin qu’une tâche Planificateur soit créée pour chaque inspection suivie dans le système.

  • Lorsqu’un utilisateur ouvre l’une de ces tâches à partir de l’application Planificateur dans Teams, il voit un écran simplifié avec un bouton pour accéder directement à l’expérience d’inspection optimisée par votre application d’inspection.
  • Lorsqu’ils terminent la tâche et terminent l’expérience d’inspection, ils sont de retour à Planificateur où ils ont commencé.

Les utilisateurs bénéficient de l’expérience personnalisée qu’une application Teams fournit directement dans les tâches qui leur sont assignées. Ils n’ont pas besoin d’accéder à une autre application pour accomplir leur travail ou perdre le contexte où ils se trouvaient lors de l’utilisation de leurs tâches.

En plus de ces avantages lorsque les utilisateurs effectuent des tâches, la fonctionnalité tâches alimentées par l’application permet aux organisations de refléter les processus métier et les flux de travail requis en tant que tâches, afin que les employés puissent voir tout le travail dont ils sont responsables à partir d’un emplacement unique.

Cette expérience est prise en charge dans l’application Planificateur sur le web, le bureau et les appareils mobiles Teams. Vous pouvez fournir des expériences de tâches personnalisées à vos utilisateurs avec n’importe quelle application Teams qui répond aux exigences suivantes.

Conditions requises

Les tâches alimentées par l’application sont une fonctionnalité d’extensibilité qui s’appuie sur la création et la gestion par programmation des tâches. Les conditions requises pour utiliser cette fonctionnalité sont les suivantes.

Cette fonctionnalité permet à votre application Teams de destination de régir le cycle de vie des tâches, car certains flux de travail peuvent ne pas avoir de flux déterministes. Par conséquent, l’application Planificateur ne sait pas si toutes les étapes requises sont terminées. Par exemple, une découverte lors d’une inspection peut entraîner l’inclusion de plusieurs étapes supplémentaires dans l’inspection. De même, les utilisateurs ne peuvent pas mettre à jour les champs de tâche ou marquer la tâche comme terminée. Ces actions peuvent avoir pour effet que les utilisateurs effectuent des modifications en conflit avec ce qui se reflète dans votre application Teams de destination.

Créer une tâche basée sur l’application

Cette section explique comment utiliser l’API Create businessScenarioTask pour créer une tâche basée sur l’application.

Utilisez la requête HTTP POST suivante. Voici à quoi ressemble la requête, avec des espaces réservés pour les propriétés que vous spécifiez.

Demande

POST https://graph.microsoft.com/beta/solutions/businessScenarios/{your-business-scenario-ID}/planner/tasks 

{ 
"title": "{Task title}", 
    "target": { 
        "@odata.type": "#microsoft.graph.businessScenarioGroupTarget", 
        "taskTargetKind": "group", 
        "groupId": "{group ID of the team where you want to create the task}" 
    }, 
    "businessScenarioProperties": { 
        "externalObjectId": "{any unique ID, for example, the ID of the object in your destination app}", 
        "externalBucketId": "{any bucket ID from planConfiguration of your business scenario}" 
    }, 
    "assignments": { 
        "{user ID of user you want to assign the task to}": { 
            "@odata.type": "#microsoft.graph.plannerAssignment", 
            "orderHint": " !" 
        } 
    }, 
    "details": { 
        "references": { 
            "{reference URL}": { 
                "@odata.type": "microsoft.graph.plannerExternalReference", 
                "alias": "{destination app name}", 
                "previewPriority": " !", 
                "type": "TeamsHostedApp" 
            } 
       } 
    } 
} 

Les sections suivantes expliquent comment former la demande plus en détail.

Comment définir les propriétés dans la requête

Un type spécifique de pièce jointe différencie une tâche alimentée par l’application d’une tâche standard. La pièce jointe doit être de type TeamsHostedApp et contenir un lien (URL de référence) spécialement mis en forme vers l’expérience de destination dans l’application Teams. Cela signifie Planificateur que la tâche est une tâche basée sur une application.

Gardez à l’esprit que l’API fait référence à ces pièces jointes en tant que références.

Tout d’abord, vous configurez l’URL de référence pour qu’elle pointe vers l’expérience de destination. Ensuite, spécifiez l’URL de référence ainsi que les autres propriétés requises pour la pièce jointe dans le corps de la demande.

Étape 1 : Configurer l’URL de référence

L’URL de référence utilise un format spécifique. Suivez ces étapes pour construire, puis encoder l’URL.

Étape 1a : Construire l’URL

L’URL de référence à l’expérience de destination doit utiliser la syntaxe de liaison modale Stageview au format suivant :

https://teams.microsoft.com/l/stage/{Teams-app-Id}/0?context={"contentUrl":"URL-to-destination-experience"},"name":"{page-title}","openMode":"modal"}

Pour construire l’URL de référence, spécifiez les paramètres suivants.

Paramètre Description
Teams-app-Id ID d’application de l’application Teams que vous intégrez à la tâche.
URL-to-destination-experience URL qui pointe vers l’expérience cible dans votre application Teams de destination que vous souhaitez que les utilisateurs voient lorsqu’ils ouvrent la tâche. Pour des raisons de sécurité, l’URL doit pointer vers un domaine valide associé à l’application Teams, qui est représenté par l’ID d’application que vous fournissez.
page-title Titre qui doit apparaître en haut de l’écran lorsque l’URL de l’expérience de destination est affichée à l’utilisateur.

Voici un exemple d’URL de référence avant l’encodage :

https://teams.microsoft.com/l/stage/com.microsoft.teamspace.tab.youtube/0?context={"contentUrl":"https://tabs.teams.microsoft.com/youtubeContentStage?videoId=HBGmSy1iVmY","name":"Security%20talk","openMode":"modal"}

Dans cet exemple :

  • Teams-app-Id est l’ID d’application de l’application YouTube dans Teams (com.microsoft.teamspace.tab.youtube). Gardez à l’esprit que la plupart des ID d’application Teams sont alphanumériques et peuvent être différents.
  • URL-to-destination-experience pointe vers l’expérience dans l’application Teams de destination (https://tabs.teams.microsoft.com/youtubeContentStage?videoId=HBGmSy1iVmY).
  • page-title est le nom du titre de l’écran (Security talk) lors du chargement de l’URL.

Si l’application YouTube dans Teams est disponible, vous pouvez vous envoyer cette URL et confirmer qu’elle s’ouvre.

Étape 1b : Encoder l’URL

Vous devez encoder l’URL de référence avant de pouvoir l’utiliser dans la pièce jointe. L’encodage en pourcentage garantit que le lien est dans un format compatible pour une utilisation par programmation.

Procédez comme suit pour encoder l’URL de référence. Nous utilisons l’exemple d’URL de référence décrit précédemment pour montrer comment encoder l’URL.

  1. Pourcentage d’encodage de la partie de l’URL qui suit 0?context=. N’encodez https:// pas ou = (symbole égal), ni aucun des caractères entre les deux.

    https://teams.microsoft.com/l/stage/com.microsoft.teamspace.tab.youtube/0?context=%7B%22contentUrl%22%3A%22https%3A%2F%2Ftabs.teams.microsoft.com%2FyoutubeContentStage%3FvideoId%3DHBGmSy1iVmY%22%2C%22name%22%3A%22Security%2520talk%22%2C%22openMode%22%3A%22modal%22%7D

    Pourboire

    Il s’agit de la dernière étape où le lien peut être facilement validé dans la conversation Teams. Une fois cette étape terminée, vous pouvez tester l’URL en l’envoyant vous-même dans une conversation Teams. Le lien doit s’ouvrir sur le bureau, le web ou le mobile Teams pour tout utilisateur ayant accès à l’application de destination dans Teams.

  2. Remplacez tous les. caractères de l’URL de référence par %2E. Vous devez effectuer cette opération sur tous les caractères de l’URL de référence, du début à la fin. Si vous ignorez cette étape, l’URL de référence risque de ne pas fonctionner.

    L’URL suivante est prête à être utilisée par programmation.

    https://teams%2Emicrosoft%2Ecom/l/stage/com%2Emicrosoft%2Eteamspace%2Etab%2Eyoutube/0?context=%7B%22contentUrl%22%3A%22https%3A%2F%2Ftabs%2Eteams%2Emicrosoft%2Ecom%2FyoutubeContentStage%3FvideoId%3DHBGmSy1iVmY%22%2C%22name%22%3A%22Security%2520talk%22%2C%22openMode%22%3A%22modal%22%7D

    Remarque

    Si votre URL pointe vers une application Power App, assurez-vous qu’elle inclut le &source=teamstab paramètre pour que l’authentification unique (SSO) fonctionne pour Power Apps et le &skipMobileRedirect=1 paramètre pour ignorer l’écran qui invite les utilisateurs à ouvrir le lecteur Power App autonome.

Étape 2 : Définir la pièce jointe

Pour définir la pièce jointe, spécifiez les propriétés suivantes dans "references" dans le corps de la demande.

        "references": { 
            "{reference-URL}": { 
            "@odata.type": "microsoft.graph.plannerExternalReference", 
            "alias": "{destination app name}", 
            "previewPriority": " !", 
            "type": "TeamsHostedApp" 
         } 
       } 
Propriété Description
reference-URL URL de l’expérience de destination, dans la syntaxe de liaison modale Stageview. Pour plus d’informations sur la façon de construire et d’encoder l’URL, consultez la section Étape 1 : Configurer l’URL de référence de cet article.
alias Nom de votre application Teams. Lorsqu’un utilisateur ouvre la tâche, il voit un message indiquant : « Effectuez cette tâche dans <l’alias> et un bouton Démarrer la tâche pour accéder à l’expérience de destination.
previewPriority Conservez la valeur !.
type Définissez sur TeamsHostedApp. C’est ce qui signifie pour Planificateur que la tâche est une tâche basée sur une application.

Exemple

Cet exemple montre comment créer une tâche basée sur une application nommée « Examiner la présentation des pratiques de sécurité » et l’affecter à un utilisateur nommé Adele Vance (ID utilisateur 44ee44ee-ff55-aa66-bb77-88cc88cc88cc88cc). Cette requête utilise l’exemple d’URL de référence de la section Étape 1 : Configurer l’URL de référence de cet article.

Demande

POST https://graph.microsoft.com/beta/solutions/businessScenarios/ccd5aa8aebd048bd839a4fa5b7420631/planner/tasks

{
"title": "Review security practices presentation",
    "target": {
        "@odata.type": "#microsoft.graph.businessScenarioGroupTarget",
        "taskTargetKind": "group",
        "groupId": "769bbf41-70b7-4ea6-a044-a7037358883e"
    },
    "businessScenarioProperties": {
        "externalObjectId": "SP-202418",
        "externalBucketId": "Security practices"
    },
    "assignments": {
        "44ee44ee-ff55-aa66-bb77-88cc88cc88cc": {
            "@odata.type": "#microsoft.graph.plannerAssignment",
            "orderHint": " !"
        }
    },
    "details": {
        "references": {
            "https://teams%2Emicrosoft%2Ecom/l/stage/com%2Emicrosoft%2Eteamspace%2Etab%2Eyoutube/0?context=%7B%22contentUrl%22%3A%22https%3A%2F%2Ftabs%2Eteams%2Emicrosoft%2Ecom%2FyoutubeContentStage%3FvideoId%3DHBGmSy1iVmY%22%2C%22name%22%3A%22Security%2520talk%22%2C%22openMode%22%3A%22modal%22%7D": {
                "@odata.type": "microsoft.graph.plannerExternalReference",
                "alias": "Security practices presentation",
                "previewPriority": " !",
                "type": "TeamsHostedApp"
             }
        }
    }
}

Remarque

Cet exemple d’URL de référence a été choisi comme un moyen simple de tester l’expérience des tâches alimentées par l’application à l’aide d’une application disponible dans de nombreux environnements d’organisations. Gardez à l’esprit qu’avec cet exemple d’URL de référence, les utilisateurs ne pourront pas effectuer la tâche. En effet, l’application YouTube n’est pas intégrée aux tâches alimentées par l’application et n’effectue pas d’appel d’API pour marquer la tâche comme terminée après la lecture de la vidéo.

À quoi cela ressemble dans l’application Planificateur

Voici ce que l’utilisateur voit lorsqu’il ouvre la tâche dans l’application Planificateur dans Teams. La sélection du bouton Démarrer la tâche permet à l’utilisateur d’accéder à l’expérience de destination dans l’application Teams. Dans cet exemple, l’expérience de destination est une vidéo de pratiques de sécurité dans l’application YouTube dans Teams.

Capture d’écran d’un exemple de tâche alimentée par une application dans Mes tâches dans l’application Planificateur dans Teams.

Pour en savoir plus sur l’expérience utilisateur, consultez Utiliser des tâches alimentées par l’application dans l’application Planificateur dans Teams.