Office.MessageRead interface

Mode de lecture des messages d’Office.context.mailbox.item.

Important : il s’agit d’un objet Outlook interne, qui n’est pas directement exposé via des interfaces existantes. Vous devez traiter cela comme un mode de Office.context.mailbox.item. Pour plus d’informations, reportez-vous à la page Modèle objet .

Interfaces parentes :

Extends

Propriétés

attachments

Obtient les pièces jointes de l’élément sous forme de tableau.

body

Obtient un objet qui fournit des méthodes permettant de manipuler le corps d’un élément.

cc

Permet d’accéder aux destinataires en copie carbone (Cc) d’un message. Le type d’objet et le niveau d’accès dépendent du mode de l’élément actif.

La cc propriété renvoie un tableau qui contient un objet EmailAddressDetails pour chaque destinataire répertorié sur la ligne Cc du message. Le nombre maximal de destinataires retournés varie selon le client Outlook.

  • Windows : 500 destinataires

  • Android, interface utilisateur Mac classique, iOS : 100 destinataires

  • Navigateur web : 20 destinataires

  • Nouvelle interface utilisateur Mac : aucune limite

conversationId

Obtient l’identificateur de la conversation qui contient un message particulier.

Vous pouvez obtenir un nombre entier de cette propriété si votre application de messagerie est activée dans les formulaires de lecture ou les réponses des formulaires de composition. Si, par la suite, l’utilisateur modifie l’objet du message de réponse, lors de l’envoi de la réponse, l’ID de conversation de ce message va changer et la valeur que vous avez obtenue plus tôt ne sera plus applicable.

Cette propriété obtient une valeur null lorsqu’un élément est ajouté à un formulaire de composition. Si l’utilisateur définit la ligne Objet et enregistre l’élément, la propriété conversationId renvoie une valeur.

dateTimeCreated

Obtient la date et l’heure de création d’un élément.

dateTimeModified

Obtient la date et l’heure de la dernière modification d’un élément.

end

Obtient la date et l’heure de fin du rendez-vous.

La end propriété est un Date objet exprimé sous la forme d’une valeur de date et d’heure UTC (Coordinated Universal Time). Vous pouvez utiliser la convertToLocalClientTime méthode pour convertir la valeur de la end propriété en date et heure locales du client.

Quand vous utilisez la méthode Time.setAsync pour définir l’heure de fin, nous vous recommandons d’utiliser la méthode convertToUtcClientTime pour convertir l’heure locale du client au format UTC pour le serveur.

from

Obtient l’adresse de messagerie de l’expéditeur d’un message.

Les propriétés from et sender représentent la même personne, sauf si le message est envoyé par un délégué. Dans ce cas, la from propriété représente le délégant, et la sender propriété représente le délégué.

Remarque : La recipientType propriété de l’objet EmailAddressDetails dans la from propriété n’est pas définie.

La from propriété retourne un EmailAddressDetails objet .

internetMessageId

Obtient l’identificateur de message Internet d’un e-mail.

Important : dans le dossier Éléments envoyés , le n’est internetMessageId peut-être pas encore disponible sur les éléments récemment envoyés. Dans ce cas, envisagez d’utiliser les services web Exchange pour obtenir cette propriété à partir du serveur.

itemClass

Obtient la classe d’élément Services Web Exchange du message sélectionné.

itemId

Obtient l’identificateur d’élément des services Web Exchange pour l’élément actif.

La propriété itemId n’est pas disponible en mode composition. Si l’identificateur d’un élément doit être indiqué, la méthode saveAsync peut être utilisée pour enregistrer l’élément sur le magasin, lequel renvoie l’identificateur de l’élément dans le paramètre asyncResult.value dans la fonction de rappel.

Remarque : l’identificateur retourné par la itemId propriété est le même que l’identificateur d’élément des services Web Exchange. La propriété itemId n’est pas identique à l’ID d’entrée Outlook ni à l’ID utilisé par l’API REST Outlook. Avant d’effectuer des appels d’API REST à l’aide de cette valeur, vous devez la convertir à l’aide Office.context.mailbox.convertToRestIdde . Pour plus d’informations, voir Utiliser les API REST Outlook à partir d’un complément Outlook.

itemType

Obtient le type d’élément représenté par une instance.

La itemType propriété retourne l’une des valeurs d’énumérationItemType, indiquant si l’objet élément instance est un message ou un rendez-vous.

location

Obtient l’emplacement d’une demande de réunion.

La propriété location renvoie une chaîne contenant le lieu du rendez-vous.

normalizedSubject

Obtient l’objet d’un élément, avec tous les préfixes supprimés (y compris RE : et FWD :).

La normalizedSubject propriété obtient l’objet de l’élément, avec tous les préfixes standard (tels que RE : et FW :) qui sont ajoutés par les programmes de messagerie. Pour obtenir l’objet de l’élément avec les préfixes intacts, utilisez la propriété subject.

sender

Obtient l’adresse de messagerie de l’expéditeur d’un message électronique.

Les propriétés from et sender représentent la même personne, sauf si le message est envoyé par un délégué. Dans ce cas, la from propriété représente le délégant, et la sender propriété représente le délégué.

Remarque : La recipientType propriété de l’objet EmailAddressDetails dans la sender propriété n’est pas définie.

start

Obtient la date et l’heure auxquelles le rendez-vous doit commencer.

La start propriété est un Date objet exprimé sous la forme d’une valeur de date et d’heure UTC (Coordinated Universal Time). Vous pouvez utiliser la convertToLocalClientTime méthode pour convertir la valeur en date et heure locales du client.

subject

Obtient la description qui apparaît dans le champ objet d’un élément.

La propriété subject obtient ou définit l’intégralité de l’objet de l’élément, tel qu’il est envoyé par le serveur de messagerie.

La propriété subject renvoie une chaîne. Utilisez la normalizedSubject propriété pour obtenir l’objet moins les préfixes de début tels que RE : et FW :.

to

Permet d’accéder aux destinataires figurant sur la ligne À d’un message. Le type d’objet et le niveau d’accès dépendent du mode de l’élément actif.

La to propriété renvoie un tableau qui contient un objet EmailAddressDetails pour chaque destinataire répertorié sur la ligne À du message. Le nombre maximal de destinataires retournés varie selon le client Outlook.

  • Windows : 500 destinataires

  • Android, interface utilisateur Mac classique, iOS : 100 destinataires

  • Navigateur web : 20 destinataires

  • Nouvelle interface utilisateur Mac : aucune limite

Méthodes

displayReplyAllForm(formData)

Affiche un formulaire de réponse qui inclut soit l’expéditeur et tous les destinataires du message sélectionné, soit l’organisateur et tous les participants au rendez-vous sélectionné.

displayReplyForm(formData)

Affiche un formulaire de réponse qui comprend uniquement l’expéditeur du message sélectionné ou l’organisateur du rendez-vous sélectionné.

getEntities()

Permet d’obtenir les entités figurant dans le corps de l’élément sélectionné.

getEntitiesByType(entityType)

Permet d’obtenir un tableau de toutes les entités du type spécifié trouvées dans le corps de l’élément sélectionné.

getFilteredEntitiesByName(name)

Retourne des entités connues dans l’élément sélectionné qui passent le filtre nommé défini dans un fichier manifeste XML.

getRegExMatches()

Retourne des valeurs de chaîne dans l’élément sélectionné qui correspondent aux expressions régulières définies dans un fichier manifeste XML.

getRegExMatchesByName(name)

Retourne des valeurs de chaîne dans l’élément sélectionné qui correspondent à l’expression régulière nommée définie dans un fichier manifeste XML.

loadCustomPropertiesAsync(callback, userContext)

Charge de manière asynchrone les propriétés personnalisées de ce complément vers l’élément sélectionné.

Les propriétés personnalisées sont stockées sous forme de paires clé-valeur par application et par élément. Cette méthode renvoie un objet CustomProperties dans le rappel, qui fournit des méthodes pour accéder aux propriétés personnalisées spécifiques à l’élément actuel et au complément actuel. Les propriétés personnalisées ne sont pas chiffrées sur l’élément. Il ne doit donc pas être utilisé comme stockage sécurisé.

Les propriétés personnalisées sont fournies sous la forme d’un objet CustomProperties dans la propriété asyncResult.value. Cet objet peut être utilisé pour obtenir, définir, enregistrer et supprimer des propriétés personnalisées de l’élément de courrier.

Détails de la propriété

attachments

Obtient les pièces jointes de l’élément sous forme de tableau.

attachments: AttachmentDetails[];

Valeur de propriété

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Remarque : Certains types de fichiers sont bloqués par Outlook en raison de problèmes de sécurité potentiels et ne sont donc pas retournés. Pour plus d’informations, voir Pièces jointes bloquées dans Outlook.

Exemples

// The following code builds an HTML string with details of all attachments on the current item.
const item = Office.context.mailbox.item;
let outputString = "";

if (item.attachments.length > 0) {
    for (let i = 0 ; i < item.attachments.length ; i++) {
        const attachment = item.attachments[i];
        outputString += "<BR>" + i + ". Name: ";
        outputString += attachment.name;
        outputString += "<BR>ID: " + attachment.id;
        outputString += "<BR>contentType: " + attachment.contentType;
        outputString += "<BR>size: " + attachment.size;
        outputString += "<BR>attachmentType: " + attachment.attachmentType;
        outputString += "<BR>isInline: " + attachment.isInline;
    }
}

console.log(outputString);
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/get-attachments-read.yaml

const attachments = Office.context.mailbox.item.attachments;
console.log(attachments);

body

Obtient un objet qui fournit des méthodes permettant de manipuler le corps d’un élément.

body: Body;

Valeur de propriété

Remarques

[ Ensemble d’API : Boîte aux lettres 1.1 ]

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// This example gets the body of the item as plain text.
Office.context.mailbox.item.body.getAsync(
    "text",
    { asyncContext: "This is passed to the callback" },
    function callback(result) {
        // Do something with the result.
    });

// The following is an example of the result parameter passed to the callback function.
{
    "value": "TEXT of whole body (including threads below)",
    "status": "succeeded",
    "asyncContext": "This is passed to the callback"
}

cc

Permet d’accéder aux destinataires en copie carbone (Cc) d’un message. Le type d’objet et le niveau d’accès dépendent du mode de l’élément actif.

La cc propriété renvoie un tableau qui contient un objet EmailAddressDetails pour chaque destinataire répertorié sur la ligne Cc du message. Le nombre maximal de destinataires retournés varie selon le client Outlook.

  • Windows : 500 destinataires

  • Android, interface utilisateur Mac classique, iOS : 100 destinataires

  • Navigateur web : 20 destinataires

  • Nouvelle interface utilisateur Mac : aucune limite

cc: EmailAddressDetails[];

Valeur de propriété

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-cc-message-read.yaml

const msgCc = Office.context.mailbox.item.cc;
console.log("Message copied to:");
for (let i = 0; i < msgCc.length; i++) {
  console.log(msgCc[i].displayName + " (" + msgCc[i].emailAddress + ")");
}

conversationId

Obtient l’identificateur de la conversation qui contient un message particulier.

Vous pouvez obtenir un nombre entier de cette propriété si votre application de messagerie est activée dans les formulaires de lecture ou les réponses des formulaires de composition. Si, par la suite, l’utilisateur modifie l’objet du message de réponse, lors de l’envoi de la réponse, l’ID de conversation de ce message va changer et la valeur que vous avez obtenue plus tôt ne sera plus applicable.

Cette propriété obtient une valeur null lorsqu’un élément est ajouté à un formulaire de composition. Si l’utilisateur définit la ligne Objet et enregistre l’élément, la propriété conversationId renvoie une valeur.

conversationId: string;

Valeur de propriété

string

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-conversation-id-message.yaml

console.log(`Conversation ID: ${Office.context.mailbox.item.conversationId}`);

dateTimeCreated

Obtient la date et l’heure de création d’un élément.

dateTimeCreated: Date;

Valeur de propriété

Date

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-date-time-created-read.yaml

console.log(`Creation date and time: ${Office.context.mailbox.item.dateTimeCreated}`);

dateTimeModified

Obtient la date et l’heure de la dernière modification d’un élément.

dateTimeModified: Date;

Valeur de propriété

Date

Remarques

[ Ensemble d’API : Boîte aux lettres 1.1 ]

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Participant au rendez-vous

Important : cette propriété n’est pas prise en charge dans Outlook sur Android ou sur iOS. Pour plus d’informations sur les API prises en charge dans Outlook Mobile, consultez API JavaScript Outlook prises en charge dans Outlook sur les appareils mobiles.

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-date-time-modified-read.yaml

console.log(`Date and time item last modified: ${Office.context.mailbox.item.dateTimeModified}`);

end

Obtient la date et l’heure de fin du rendez-vous.

La end propriété est un Date objet exprimé sous la forme d’une valeur de date et d’heure UTC (Coordinated Universal Time). Vous pouvez utiliser la convertToLocalClientTime méthode pour convertir la valeur de la end propriété en date et heure locales du client.

Quand vous utilisez la méthode Time.setAsync pour définir l’heure de fin, nous vous recommandons d’utiliser la méthode convertToUtcClientTime pour convertir l’heure locale du client au format UTC pour le serveur.

end: Date;

Valeur de propriété

Date

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-end-read.yaml

console.log(`Appointment ends: ${Office.context.mailbox.item.end}`);

from

Obtient l’adresse de messagerie de l’expéditeur d’un message.

Les propriétés from et sender représentent la même personne, sauf si le message est envoyé par un délégué. Dans ce cas, la from propriété représente le délégant, et la sender propriété représente le délégué.

Remarque : La recipientType propriété de l’objet EmailAddressDetails dans la from propriété n’est pas définie.

La from propriété retourne un EmailAddressDetails objet .

from: EmailAddressDetails;

Valeur de propriété

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-from-message-read.yaml

const msgFrom = Office.context.mailbox.item.from;
console.log("Message received from: " + msgFrom.displayName + " (" + msgFrom.emailAddress + ")");

internetMessageId

Obtient l’identificateur de message Internet d’un e-mail.

Important : dans le dossier Éléments envoyés , le n’est internetMessageId peut-être pas encore disponible sur les éléments récemment envoyés. Dans ce cas, envisagez d’utiliser les services web Exchange pour obtenir cette propriété à partir du serveur.

internetMessageId: string;

Valeur de propriété

string

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-internet-message-id-read.yaml

console.log(`Internet message ID: ${Office.context.mailbox.item.internetMessageId}`);

itemClass

Obtient la classe d’élément Services Web Exchange du message sélectionné.

itemClass: string;

Valeur de propriété

string

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Important:

Le tableau suivant répertorie les classes d’éléments par défaut pour les messages.

Classe de l’élément Description
IPM. Note Nouveaux messages et réponses aux messages
IPM.Schedule.Meeting.Request Demandes de réunion
IPM.Schedule.Meeting.Canceled Annulations de rendez-vous
IPM. Schedule.Meeting.Resp.Neg Réponses négatives à des demandes de rendez-vous
IPM. Schedule.Meeting.Resp.Pos Réponses à l’acceptation des demandes de réunion
IPM. Schedule.Meeting.Resp.Tent Réponses provisoirement positives à des demandes de rendez-vous

Vous pouvez créer des classes personnalisées qui étendent une classe d’élément par défaut. Par exemple, IPM.Note.Contoso.

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-item-class-read.yaml

console.log(`Item class: ${Office.context.mailbox.item.itemClass}`);

itemId

Obtient l’identificateur d’élément des services Web Exchange pour l’élément actif.

La propriété itemId n’est pas disponible en mode composition. Si l’identificateur d’un élément doit être indiqué, la méthode saveAsync peut être utilisée pour enregistrer l’élément sur le magasin, lequel renvoie l’identificateur de l’élément dans le paramètre asyncResult.value dans la fonction de rappel.

Remarque : l’identificateur retourné par la itemId propriété est le même que l’identificateur d’élément des services Web Exchange. La propriété itemId n’est pas identique à l’ID d’entrée Outlook ni à l’ID utilisé par l’API REST Outlook. Avant d’effectuer des appels d’API REST à l’aide de cette valeur, vous devez la convertir à l’aide Office.context.mailbox.convertToRestIdde . Pour plus d’informations, voir Utiliser les API REST Outlook à partir d’un complément Outlook.

itemId: string;

Valeur de propriété

string

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// The following code checks for the presence of an item
// identifier. If the `itemId` property returns `null` or
// `undefined`, it saves the item to the store and gets the
// item identifier from the asynchronous result.
// **Important**: `saveAsync` was introduced with requirement set 1.3
// so you can't get the `itemId` in Compose mode in earlier sets.
let itemId = Office.context.mailbox.item.itemId;
if (itemId === null || itemId == undefined) {
    Office.context.mailbox.item.saveAsync(function(result) {
        itemId = result.value;
    });
}

itemType

Obtient le type d’élément représenté par une instance.

La itemType propriété retourne l’une des valeurs d’énumérationItemType, indiquant si l’objet élément instance est un message ou un rendez-vous.

itemType: MailboxEnums.ItemType | string;

Valeur de propriété

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-item-type.yaml

const itemType = Office.context.mailbox.item.itemType;
switch (itemType) {
    case Office.MailboxEnums.ItemType.Appointment:
        console.log(`Current item is an ${itemType}.`);
        break;
    case Office.MailboxEnums.ItemType.Message:
        console.log(`Current item is a ${itemType}. A message could be an email, meeting request, meeting response, or meeting cancellation.`);
        break;
}

location

Obtient l’emplacement d’une demande de réunion.

La propriété location renvoie une chaîne contenant le lieu du rendez-vous.

location: string;

Valeur de propriété

string

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-location-read.yaml

console.log(`Appointment location: ${Office.context.mailbox.item.location}`);

normalizedSubject

Obtient l’objet d’un élément, avec tous les préfixes supprimés (y compris RE : et FWD :).

La normalizedSubject propriété obtient l’objet de l’élément, avec tous les préfixes standard (tels que RE : et FW :) qui sont ajoutés par les programmes de messagerie. Pour obtenir l’objet de l’élément avec les préfixes intacts, utilisez la propriété subject.

normalizedSubject: string;

Valeur de propriété

string

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-normalized-subject-read.yaml

console.log(`Normalized subject: ${Office.context.mailbox.item.normalizedSubject}`);

sender

Obtient l’adresse de messagerie de l’expéditeur d’un message électronique.

Les propriétés from et sender représentent la même personne, sauf si le message est envoyé par un délégué. Dans ce cas, la from propriété représente le délégant, et la sender propriété représente le délégué.

Remarque : La recipientType propriété de l’objet EmailAddressDetails dans la sender propriété n’est pas définie.

sender: EmailAddressDetails;

Valeur de propriété

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-sender-message-read.yaml

const msgSender = Office.context.mailbox.item.sender;
console.log("Sender: " + msgSender.displayName + " (" + msgSender.emailAddress + ")");

start

Obtient la date et l’heure auxquelles le rendez-vous doit commencer.

La start propriété est un Date objet exprimé sous la forme d’une valeur de date et d’heure UTC (Coordinated Universal Time). Vous pouvez utiliser la convertToLocalClientTime méthode pour convertir la valeur en date et heure locales du client.

start: Date;

Valeur de propriété

Date

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-start-read.yaml

console.log(`Appointment starts: ${Office.context.mailbox.item.start}`);

subject

Obtient la description qui apparaît dans le champ objet d’un élément.

La propriété subject obtient ou définit l’intégralité de l’objet de l’élément, tel qu’il est envoyé par le serveur de messagerie.

La propriété subject renvoie une chaîne. Utilisez la normalizedSubject propriété pour obtenir l’objet moins les préfixes de début tels que RE : et FW :.

subject: string;

Valeur de propriété

string

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-subject-read.yaml

console.log(`Subject: ${Office.context.mailbox.item.subject}`);

to

Permet d’accéder aux destinataires figurant sur la ligne À d’un message. Le type d’objet et le niveau d’accès dépendent du mode de l’élément actif.

La to propriété renvoie un tableau qui contient un objet EmailAddressDetails pour chaque destinataire répertorié sur la ligne À du message. Le nombre maximal de destinataires retournés varie selon le client Outlook.

  • Windows : 500 destinataires

  • Android, interface utilisateur Mac classique, iOS : 100 destinataires

  • Navigateur web : 20 destinataires

  • Nouvelle interface utilisateur Mac : aucune limite

to: EmailAddressDetails[];

Valeur de propriété

Remarques

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-to-message-read.yaml

const msgTo = Office.context.mailbox.item.to;
const distributionLists = [];
const externalRecipients = [];
const internalRecipients = [];
const otherRecipients = [];
for (let i = 0; i < msgTo.length; i++) {
    switch (msgTo[i].recipientType) {
    case Office.MailboxEnums.RecipientType.DistributionList:
        distributionLists.push(msgTo[i]);
        break;
    case Office.MailboxEnums.RecipientType.ExternalUser:
        externalRecipients.push(msgTo[i]);
        break;
    case Office.MailboxEnums.RecipientType.User:
        internalRecipients.push(msgTo[i]);
        break;
    case Office.MailboxEnums.RecipientType.Other:
        otherRecipients.push(msgTo[i]);
    }
}

if (distributionLists.length > 0) {
    console.log("Distribution Lists:");
    distributionLists.forEach((recipient) => console.log(`${recipient.displayName}, ${recipient.emailAddress}`));
}

if (externalRecipients.length > 0) {
    console.log("External Recipients:");
    externalRecipients.forEach((recipient) => console.log(`${recipient.displayName}, ${recipient.emailAddress}`));
}

if (internalRecipients.length > 0) {
    console.log("Internal Recipients:");
    internalRecipients.forEach((recipient) => console.log(`${recipient.displayName}, ${recipient.emailAddress}`));
}

if (otherRecipients.length > 0) {
    console.log("Other Recipients:");
    otherRecipients.forEach((recipient) => console.log(`${recipient.displayName}, ${recipient.emailAddress}`));
}

Détails de la méthode

displayReplyAllForm(formData)

Affiche un formulaire de réponse qui inclut soit l’expéditeur et tous les destinataires du message sélectionné, soit l’organisateur et tous les participants au rendez-vous sélectionné.

displayReplyAllForm(formData: string | ReplyFormData): void;

Paramètres

formData

string | Office.ReplyFormData

Chaîne qui contient du texte et des éléments HTML et qui représente le corps du formulaire de réponse. La chaîne est limitée à 32 Ko OU un objet ReplyFormData qui contient des données de corps ou de pièce jointe et une fonction de rappel.

Retours

void

Remarques

[ Ensemble d’API : Boîte aux lettres 1.1 ]

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Participant au rendez-vous

Important:

  • Dans Outlook sur le web, le formulaire de réponse s’affiche sous la forme d’un formulaire contextuel dans l’affichage à 3 colonnes et d’un formulaire contextuel dans l’affichage à 2 ou 1 colonne.

  • Si un des paramètres de chaîne dépasse la limite, displayReplyForm génère une exception.

  • Lorsque des pièces jointes sont spécifiées dans le formData.attachments paramètre , Outlook tente de télécharger toutes les pièces jointes et de les attacher au formulaire de réponse. Si aucune pièce jointe n’est ajoutée, une erreur s’affiche dans l’interface utilisateur du formulaire. Si ce n’est pas possible, aucun message d’erreur n’est généré.

  • Cette méthode n’est pas prise en charge dans Outlook sur Android ou sur iOS. Pour plus d’informations sur les API prises en charge dans Outlook Mobile, consultez API JavaScript Outlook prises en charge dans Outlook sur les appareils mobiles.

Exemples

// The following code passes a string to the `displayReplyAllForm` method.
Office.context.mailbox.item.displayReplyAllForm('hello there');
Office.context.mailbox.item.displayReplyAllForm('<b>hello there</b>');

// Reply with an empty body.
Office.context.mailbox.item.displayReplyAllForm({});

// Reply with just a body.
Office.context.mailbox.item.displayReplyAllForm(
{
'htmlBody' : 'hi'
});

// Reply with a body and a file attachment.
Office.context.mailbox.item.displayReplyAllForm(
{
    'htmlBody' : 'hi',
    'attachments' :
    [
        {
        'type' : Office.MailboxEnums.AttachmentType.File,
        'name' : 'squirrel.png',
        'url' : 'http://i.imgur.com/sRgTlGR.jpg'
        }
    ]
});

// Reply with a body and an item attachment.
Office.context.mailbox.item.displayReplyAllForm(
{
    'htmlBody' : 'hi',
    'attachments' :
    [
        {
        'type' : 'item',
        'name' : 'rand',
        'itemId' : Office.context.mailbox.item.itemId
        }
    ]
});

// Reply with a body, file attachment, item attachment, and a callback.
Office.context.mailbox.item.displayReplyAllForm(
{
    'htmlBody' : 'hi',
    'attachments' :
    [
        {
            'type' : Office.MailboxEnums.AttachmentType.File,
            'name' : 'squirrel.png',
            'url' : 'http://i.imgur.com/sRgTlGR.jpg'
        },
        {
            'type' : 'item',
            'name' : 'rand',
            'itemId' : Office.context.mailbox.item.itemId
        }
    ],
    'callback' : function(asyncResult)
    {
        console.log(asyncResult.value);
    }
});
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/55-display-items/display-reply-forms.yaml

Office.context.mailbox.item.displayReplyAllForm("This is a reply ALL with <b>some bold text</b>.");

displayReplyForm(formData)

Affiche un formulaire de réponse qui comprend uniquement l’expéditeur du message sélectionné ou l’organisateur du rendez-vous sélectionné.

displayReplyForm(formData: string | ReplyFormData): void;

Paramètres

formData

string | Office.ReplyFormData

Chaîne qui contient du texte et des éléments HTML et qui représente le corps du formulaire de réponse. La chaîne est limitée à 32 Ko OU un objet ReplyFormData qui contient des données de corps ou de pièce jointe et une fonction de rappel.

Retours

void

Remarques

[ Ensemble d’API : Boîte aux lettres 1.1 ]

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Important:

  • Dans Outlook sur le web, le formulaire de réponse s’affiche sous la forme d’un formulaire contextuel dans l’affichage à 3 colonnes et d’un formulaire contextuel dans l’affichage à 2 ou 1 colonne.

  • Si un des paramètres de chaîne dépasse la limite, displayReplyForm génère une exception.

  • Lorsque des pièces jointes sont spécifiées dans le formData.attachments paramètre , Outlook tente de télécharger toutes les pièces jointes et de les attacher au formulaire de réponse. Si aucune pièce jointe n’est ajoutée, une erreur s’affiche dans l’interface utilisateur du formulaire. Si ce n’est pas possible, aucun message d’erreur n’est généré.

  • Cette méthode n’est pas prise en charge dans Outlook sur Android ou sur iOS. Pour plus d’informations sur les API prises en charge dans Outlook Mobile, consultez API JavaScript Outlook prises en charge dans Outlook sur les appareils mobiles.

Exemples

// The following code passes a string to the `displayReplyForm` method.
Office.context.mailbox.item.displayReplyForm('hello there');
Office.context.mailbox.item.displayReplyForm('<b>hello there</b>');

// Reply with an empty body.
Office.context.mailbox.item.displayReplyForm({});

// Reply with just a body.
Office.context.mailbox.item.displayReplyForm(
{
    'htmlBody' : 'hi'
});

// Reply with a body and a file attachment.
Office.context.mailbox.item.displayReplyForm(
{
    'htmlBody' : 'hi',
    'attachments' :
    [
        {
            'type' : Office.MailboxEnums.AttachmentType.File,
            'name' : 'squirrel.png',
            'url' : 'http://i.imgur.com/sRgTlGR.jpg'
        }
    ]
});

// Reply with a body and an item attachment.
Office.context.mailbox.item.displayReplyForm(
{
    'htmlBody' : 'hi',
    'attachments' :
    [
        {
            'type' : 'item',
            'name' : 'rand',
            'itemId' : Office.context.mailbox.item.itemId
        }
    ]
});

// Reply with a body, file attachment, item attachment, and a callback.
Office.context.mailbox.item.displayReplyForm(
{
    'htmlBody' : 'hi',
    'attachments' :
    [
        {
            'type' : Office.MailboxEnums.AttachmentType.File,
            'name' : 'squirrel.png',
            'url' : 'http://i.imgur.com/sRgTlGR.jpg'
        },
        {
            'type' : 'item',
            'name' : 'rand',
            'itemId' : Office.context.mailbox.item.itemId
        }
    ],
    'callback' : function(asyncResult)
    {
        console.log(asyncResult.value);
    }
});
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/55-display-items/display-reply-forms.yaml

Office.context.mailbox.item.displayReplyForm("This is a reply with <i>some text in italics</i>.");

...

Office.context.mailbox.item.displayReplyForm({
  htmlBody: "This is a reply with a couple of attachments - an inline image and an item<br><img src='cid:dog.jpg'>",
  attachments: [
    { type: "file", url: "http://i.imgur.com/9S36xvA.jpg", name: "dog.jpg", isInline: true },
    { type: "item", itemId: Office.context.mailbox.item.itemId, name: "test_email.msg" }
  ],
  options: { asyncContext: null },
  callback: function(result) {
    if (result.status !== Office.AsyncResultStatus.Succeeded) {
      console.error(`Action failed with message ${result.error.message}`);
    }
  }
});

getEntities()

Permet d’obtenir les entités figurant dans le corps de l’élément sélectionné.

getEntities(): Entities;

Retours

Remarques

[ Ensemble d’API : Boîte aux lettres 1.1 ]

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Participant au rendez-vous

Important:

  • Les compléments Outlook contextuels basés sur des entités, y compris la getEntities méthode, seront mis hors service au deuxième trimestre 2024. Les travaux de mise hors service de cette méthode commenceront en mai et se poursuivront jusqu’à la fin du mois de juin. Après juin, les compléments contextuels ne seront plus en mesure de détecter les entités dans les éléments de courrier pour effectuer des tâches sur ces derniers. Les règles d’expression régulière continueront d’être prises en charge une fois les compléments contextuels basés sur des entités mis hors service. Nous vous recommandons de mettre à jour votre complément contextuel pour utiliser des règles d’expression régulière comme solution alternative. Pour obtenir des conseils sur la façon d’implémenter ces règles, voir Utiliser des règles d’activation d’expression régulière pour afficher un complément Outlook. Pour en savoir plus sur la mise hors service des compléments Outlook contextuels basés sur des entités, consultez Retrait des compléments Outlook contextuels basés sur des entités.

  • Cette méthode n’est pas prise en charge dans Outlook sur Android ou sur iOS. Pour plus d’informations sur les API prises en charge dans Outlook Mobile, consultez API JavaScript Outlook prises en charge dans Outlook sur les appareils mobiles.

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/75-entities-and-regex-matches/basic-entities.yaml

const entities = Office.context.mailbox.item.getEntities();
let entityTypesFound = 0;
if (entities.addresses.length > 0) {
    console.warn("physical addresses: ");
    console.log(entities.addresses);
    entityTypesFound++;
}
if (entities.contacts.length > 0) {
    console.warn("contacts: ");
    entities.contacts.forEach(function (contact) { console.log(contact.personName); })
    entityTypesFound++;
}
if (entities.emailAddresses.length > 0) {
    console.warn("email addresses: ");
    console.log(entities.emailAddresses);
    entityTypesFound++;
}
if (entities.meetingSuggestions.length > 0) {
    console.warn("meetings suggestions: ");
    entities.meetingSuggestions.forEach(function (meetingSuggestion) { console.log(meetingSuggestion.meetingString); })
    entityTypesFound++;
}
if (entities.phoneNumbers.length > 0) {
    console.warn("phone numbers: ");
    entities.phoneNumbers.forEach(function (phoneNumber) { console.log(phoneNumber.originalPhoneString); })
    entityTypesFound++;
}
if (entities.taskSuggestions.length > 0) {
    console.warn("task suggestions: ");
    entities.taskSuggestions.forEach(function (taskSuggestion) { console.log(taskSuggestion.taskString); })
    entityTypesFound++;
}
if (entities.urls.length > 0) {
    console.warn("URLs: ");
    console.log(entities.urls);
    entityTypesFound++;
}
if (entityTypesFound == 0)
{
    console.log("No entities found on this item.");
}

getEntitiesByType(entityType)

Permet d’obtenir un tableau de toutes les entités du type spécifié trouvées dans le corps de l’élément sélectionné.

getEntitiesByType(entityType: MailboxEnums.EntityType | string): Array<string | Contact | MeetingSuggestion | PhoneNumber | TaskSuggestion>;

Paramètres

entityType

Office.MailboxEnums.EntityType | string

Une des valeurs d’énumération EntityType .

Bien que le niveau d’autorisation minimal pour utiliser cette méthode soit limité, certains types d’entité nécessitent l’accès à l’élément en lecture , comme spécifié dans le tableau suivant.

Valeur de entityType Type des objets du tableau renvoyé Niveau d’autorisation requis
Address String Restreint
Contact Contact ReadItem
EmailAddress String ReadItem
MeetingSuggestion MeetingSuggestion ReadItem
PhoneNumber PhoneNumber Restreint
TaskSuggestion TaskSuggestion ReadItem
URL String Restreint

Retours

Si la valeur passée n’est entityType pas un membre valide de l’énumération EntityType , la méthode retourne null. Si aucune entité du type spécifié n’est présente dans le corps de l’élément, la méthode renvoie un tableau vide. Sinon, le type des objets dans le tableau renvoyé dépend du type d’entité demandé dans le paramètre entityType.

Remarques

[ Ensemble d’API : Boîte aux lettres 1.1 ]

Niveau d’autorisation minimal : restreint

Mode Outlook applicable : Lecture du message

Important:

  • Les compléments Outlook contextuels basés sur des entités, y compris la getEntitiesByType méthode, seront mis hors service au deuxième trimestre 2024. Les travaux de mise hors service de cette méthode commenceront en mai et se poursuivront jusqu’à la fin du mois de juin. Après juin, les compléments contextuels ne seront plus en mesure de détecter les entités dans les éléments de courrier pour effectuer des tâches sur ces derniers. Les règles d’expression régulière continueront d’être prises en charge une fois les compléments contextuels basés sur des entités mis hors service. Nous vous recommandons de mettre à jour votre complément contextuel pour utiliser des règles d’expression régulière comme solution alternative. Pour obtenir des conseils sur la façon d’implémenter ces règles, voir Utiliser des règles d’activation d’expression régulière pour afficher un complément Outlook. Pour en savoir plus sur la mise hors service des compléments Outlook contextuels basés sur des entités, consultez Retrait des compléments Outlook contextuels basés sur des entités.

  • Cette méthode n’est pas prise en charge dans Outlook sur Android ou sur iOS. Pour plus d’informations sur les API prises en charge dans Outlook Mobile, consultez API JavaScript Outlook prises en charge dans Outlook sur les appareils mobiles.

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/75-entities-and-regex-matches/basic-entities.yaml

console.log(Office.context.mailbox.item.getEntitiesByType(Office.MailboxEnums.EntityType.Address));

getFilteredEntitiesByName(name)

Retourne des entités connues dans l’élément sélectionné qui passent le filtre nommé défini dans un fichier manifeste XML.

getFilteredEntitiesByName(name: string): Array<string | Contact | MeetingSuggestion | PhoneNumber | TaskSuggestion>;

Paramètres

name

string

Nom de l’élément de règle ItemHasKnownEntity qui définit le filtre à respecter.

Retours

Entités qui correspondent à l’expression régulière définie dans l’élément ItemHasKnownEntity rule dans le fichier MANIFESTE XML avec la valeur d’élément spécifiée FilterName . S’il n’existe aucun ItemHasKnownEntity élément dans le manifeste avec une valeur d’élément FilterName qui correspond au name paramètre , la méthode retourne null. Si le name paramètre correspond à un ItemHasKnownEntity élément du manifeste, mais qu’aucune entité de l’élément actuel ne correspond, la méthode retourne un tableau vide.

Remarques

[ Ensemble d’API : Boîte aux lettres 1.1 ]

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Participant au rendez-vous

Important:

Exemples

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/75-entities-and-regex-matches/contextual.yaml

// This API would only work when you click on highlighted physical address that has the word "Way" in it.
console.log(Office.context.mailbox.item.getFilteredEntitiesByName("sampleFilterName"));

getRegExMatches()

Retourne des valeurs de chaîne dans l’élément sélectionné qui correspondent aux expressions régulières définies dans un fichier manifeste XML.

getRegExMatches(): any;

Retours

any

Un objet qui contient les tableaux des chaînes correspondant aux expressions régulières définies dans le fichier manifeste XML. Le nom de chaque tableau est égal à la valeur correspondante de l’attribut RegExName de la règle de correspondance ItemHasRegularExpressionMatch ou de l’attribut FilterName de la règle correspondante ItemHasKnownEntity . Pour une règle ItemHasRegularExpressionMatch, une chaîne correspondante doit être présente dans la propriété de l’élément spécifié par cette règle. Le type simple PropertyName définit les propriétés prises en charge.

Remarques

[ Ensemble d’API : Boîte aux lettres 1.1 ]

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Participant au rendez-vous

Important:

  • Les compléments Outlook contextuels basés sur des entités seront mis hors service au deuxième trimestre 2024. Une fois mis hors service, les compléments contextuels ne seront plus en mesure de détecter les entités dans les éléments de courrier pour effectuer des tâches sur ces derniers. Les règles d’expression régulière continueront d’être prises en charge une fois les compléments contextuels basés sur des entités mis hors service. Nous vous recommandons de mettre à jour votre complément contextuel pour utiliser des règles d’expression régulière comme solution alternative. Pour obtenir des conseils sur la façon d’implémenter ces règles, voir Utiliser des règles d’activation d’expression régulière pour afficher un complément Outlook. Pour en savoir plus sur la mise hors service des compléments contextuels basés sur des entités, consultez Retrait des compléments Outlook contextuels basés sur des entités.

  • Cette méthode est utilisée avec la fonctionnalité de règles d’activation pour les compléments Outlook, qui n’est pas prise en charge par le manifeste unifié pour Microsoft 365 (préversion) .

  • Si vous spécifiez une ItemHasRegularExpressionMatch règle sur la propriété body d’un élément, l’expression régulière doit filtrer davantage le corps et ne doit pas tenter de retourner l’intégralité du corps de l’élément. L’utilisation d’une expression régulière telle que .* pour obtenir l’intégralité du corps d’un élément ne retourne pas toujours les résultats attendus. Utilisez plutôt la Body.getAsync méthode pour récupérer le corps entier.

  • Cette méthode n’est pas prise en charge dans Outlook sur Android ou sur iOS. Pour plus d’informations sur les API prises en charge dans Outlook Mobile, consultez API JavaScript Outlook prises en charge dans Outlook sur les appareils mobiles.

Exemples

// Consider an add-in manifest has the following `Rule` element:
//<Rule xsi:type="RuleCollection" Mode="And">
//  <Rule xsi:type="ItemIs" FormType="Read" ItemType="Message" />
//  <Rule xsi:type="RuleCollection" Mode="Or">
//    <Rule xsi:type="ItemHasRegularExpressionMatch" RegExName="fruits" RegExValue="apple|banana|coconut" PropertyName="BodyAsPlaintext" IgnoreCase="true" />
//    <Rule xsi:type="ItemHasRegularExpressionMatch" RegExName="veggies" RegExValue="tomato|onion|spinach|broccoli" PropertyName="BodyAsPlaintext" IgnoreCase="true" />
//  </Rule>
//</Rule>

// The object returned from `getRegExMatches` would have two properties: `fruits` and `veggies`.
//{
//'fruits': ['apple','banana','Banana','coconut'],
//'veggies': ['tomato','onion','spinach','broccoli']
//}

// The following example shows how to access the array of
// matches for the regular expression rule elements `fruits`
// and `veggies`, which are specified in the manifest.
const allMatches = Office.context.mailbox.item.getRegExMatches();
const fruits = allMatches.fruits;
const veggies = allMatches.veggies;
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/75-entities-and-regex-matches/contextual.yaml

// This API would only work when you click on highlighted word "ScriptLab".
console.log(Office.context.mailbox.item.getRegExMatches());

getRegExMatchesByName(name)

Retourne des valeurs de chaîne dans l’élément sélectionné qui correspondent à l’expression régulière nommée définie dans un fichier manifeste XML.

getRegExMatchesByName(name: string): string[];

Paramètres

name

string

Nom de l’élément de règle ItemHasRegularExpressionMatch qui définit le filtre à respecter.

Retours

string[]

Tableau qui contient les chaînes qui correspondent à l’expression régulière définie dans l’élément ItemHasRegularExpressionMatch rule dans le fichier MANIFESTE XML, avec la valeur d’élément spécifiée RegExName .

Remarques

[ Ensemble d’API : Boîte aux lettres 1.1 ]

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Participant au rendez-vous

Important:

  • Les compléments Outlook contextuels basés sur des entités seront mis hors service au deuxième trimestre 2024. Une fois mis hors service, les compléments contextuels ne seront plus en mesure de détecter les entités dans les éléments de courrier pour effectuer des tâches sur ces derniers. Les règles d’expression régulière continueront d’être prises en charge une fois les compléments contextuels basés sur des entités mis hors service. Nous vous recommandons de mettre à jour votre complément contextuel pour utiliser des règles d’expression régulière comme solution alternative. Pour obtenir des conseils sur la façon d’implémenter ces règles, voir Utiliser des règles d’activation d’expression régulière pour afficher un complément Outlook. Pour en savoir plus sur la mise hors service des compléments contextuels basés sur des entités, consultez Retrait des compléments Outlook contextuels basés sur des entités.

  • Cette méthode est utilisée avec la fonctionnalité de règles d’activation pour les compléments Outlook, qui n’est pas prise en charge par le manifeste unifié pour Microsoft 365 (préversion) .

  • Si vous spécifiez une ItemHasRegularExpressionMatch règle sur la propriété body d’un élément, l’expression régulière doit filtrer davantage le corps et ne doit pas tenter de retourner l’intégralité du corps de l’élément. L’utilisation d’une expression régulière telle que .* pour obtenir l’intégralité du corps d’un élément ne retourne pas toujours les résultats attendus. Utilisez plutôt la Body.getAsync méthode pour récupérer le corps entier.

  • Cette méthode n’est pas prise en charge dans Outlook sur Android ou sur iOS. Pour plus d’informations sur les API prises en charge dans Outlook Mobile, consultez API JavaScript Outlook prises en charge dans Outlook sur les appareils mobiles.

Exemples

// Consider an add-in manifest has the following `Rule` element:
//<Rule xsi:type="RuleCollection" Mode="And">
//  <Rule xsi:type="ItemIs" FormType="Read" ItemType="Message" />
//  <Rule xsi:type="RuleCollection" Mode="Or">
//    <Rule xsi:type="ItemHasRegularExpressionMatch" RegExName="fruits" RegExValue="apple|banana|coconut" PropertyName="BodyAsPlaintext" IgnoreCase="true" />
//    <Rule xsi:type="ItemHasRegularExpressionMatch" RegExName="veggies" RegExValue="tomato|onion|spinach|broccoli" PropertyName="BodyAsPlaintext" IgnoreCase="true" />
//  </Rule>
//</Rule>

// The object returned from `getRegExMatches` would have two properties: `fruits` and `veggies`.
//{
//'fruits': ['apple','banana','Banana','coconut'],
//'veggies': ['tomato','onion','spinach','broccoli']
//}

const fruits = Office.context.mailbox.item.getRegExMatchesByName("fruits");
const veggies = Office.context.mailbox.item.getRegExMatchesByName("veggies");
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/75-entities-and-regex-matches/contextual.yaml

// This API would only work when you click on highlighted word "ScriptLab".
console.log(Office.context.mailbox.item.getRegExMatchesByName("sampleRegexName"));

loadCustomPropertiesAsync(callback, userContext)

Charge de manière asynchrone les propriétés personnalisées de ce complément vers l’élément sélectionné.

Les propriétés personnalisées sont stockées sous forme de paires clé-valeur par application et par élément. Cette méthode renvoie un objet CustomProperties dans le rappel, qui fournit des méthodes pour accéder aux propriétés personnalisées spécifiques à l’élément actuel et au complément actuel. Les propriétés personnalisées ne sont pas chiffrées sur l’élément. Il ne doit donc pas être utilisé comme stockage sécurisé.

Les propriétés personnalisées sont fournies sous la forme d’un objet CustomProperties dans la propriété asyncResult.value. Cet objet peut être utilisé pour obtenir, définir, enregistrer et supprimer des propriétés personnalisées de l’élément de courrier.

loadCustomPropertiesAsync(callback: (asyncResult: Office.AsyncResult<CustomProperties>) => void, userContext?: any): void;

Paramètres

callback

(asyncResult: Office.AsyncResult<Office.CustomProperties>) => void

Une fois la méthode terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult.

userContext

any

Optional. Les développeurs peuvent fournir un objet auquel ils souhaitent accéder dans la fonction de rappel. Cet objet est accessible via la propriété asyncResult.asyncContext dans la fonction de rappel.

Retours

void

Remarques

[ Ensemble d’API : Boîte aux lettres 1.1 ]

Pour en savoir plus sur les propriétés personnalisées, voir Obtenir et définir des métadonnées de complément pour un complément Outlook.

Niveau d’autorisation minimal : élément de lecture

Mode Outlook applicable : Lecture du message

Exemples

// The following example shows how to use the loadCustomPropertiesAsync method
// to asynchronously load custom properties that are specific to the current item.
// The example also shows how to use the saveAsync method to save these properties
// back to the server. After loading the custom properties, the example uses the
// get method to read the custom property myProp, the set method to write the
// custom property otherProp, and then finally calls the saveAsync method to save
// the custom properties.
Office.initialize = function () {
    // Checks for the DOM to load using the jQuery ready method.
    $(document).ready(function () {
        // After the DOM is loaded, add-in-specific code can run.
        const mailbox = Office.context.mailbox;
        mailbox.item.loadCustomPropertiesAsync(customPropsCallback);
    });
};

function customPropsCallback(asyncResult) {
    const customProps = asyncResult.value;
    const myProp = customProps.get("myProp");

    customProps.set("otherProp", "value");
    customProps.saveAsync(saveCallback);
}

function saveCallback(asyncResult) {
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/15-item-custom-properties/load-set-get-save.yaml

Office.context.mailbox.item.loadCustomPropertiesAsync(function (result) {
  if (result.status === Office.AsyncResultStatus.Succeeded) {
    console.log("Loaded following custom properties:");
    customProps = result.value;
    const dataKey = Object.keys(customProps)[0];
    const data = customProps[dataKey];
    for (let propertyName in data)
    {
      let propertyValue = data[propertyName];
      console.log(`${propertyName}: ${propertyValue}`);
    }              
  }
  else {
    console.error(`loadCustomPropertiesAsync failed with message ${result.error.message}`);
  }
});