Impossible d’enregistrer une réunion en tant que brouillon dans Outlook pour Mac à l’aide de l’API Office JS

Numéro de la base de connaissances d’origine : 4505745

Symptômes

Microsoft Outlook pour Mac ne prend pas en charge saveAsync sur une réunion en mode Composition. Les compléments Outlook ne peuvent pas obtenir l’identificateur d’élément. Cela signifie que les compléments ne peuvent pas identifier et communiquer de manière unique avec Microsoft Exchange pour mettre à jour ou écouter les modifications apportées à l’élément.

Solution de contournement

Pour contourner ce problème, vous pouvez définir une propriété étendue (customProperty : API Office JS) sur l’élément. Une propriété étendue fait partie de l’élément et est disponible sur Exchange dès que l’élément est envoyé. Par conséquent, le complément peut interroger ou écouter les éléments dont la propriété étendue est définie.

Pour définir la propriété, procédez comme suit :

  1. Choisissez l’un des ensembles d’API suivants à utiliser :

    1. EWS
    2. REST
    3. Graph
  2. Obtenez un jeton valide pour chaque ensemble d’API :

    1. EWS : utiliser getCallbackTokenAsync
    2. REST : Utilisez getCallbackTokenAsync avec options.isRest = true
    3. Graphe : utiliser le jeton onBehalfOf
  3. Interroger ou écouter des événements de calendrier :

    1. EWS : S’abonner à l’événement créé
    2. REST : S’abonner à la notification créée et filtrer en fonction de la propriété étendue
    3. Graphique : Abonnez-vous à la notification créée et filtrez en fonction de la propriété étendue
  4. Recherchez la propriété étendue correspondante sur Exchange :

    1. EWS:

      ExtendedFieldURI {PropertySet = PS_PUBLIC_STRINGS, PropertyName = cecp-add-in< ID from manifest>}

    2. REST/Graph :

      SingleValueExtendedProperties { PropertyId = String {00020329-0000-0000-c000-000000000046} Nommez l’ID cecp-add-in< à partir du manifeste>}

  5. Utilisez la notification envoyée au webhook pour mettre à jour le back-end avec itemId lorsque l’abonnement réussit.