Condividi tramite


Impossibile salvare una riunione come bozza in Outlook per Mac usando l'API JS di Office

Numero KB originale: 4505745

Sintomi

Microsoft Outlook per Mac non supporta saveAsync in una riunione in modalità Compose. I componenti aggiuntivi di Outlook non possono ottenere l'identificatore dell'elemento. Ciò significa che i componenti aggiuntivi non possono identificare e comunicare in modo univoco con Microsoft Exchange per aggiornare o attendere le modifiche apportate all'elemento.

Soluzione alternativa

Per risolvere questo problema, è possibile impostare una proprietà estesa (customProperty: API JS di Office) nell'elemento. Una proprietà estesa fa parte dell'elemento e sarà disponibile in Exchange non appena l'elemento viene inviato. Pertanto, il componente aggiuntivo può eseguire query o restare in ascolto di elementi con questo set di proprietà esteso.

Per impostare la proprietà , seguire questa procedura:

  1. Scegliere uno dei set di API seguenti da usare:

    1. EWS
    2. REST
    3. Graph
  2. Ottenere un token valido per ogni set di API:

    1. EWS: usare getCallbackTokenAsync
    2. REST: usare getCallbackTokenAsync con options.isRest = true
    3. Graph: usare il token onBehalfOf
  3. Eseguire query o attendere gli eventi del calendario:

    1. EWS: sottoscrivere l'evento creato
    2. REST: sottoscrivere la notifica creata e filtrare in base alla proprietà estesa
    3. Graph: sottoscrivere la notifica creata e filtrare in base alla proprietà estesa
  4. Trovare la proprietà estesa corrispondente in 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-00000000046} Name cecp-add-in< ID from manifest>}

  5. Usare la notifica inviata al webhook per aggiornare il back-end con itemId quando la sottoscrizione ha esito positivo.