Office.Body interface
L’objet body fournit des méthodes pour ajouter et mettre à jour le contenu du message ou du rendez-vous. Il est renvoyé dans la propriété body de l’élément sélectionné.
Remarques
Jeu d’API : Boîte aux lettres 1.1
Pour savoir comment obtenir ou définir le corps d’un courrier, voir Obtenir ou définir le corps d’un message ou d’un rendez-vous dans Outlook.
Problème connu avec les couleurs de bordure de tableau HTML
Outlook sur Windows : Si vous définissez plusieurs bordures de cellule à différentes couleurs dans un tableau HTML en mode Composition, les bordures d’une cellule peuvent ne pas refléter la couleur attendue. Pour connaître le comportement connu, consultez OfficeDev/office-js problème #1818.
Niveau d’autorisation minimal : lire l’élément
Mode Outlook applicable : Rédiger ou Lire
Utilisateur
- Office.AppointmentCompose : corps
- Office.AppointmentRead : body
- Office.LoadedMessageCompose : body
- Office.LoadedMessageRead : body
- Office.MessageCompose : body
- Office.MessageRead : body
Exemples
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/add-inline-base64-image.yaml
// Get the current body of the message or appointment.
Office.context.mailbox.item.body.getAsync(Office.CoercionType.Html, (bodyResult) => {
if (bodyResult.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to get body: ${bodyResult.error.message}`);
return;
}
// Add the Base64-encoded image to the end of the body.
const options = { isInline: true, asyncContext: bodyResult.value };
Office.context.mailbox.item.addFileAttachmentFromBase64Async(base64String, "sample.png", options, (attachResult) => {
if (attachResult.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to attach file: ${attachResult.error.message}`);
return;
}
let body = attachResult.asyncContext;
body += '<img src="cid:sample.png" />';
Office.context.mailbox.item.body.setAsync(body, { coercionType: Office.CoercionType.Html }, (setResult) => {
if (setResult.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to set body: ${setResult.error.message}`);
return;
}
console.log("Inline Base64-encoded image added to the end of the body.");
});
});
});
Méthodes
| append |
Ajoute le contenu spécifié à la fin du corps de l’élément, après une signature. Pour utiliser |
| append |
Ajoute le contenu spécifié à la fin du corps de l’élément, après une signature. Pour utiliser |
| get |
Renvoie l’intégralité du corps actuel dans le format spécifié par |
| get |
Renvoie l’intégralité du corps actuel dans le format spécifié par |
| get |
Obtient une valeur qui indique si le contenu est au format HTML ou texte. |
| get |
Obtient une valeur qui indique si le contenu est au format HTML ou texte. |
| prepend |
Ajoute le contenu spécifié au début du corps de l’élément. |
| prepend |
Ajoute le contenu spécifié au début du corps de l’élément. |
| prepend |
Ajout de HTML ou de texte brut au début du corps d’un message ou d’un rendez-vous lorsque l’élément de courrier est envoyé. Pour utiliser |
| prepend |
Ajout de HTML ou de texte brut au début du corps d’un message ou d’un rendez-vous lorsque l’élément de courrier est envoyé. Pour utiliser |
| set |
Remplace l’ensemble du corps avec le texte spécifié. |
| set |
Remplace l’ensemble du corps avec le texte spécifié. |
| set |
Remplace la sélection dans le corps par le texte spécifié. La méthode |
| set |
Remplace la sélection dans le corps par le texte spécifié. La méthode |
| set |
Ajoute une signature au corps de l’élément s’il n’a pas de signature existante. S’il existe déjà une signature dans le corps, remplace cette signature. |
| set |
Ajoute une signature au corps de l’élément s’il n’a pas de signature existante. S’il existe déjà une signature dans le corps, remplace cette signature. |
Détails de la méthode
appendOnSendAsync(data, options, callback)
Ajoute le contenu spécifié à la fin du corps de l’élément, après une signature.
Pour utiliser appendOnSendAsync, vous devez spécifier une autorisation supplémentaire dans le manifeste. Les détails varient selon le type de manifeste. Voir Présentation des autorisations des compléments Outlook. Pour en savoir plus sur l’ajout à l’envoi et sa configuration, voir Implémenter l’ajout à l’envoi dans votre complément Outlook.
appendOnSendAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Paramètres
- data
-
string
Chaîne à ajouter à la fin du corps. La chaîne est limitée à 5 000 caractères.
Un littéral d’objet qui contient une ou plusieurs des propriétés suivantes :- asyncContext: Les développeurs peuvent fournir n’importe quel objet auquel ils souhaitent accéder dans la fonction de rappel.
coercionType
: format souhaité pour les données à ajouter. La chaîne du paramètre data est convertie dans ce format.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.9
Niveau d’autorisation minimal : lecture/écriture d’élément
Mode Outlook applicable : Compose
Recommandé : Appelez getTypeAsync, puis transmettez sa options.coercionType valeur renvoyée au paramètre.
Important:
Si l’utilisateur exécute des compléments qui implémentent la fonction lors de l’envoi à l’aide
ItemSendde dans le manifeste, l’ajout à l’envoi s’exécute avant la fonctionnalité à l’envoi.Si votre complément implémente la fonctionnalité lors de l’envoi et appelle
appendOnSendAsyncleItemSendgestionnaire, l’appelappendOnSendAsyncrenvoie une erreur, car ce scénario n’est pas pris en charge.Pour effacer les données d’un appel précédent
appendOnSendAsync, vous pouvez le rappeler avec ledataparamètre défini surnull.Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
appendOnSendAsyncméthode ne prend pas en charge le CSS intégré. Utilisez plutôt du CSS interne ou externe.La
appendOnSendAsyncméthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsyncméthode. Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize: ledataparamètre est supérieur à 5 000 caractères.InvalidFormatError: leoptions.coercionTypeparamètre est défini surOffice.CoercionType.Htmlmais le corps du message est en texte brut.
Exemples
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/append-text-on-send.yaml
// This snippet appends text to the end of the message or appointment's body once it's sent.
const text = (document.getElementById("text-field") as HTMLInputElement).value;
// It's recommended to call getTypeAsync and pass its returned value to the options.coercionType parameter of the appendOnSendAsync call.
Office.context.mailbox.item.body.getTypeAsync((asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Action failed with error: " + asyncResult.error.message);
return;
}
const bodyFormat = asyncResult.value;
Office.context.mailbox.item.body.appendOnSendAsync(text, { coercionType: bodyFormat }, (asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Action failed with error: " + asyncResult.error.message);
return;
}
console.log(`"${text}" will be appended to the body once the message or appointment is sent. Send the mail item to test this feature.`);
});
});
appendOnSendAsync(data, callback)
Ajoute le contenu spécifié à la fin du corps de l’élément, après une signature.
Pour utiliser appendOnSendAsync, vous devez spécifier une autorisation supplémentaire dans le manifeste. Les détails varient selon le type de manifeste. Voir Présentation des autorisations des compléments Outlook. Pour en savoir plus sur l’ajout à l’envoi et sa configuration, voir Implémenter l’ajout à l’envoi dans votre complément Outlook.
appendOnSendAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Paramètres
- data
-
string
Chaîne à ajouter à la fin du corps. La chaîne est limitée à 5 000 caractères.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.9
Niveau d’autorisation minimal : lecture/écriture d’élément
Mode Outlook applicable : Compose
Recommandé : Appelez getTypeAsync, puis transmettez sa options.coercionType valeur renvoyée au paramètre.
Important:
Si l’utilisateur exécute des compléments qui implémentent la fonction lors de l’envoi à l’aide
ItemSendde dans le manifeste, l’ajout à l’envoi s’exécute avant la fonctionnalité à l’envoi.Si votre complément implémente la fonctionnalité lors de l’envoi et appelle
appendOnSendAsyncleItemSendgestionnaire, l’appelappendOnSendAsyncrenvoie une erreur, car ce scénario n’est pas pris en charge.Pour effacer les données d’un appel précédent
appendOnSendAsync, vous pouvez le rappeler avec ledataparamètre défini surnull.Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
appendOnSendAsyncméthode ne prend pas en charge le CSS intégré. Utilisez plutôt du CSS interne ou externe.La
appendOnSendAsyncméthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsyncméthode. Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize: ledataparamètre est supérieur à 5 000 caractères.InvalidFormatError: leoptions.coercionTypeparamètre est défini surOffice.CoercionType.Htmlmais le corps du message est en texte brut.
getAsync(coercionType, options, callback)
Renvoie l’intégralité du corps actuel dans le format spécifié par coercionType.
getAsync(coercionType: Office.CoercionType | string, options: Office.AsyncContextOptions & { bodyMode?: MailboxEnums.BodyMode }, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;
Paramètres
- coercionType
-
Office.CoercionType | string
Format du corps renvoyé.
- options
-
Office.AsyncContextOptions & { bodyMode?: Office.MailboxEnums.BodyMode }
Littéral d’objet contenant une ou plusieurs des propriétés suivantes.
asyncContext
: toutes les données auxquelles vous souhaitez accéder dans la fonction de rappel.
bodyMode
: dans Outlook sur le web, sur les appareils mobiles et dans le nouvel Outlook sur Windows, spécifie si seul le corps du message actif ou l’intégralité du corps d’une conversation de message est renvoyé. Si aucune valeur n’est spécifiée, bodyMode la valeur par défaut est Office.MailboxEnums.BodyMode.FullBody, qui renvoie le corps entier d’une conversation. La bodyMode propriété s’applique uniquement aux réponses sur la surface Message Compose. Il est ignoré dans Outlook sur Windows (classique) et sur Mac.
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult. Le corps est fourni dans le format demandé dans la asyncResult.value propriété.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.3
Niveau d’autorisation minimal : lire l’élément
Mode Outlook applicable : Rédiger ou Lire
Important:
Lorsque vous travaillez avec des corps au format HTML, il est important de noter que la valeur retournée par la
Body.getAsyncméthode ne sera pas nécessairement exactement la même que celle précédemment passée dans laBody.setAsyncméthode. Le client peut modifier la valeur passée àsetAsyncpour qu’elle s’affiche efficacement avec son moteur de rendu.Dans Outlook sur le web et la nouvelle version d’Outlook sur Windows, la spécification
Office.CoercionType.Textdans l’appelgetAsyncpeut ne pas toujours fournir une mise en forme fiable. SpécifiezOffice.CoercionType.Htmlplutôt si le corps contient des éléments formatés, tels que des tableaux, des listes et des liens.Dans Outlook sur le web et dans la nouvelle version d’Outlook sur Windows, les utilisateurs peuvent organiser leurs messages sous forme de conversations ou de messages individuels dans Paramètres Disposition>> ducourrier>l’organisation des messages (voir Modifier l’affichage de la liste des messages dans Outlook). Ce paramètre affecte la proportion de corps d’un message visible pour l’utilisateur (c’est-à-dire l’intégralité du fil de conversation d’un message ou uniquement le message actif). En mode Message Compose, en particulier pour les réponses à un thread de conversation avec plusieurs messages, si vous souhaitez que le corps renvoyé reflète le paramètre de l’utilisateur, spécifiez le
bodyMode: Office.MailboxEnums.BodyMode.HostConfigparamètre dans votregetAsyncappel. Si les messages sont regroupés par conversation, seul le corps de la réponse active est renvoyé. À l’inverse, si les messages sont affichés individuellement, le fil de conversation entier est renvoyé.Dans Outlook sur les appareils mobiles, la propriété est disponible à partir de la
bodyModeversion 4.2538.0.Dans Outlook sur les appareils mobiles, la spécification
bodyMode: Office.MailboxEnums.BodyMode.HostConfigrenvoie le corps de la réponse actuelle.Dans Outlook sur les appareils mobiles, en mode de réponse rapide (le champ de réponse en bas du message), seul le corps de la réponse active est renvoyé. Cela s’applique même si
bodyMode: Office.MailboxEnums.BodyMode.FullBodycela est spécifié dans l’appelgetAsync.L’option
bodyModen’est pas prise en charge sur un message chargé à l’aide de laloadItemByIdAsyncméthode. Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
getAsync(coercionType, callback)
Renvoie l’intégralité du corps actuel dans le format spécifié par coercionType.
getAsync(coercionType: Office.CoercionType | string, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;
Paramètres
- coercionType
-
Office.CoercionType | string
Format du corps renvoyé.
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult. Le corps est fourni dans le format demandé dans la asyncResult.value propriété.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.3
Niveau d’autorisation minimal : lire l’élément
Mode Outlook applicable : Rédiger ou Lire
Important:
Lorsque vous travaillez avec des corps au format HTML, il est important de noter que la valeur retournée par la
Body.getAsyncméthode ne sera pas nécessairement exactement la même que celle précédemment passée dans laBody.setAsyncméthode. Le client peut modifier la valeur passée àsetAsyncpour qu’elle s’affiche efficacement avec son moteur de rendu.Dans Outlook sur le web et la nouvelle version d’Outlook sur Windows, la spécification
Office.CoercionType.Textdans l’appelgetAsyncpeut ne pas toujours fournir une mise en forme fiable. SpécifiezOffice.CoercionType.Htmlplutôt si le corps contient des éléments formatés, tels que des tableaux, des listes et des liens.Dans Outlook sur le web et dans la nouvelle version d’Outlook sur Windows, les utilisateurs peuvent organiser leurs messages sous forme de conversations ou de messages individuels dans Paramètres Disposition>> ducourrier>l’organisation des messages (voir Modifier l’affichage de la liste des messages dans Outlook). Ce paramètre affecte la proportion de corps d’un message visible pour l’utilisateur (c’est-à-dire l’intégralité du fil de conversation d’un message ou uniquement le message actif). En mode Message Compose, en particulier pour les réponses à un thread de conversation avec plusieurs messages, si vous souhaitez que le corps renvoyé reflète le paramètre de l’utilisateur, spécifiez le
bodyMode: Office.MailboxEnums.BodyMode.HostConfigparamètre dans votregetAsyncappel. Si les messages sont regroupés par conversation, seul le corps de la réponse active est renvoyé. À l’inverse, si les messages sont affichés individuellement, le fil de conversation entier est renvoyé.Dans Outlook sur les appareils mobiles, la propriété est disponible à partir de la
bodyModeversion 4.2538.0.Dans Outlook sur les appareils mobiles, la spécification
bodyMode: Office.MailboxEnums.BodyMode.HostConfigrenvoie le corps de la réponse actuelle.Dans Outlook sur les appareils mobiles, en mode de réponse rapide (le champ de réponse en bas du message), seul le corps de la réponse active est renvoyé. Cela s’applique même si
bodyMode: Office.MailboxEnums.BodyMode.FullBodycela est spécifié dans l’appelgetAsync.
Exemples
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/add-inline-base64-image.yaml
// Get the current body of the message or appointment.
Office.context.mailbox.item.body.getAsync(Office.CoercionType.Html, (bodyResult) => {
if (bodyResult.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to get body: ${bodyResult.error.message}`);
return;
}
// Add the Base64-encoded image to the end of the body.
const options = { isInline: true, asyncContext: bodyResult.value };
Office.context.mailbox.item.addFileAttachmentFromBase64Async(base64String, "sample.png", options, (attachResult) => {
if (attachResult.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to attach file: ${attachResult.error.message}`);
return;
}
let body = attachResult.asyncContext;
body += '<img src="cid:sample.png" />';
Office.context.mailbox.item.body.setAsync(body, { coercionType: Office.CoercionType.Html }, (setResult) => {
if (setResult.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to set body: ${setResult.error.message}`);
return;
}
console.log("Inline Base64-encoded image added to the end of the body.");
});
});
});
getTypeAsync(options, callback)
Obtient une valeur qui indique si le contenu est au format HTML ou texte.
getTypeAsync(options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<Office.CoercionType>) => void): void;
Paramètres
- options
- Office.AsyncContextOptions
Un littéral d’objet qui contient une ou plusieurs des propriétés suivantes :- asyncContext: Les développeurs peuvent fournir n’importe quel objet auquel ils souhaitent accéder dans la fonction de rappel.
- callback
-
(asyncResult: Office.AsyncResult<Office.CoercionType>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult. Le type de contenu est renvoyé comme l’une des valeurs de CoercionType la asyncResult.value propriété.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.1
Niveau d’autorisation minimal : lire l’élément
Mode Outlook applicable : Compose
Important : dans Outlook sur Android et sur iOS, cette méthode n’est pas prise en charge en mode de Composition de message. Seul le mode Organisateur de rendez-vous est pris en charge. 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/20-item-body/get-body-format.yaml
// Get the mail item's body format (plain text or HTML) and log it to the console.
Office.context.mailbox.item.body.getTypeAsync((asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Action failed with error: " + asyncResult.error.message);
return;
}
console.log("Body format: " + asyncResult.value);
});
getTypeAsync(callback)
Obtient une valeur qui indique si le contenu est au format HTML ou texte.
getTypeAsync(callback?: (asyncResult: Office.AsyncResult<Office.CoercionType>) => void): void;
Paramètres
- callback
-
(asyncResult: Office.AsyncResult<Office.CoercionType>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult. Le type de contenu est renvoyé comme l’une des valeurs de CoercionType la asyncResult.value propriété.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.1
Niveau d’autorisation minimal : lire l’élément
Mode Outlook applicable : Compose
Important : dans Outlook sur Android et sur iOS, cette méthode n’est pas prise en charge en mode de Composition de message. Seul le mode Organisateur de rendez-vous est pris en charge. 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.
prependAsync(data, options, callback)
Ajoute le contenu spécifié au début du corps de l’élément.
prependAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Paramètres
- data
-
string
La chaîne doit être insérée au début du corps. Elle est limitée à un million de caractères.
Un littéral d’objet qui contient une ou plusieurs des propriétés suivantes :- asyncContext: Les développeurs peuvent fournir n’importe quel objet auquel ils souhaitent accéder dans la fonction de rappel.
coercionType
: Le format souhaité pour le corps. La chaîne du paramètre data est convertie dans ce format.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.1
Niveau d’autorisation minimal : lecture/écriture d’élément
Mode Outlook applicable : Compose
Recommandé : appelez getTypeAsync, puis transmettez la valeur renvoyée au options.coercionType paramètre.
Important:
Une fois le contenu ajouté, la position du curseur dépend du client que le complément exécute. Dans Outlook sur le web et sur Windows (nouveau et classique), la position du curseur reste la même dans le contenu préexistant du corps. Par exemple, si le curseur a été positionné au début du corps avant l’appel
prependAsync, il apparaîtra entre le contenu préfixé et le contenu préexistant du corps du corps après l’appel. Dans Outlook sur Mac, la position du curseur n’est pas conservée. Le curseur disparaît après l’appelprependAsyncet ne réapparaît que lorsque l’utilisateur sélectionne un élément dans le corps de l’élément de courrier.Lorsque vous travaillez avec des corps au format HTML, il est important de noter que le client peut modifier la valeur transmise à
prependAsyncpour qu’elle s’affiche efficacement avec son moteur de rendu. Cela signifie que la valeur renvoyée par un appel ultérieur à la méthode (introduite dans laBody.getAsyncboîte aux lettres 1.3) ne contiendra pas nécessairement la valeur exacte qui a été passée lors de l’appel précédentprependAsync.Lors de l’inclusion de liens dans le balisage HTML, vous pouvez désactiver l’aperçu des liens en ligne en définissant l’attribut
idsur l’ancre (<a>) sur « LPNoLP ». Par exemple,'<a id="LPNoLP" href="http://www.contoso.com">Click here!</a>'.Dans Outlook sur Android et sur iOS, cette méthode n’est pas prise en charge en mode Compose de messages. Seul le mode Organisateur de rendez-vous est pris en charge. 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.
Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
prependAsyncméthode ne prend pas en charge le CSS intégré. Utilisez plutôt du CSS interne ou externe.La
prependAsyncméthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsyncméthode. Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
-
DataExceedsMaximumSize: le paramètre de données est supérieur à 1 000 000 caractères.
Exemples
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/prepend-text-to-item-body.yaml
/* This snippet adds text to the beginning of the message or appointment's body.
When prepending a link in HTML markup to the body, you can disable the online link preview by setting the anchor tag's id attribute to "LPNoLP". For example, '<a id="LPNoLP" href="https://www.contoso.com">Click here!</a>'.
*/
const text = (document.getElementById("text-field") as HTMLInputElement).value;
// It's recommended to call getTypeAsync and pass its returned value to the options.coercionType parameter of the prependAsync call.
Office.context.mailbox.item.body.getTypeAsync((asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Action failed with error: " + asyncResult.error.message);
return;
}
const bodyFormat = asyncResult.value;
Office.context.mailbox.item.body.prependAsync(text, { coercionType: bodyFormat }, (asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Action failed with error: " + asyncResult.error.message);
return;
}
console.log(`"${text}" prepended to the body.`);
});
});
prependAsync(data, callback)
Ajoute le contenu spécifié au début du corps de l’élément.
prependAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Paramètres
- data
-
string
La chaîne doit être insérée au début du corps. Elle est limitée à un million de caractères.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.1
Niveau d’autorisation minimal : lecture/écriture d’élément
Mode Outlook applicable : Compose
Recommandé : appelez getTypeAsync, puis transmettez la valeur renvoyée au options.coercionType paramètre.
Important:
Une fois le contenu ajouté, la position du curseur dépend du client que le complément exécute. Dans Outlook sur le web et sur Windows (nouveau et classique), la position du curseur reste la même dans le contenu préexistant du corps. Par exemple, si le curseur a été positionné au début du corps avant l’appel
prependAsync, il apparaîtra entre le contenu préfixé et le contenu préexistant du corps du corps après l’appel. Dans Outlook sur Mac, la position du curseur n’est pas conservée. Le curseur disparaît après l’appelprependAsyncet ne réapparaît que lorsque l’utilisateur sélectionne un élément dans le corps de l’élément de courrier.Lorsque vous travaillez avec des corps au format HTML, il est important de noter que le client peut modifier la valeur transmise à
prependAsyncpour qu’elle s’affiche efficacement avec son moteur de rendu. Cela signifie que la valeur renvoyée par un appel ultérieur à la méthode (introduite dans laBody.getAsyncboîte aux lettres 1.3) ne contiendra pas nécessairement la valeur exacte qui a été passée lors de l’appel précédentprependAsync.Lors de l’inclusion de liens dans le balisage HTML, vous pouvez désactiver l’aperçu des liens en ligne en définissant l’attribut
idsur l’ancre (<a>) sur « LPNoLP ». Par exemple,'<a id="LPNoLP" href="http://www.contoso.com">Click here!</a>'.Dans Outlook sur Android et sur iOS, cette méthode n’est pas prise en charge en mode Compose de messages. Seul le mode Organisateur de rendez-vous est pris en charge. 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.
Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
prependAsyncméthode ne prend pas en charge le CSS intégré. Utilisez plutôt du CSS interne ou externe.La
prependAsyncméthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsyncméthode. Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
-
DataExceedsMaximumSize: le paramètre de données est supérieur à 1 000 000 caractères.
prependOnSendAsync(data, options, callback)
Ajout de HTML ou de texte brut au début du corps d’un message ou d’un rendez-vous lorsque l’élément de courrier est envoyé.
Pour utiliser prependOnSendAsync, vous devez spécifier une autorisation supplémentaire dans le manifeste. Les détails varient selon le type de manifeste. Pour obtenir des conseils, voir Présentation des autorisations des compléments Outlook.
prependOnSendAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Paramètres
- data
-
string
Chaîne placée en préambule du début du corps du message ou du rendez-vous. La chaîne est limitée à 5 000 caractères.
Littéral d’objet qui contient une ou plusieurs des propriétés suivantes :- asyncContext: Tout objet accessible dans la fonction de rappel.
coercionType
: Le format souhaité pour le corps. La chaîne du data paramètre est convertie dans ce format.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.13
Niveau d’autorisation minimal : lecture/écriture d’élément
Mode Outlook applicable : Compose
Recommandé : Appelez getTypeAsync, puis transmettez sa options.coercionType valeur renvoyée au paramètre.
Important : Lors de la mise en œuvre prependOnSendAsync, gardez à l’esprit les points suivants.
Dans un complément Smart Alerts, la fonction de préfixe à l’envoi s’exécute en premier.
Une nouvelle ligne est ajoutée après le contenu précédé.
Si plusieurs compléments actifs appellent
prependOnSendAsync, l’ordre du contenu inséré dépend de l’ordre d’exécution du complément. Le contenu du complément de la dernière exécution s’affiche au-dessus du contenu précédemment ajouté.Si le complément tente d’insérer du code HTML dans un corps en texte brut, le contenu ne sera pas précédé. Inversement, le texte brut sera inséré dans un corps HTML.
Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
prependOnSendAsyncméthode ne prend pas en charge le CSS intégré. Utilisez plutôt du CSS interne ou externe.La
prependOnSendAsyncméthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsyncméthode. Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize: ledataparamètre dépasse 5 000 caractères.InvalidFormatError: leoptions.coercionTypeparamètre est défini surOffice.CoercionType.Html, mais le corps de l’élément est au format texte brut.
Exemples
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/prepend-text-on-send.yaml
// This snippet prepends text to the beginning of the message or appointment's body once it's sent.
const text = (document.getElementById("text-field") as HTMLInputElement).value;
// It's recommended to call getTypeAsync and pass its returned value to the options.coercionType parameter of the prependOnSendAsync call.
Office.context.mailbox.item.body.getTypeAsync((asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Action failed with error: " + asyncResult.error.message);
return;
}
const bodyFormat = asyncResult.value;
Office.context.mailbox.item.body.prependOnSendAsync(text, { coercionType: bodyFormat }, (asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Action failed with error: " + asyncResult.error.message);
return;
}
console.log(`"${text}" will be prepended to the body once the message or appointment is sent. Send the mail item to test this feature.`);
});
});
prependOnSendAsync(data, callback)
Ajout de HTML ou de texte brut au début du corps d’un message ou d’un rendez-vous lorsque l’élément de courrier est envoyé.
Pour utiliser prependOnSendAsync, vous devez spécifier une autorisation supplémentaire dans le manifeste. Les détails varient selon le type de manifeste. Pour obtenir des conseils, voir Présentation des autorisations des compléments Outlook.
prependOnSendAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Paramètres
- data
-
string
Chaîne placée en préambule du début du corps du message ou du rendez-vous. La chaîne est limitée à 5 000 caractères.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.13
Niveau d’autorisation minimal : lecture/écriture d’élément
Mode Outlook applicable : Compose
Recommandé : Appelez getTypeAsync, puis transmettez sa options.coercionType valeur renvoyée au paramètre.
Important : Lors de la mise en œuvre prependOnSendAsync, gardez à l’esprit les points suivants.
Dans un complément Smart Alerts, la fonction de préfixe à l’envoi s’exécute en premier.
Une nouvelle ligne est ajoutée après le contenu précédé.
Si plusieurs compléments actifs appellent
prependOnSendAsync, l’ordre du contenu inséré dépend de l’ordre d’exécution du complément. Le contenu du complément de la dernière exécution s’affiche au-dessus du contenu précédemment ajouté.Si le complément tente d’insérer du code HTML dans un corps en texte brut, le contenu ne sera pas précédé. Inversement, le texte brut sera inséré dans un corps HTML.
Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
prependOnSendAsyncméthode ne prend pas en charge le CSS intégré. Utilisez plutôt du CSS interne ou externe.La
prependOnSendAsyncméthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsyncméthode. Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize: ledataparamètre dépasse 5 000 caractères.InvalidFormatError: leoptions.coercionTypeparamètre est défini surOffice.CoercionType.Html, mais le corps de l’élément est au format texte brut.
setAsync(data, options, callback)
Remplace l’ensemble du corps avec le texte spécifié.
setAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions & { bodyMode?: MailboxEnums.BodyMode }, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Paramètres
- data
-
string
Chaîne qui remplace le corps existant. Elle est limitée à un million de caractères.
- options
-
Office.AsyncContextOptions & Office.CoercionTypeOptions & { bodyMode?: Office.MailboxEnums.BodyMode }
Littéral d’objet contenant une ou plusieurs des propriétés suivantes.
asyncContext
: toutes les données auxquelles vous souhaitez accéder dans la fonction de rappel.
coercionType
: Le format souhaité pour le corps. La chaîne du data paramètre est convertie dans ce format.
bodyMode
: dans Outlook sur le web et la nouvelle version d’Outlook sur Windows, spécifie si seul le corps du message actuel ou l’ensemble du corps d’une conversation de message est défini. Si aucune valeur n’est spécifiée, bodyMode la valeur par défaut est Office.MailboxEnums.BodyMode.FullBody, qui remplace tout le corps, y compris les messages précédents dans le thread de conversation. La bodyMode propriété s’applique uniquement aux réponses sur la surface Message Compose. Il est ignoré dans Outlook sur Windows (classique), sur Mac et sur les appareils mobiles.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.3
Niveau d’autorisation minimal : lecture/écriture d’élément
Mode Outlook applicable : Compose
Recommandé : appelez getTypeAsync, puis transmettez la valeur renvoyée au options.coercionType paramètre.
Important:
Une fois le corps remplacé par le contenu spécifié, la position du curseur dépend du client que le complément exécute. Dans Outlook classique sur Windows, le curseur apparaît au début du corps de l’élément de courrier. Dans Outlook sur le web et la nouvelle version d’Outlook sur Windows, le curseur s’affiche à la fin du corps de l’élément de courrier. Dans Outlook sur Mac, la position du curseur n’est pas conservée. Le curseur disparaît après l’appel
prependAsyncet ne réapparaît que lorsque l’utilisateur sélectionne un élément dans le corps de l’élément de courrier.Lorsque vous travaillez avec des corps au format HTML, il est important de noter que la valeur retournée par la
Body.getAsyncméthode ne sera pas nécessairement exactement la même que celle précédemment passée dans laBody.setAsyncméthode. Le client peut modifier la valeur passée àsetAsyncpour qu’elle s’affiche efficacement avec son moteur de rendu.Lors de l’inclusion de liens dans le balisage HTML, vous pouvez désactiver l’aperçu des liens en ligne en définissant l’attribut
idsur l’ancre (<a>) sur « LPNoLP ». Par exemple,'<a id="LPNoLP" href="http://www.contoso.com">Click here!</a>'.Dans Outlook sur Windows (classique) et sur Mac, l’utilisateur du complément ne peut pas rétablir cette action avec la commande Annuler .
Dans Outlook sur Android et sur iOS, cette méthode n’est pas prise en charge en mode Compose de messages. Seul le mode Organisateur de rendez-vous est pris en charge. 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.
Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
setAsyncméthode ne prend pas en charge le CSS intégré. Utilisez plutôt du CSS interne ou externe.La
setAsyncméthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsyncméthode. Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.Dans Outlook sur le web et la nouvelle version d’Outlook sur Windows, les utilisateurs peuvent organiser leurs messages sous forme de conversations ou de messages individuels dans les paramètres>de la disposition> ducourrier>organization (voir Modifier l’affichage de la liste des messages dans Outlook). Ce paramètre affecte la proportion de corps d’un message visible pour l’utilisateur (c’est-à-dire l’intégralité du fil de conversation d’un message ou uniquement le message actif). En mode Message Compose, en particulier pour les réponses à un thread de conversation avec plusieurs messages, si vous souhaitez respecter les paramètres de l’utilisateur lors de la définition du corps d’un message, spécifiez le
bodyMode: Office.MailboxEnums.BodyMode.HostConfigparamètre dans votresetAsyncappel. Si les messages sont regroupés par conversation, seul le corps de la réponse actuelle est défini. À l’inverse, si les messages sont affichés individuellement, le corps entier, y compris les messages précédents dans le thread de conversation, est remplacé.Dans Outlook sur le web et Outlook sur Windows, si la
bodyModepropriété n’est pas spécifiée ou est définie surOffice.MailboxEnums.BodyMode.FullBody, l’intégralité du corps d’un message, y compris les messages précédents du thread de conversation, est remplacée. Ceci s’applique même si les messages d’un utilisateur sont organisés par conversation. Dans ce scénario, le paramètre de l’utilisateur est temporairement modifié en Messages individuels : ne pas grouper les messages> Unseul message ou Afficher les e-mails en tant que messages individuels pendant l’appelsetAsync. Une notification est affichée à l’utilisateur pour l’avertir de cette modification. Une fois l’appel terminé, le paramètre de l’utilisateur est rétabli.
Erreurs :
DataExceedsMaximumSize: le paramètre de données est supérieur à 1 000 000 caractères.InvalidFormatError: leoptions.coercionTypeparamètre est défini surOffice.CoercionType.Htmlet le corps du message est en texte brut.
Exemples
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/add-inline-base64-image.yaml
// Get the current body of the message or appointment.
Office.context.mailbox.item.body.getAsync(Office.CoercionType.Html, (bodyResult) => {
if (bodyResult.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to get body: ${bodyResult.error.message}`);
return;
}
// Add the Base64-encoded image to the end of the body.
const options = { isInline: true, asyncContext: bodyResult.value };
Office.context.mailbox.item.addFileAttachmentFromBase64Async(base64String, "sample.png", options, (attachResult) => {
if (attachResult.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to attach file: ${attachResult.error.message}`);
return;
}
let body = attachResult.asyncContext;
body += '<img src="cid:sample.png" />';
Office.context.mailbox.item.body.setAsync(body, { coercionType: Office.CoercionType.Html }, (setResult) => {
if (setResult.status === Office.AsyncResultStatus.Failed) {
console.log(`Failed to set body: ${setResult.error.message}`);
return;
}
console.log("Inline Base64-encoded image added to the end of the body.");
});
});
});
setAsync(data, callback)
Remplace l’ensemble du corps avec le texte spécifié.
setAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Paramètres
- data
-
string
Chaîne qui remplace le corps existant. Elle est limitée à 1 000 000 caractères.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.3
Niveau d’autorisation minimal : lecture/écriture d’élément
Mode Outlook applicable : Compose
Recommandé : appelez getTypeAsync, puis transmettez la valeur renvoyée au options.coercionType paramètre.
Important:
Une fois le corps remplacé par le contenu spécifié, la position du curseur dépend du client que le complément exécute. Dans Outlook classique sur Windows, le curseur apparaît au début du corps de l’élément de courrier. Dans Outlook sur le web et la nouvelle version d’Outlook sur Windows, le curseur s’affiche à la fin du corps de l’élément de courrier. Dans Outlook sur Mac, la position du curseur n’est pas conservée. Le curseur disparaît après l’appel
prependAsyncet ne réapparaît que lorsque l’utilisateur sélectionne un élément dans le corps de l’élément de courrier.Lorsque vous travaillez avec des corps au format HTML, il est important de noter que la valeur retournée par la
Body.getAsyncméthode ne sera pas nécessairement exactement la même que celle précédemment passée dans laBody.setAsyncméthode. Le client peut modifier la valeur passée àsetAsyncpour qu’elle s’affiche efficacement avec son moteur de rendu.Lors de l’inclusion de liens dans le balisage HTML, vous pouvez désactiver l’aperçu des liens en ligne en définissant l’attribut
idsur l’ancre (<a>) sur « LPNoLP ». Par exemple,'<a id="LPNoLP" href="http://www.contoso.com">Click here!</a>'.Dans Outlook sur Windows (classique) et sur Mac, l’utilisateur du complément ne peut pas rétablir cette action avec la commande Annuler .
Dans Outlook sur Android et sur iOS, cette méthode n’est pas prise en charge en mode Compose de messages. Seul le mode Organisateur de rendez-vous est pris en charge. 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.
Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
setAsyncméthode ne prend pas en charge le CSS intégré. Utilisez plutôt du CSS interne ou externe.La
setAsyncméthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsyncméthode. Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.Dans Outlook sur le web et la nouvelle version d’Outlook sur Windows, les utilisateurs peuvent organiser leurs messages sous forme de conversations ou de messages individuels dans les paramètres>de la disposition> ducourrier>organization (voir Modifier l’affichage de la liste des messages dans Outlook). Ce paramètre affecte la proportion de corps d’un message visible pour l’utilisateur (c’est-à-dire l’intégralité du fil de conversation d’un message ou uniquement le message actif). En mode Message Compose, en particulier pour les réponses dans un thread de conversation avec plusieurs messages, si vous souhaitez respecter les paramètres de l’utilisateur lors de la définition du corps d’un message, spécifiez le
bodyMode: Office.MailboxEnums.BodyMode.HostConfigparamètre dans votresetAsyncappel. Si les messages sont regroupés par conversation, seul le corps de la réponse actuelle est défini. À l’inverse, si les messages sont affichés individuellement, le corps entier, y compris les messages précédents dans le thread de conversation, est remplacé.Dans Outlook sur le web et Outlook sur Windows, si la
bodyModepropriété n’est pas spécifiée ou est définie surOffice.MailboxEnums.BodyMode.FullBody, l’intégralité du corps d’un message, y compris les messages précédents du thread de conversation, est remplacée. Ceci s’applique même si les messages d’un utilisateur sont organisés par conversation. Dans ce scénario, le paramètre de l’utilisateur est temporairement modifié en Messages individuels : ne pas grouper les messages> Unseul message ou Afficher les e-mails en tant que messages individuels pendant l’appelsetAsync. Une notification est affichée à l’utilisateur pour l’avertir de cette modification. Une fois l’appel terminé, le paramètre de l’utilisateur est rétabli.
Erreurs :
DataExceedsMaximumSize: le paramètre de données est supérieur à 1 000 000 caractères.InvalidFormatError: leoptions.coercionTypeparamètre est défini surOffice.CoercionType.Htmlet le corps du message est en texte brut.
setSelectedDataAsync(data, options, callback)
Remplace la sélection dans le corps par le texte spécifié.
La méthode setSelectedDataAsync insère la chaîne spécifiée à l’emplacement du curseur dans le corps de l’élément ou, si du texte est sélectionné dans l’éditeur, elle remplace ce texte. Si le curseur ne s’est jamais trouvé dans le corps de l’élément, ou si le corps de l’élément n’est plus la partie active de l’interface utilisateur, la chaîne est insérée au début du corps de l’élément. Après l’insertion, le curseur est placé à la fin du contenu inséré.
setSelectedDataAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Paramètres
- data
-
string
Chaîne qui remplace le corps existant. Elle est limitée à 1 000 000 caractères.
Un littéral d’objet qui contient une ou plusieurs des propriétés suivantes :- asyncContext: Les développeurs peuvent fournir n’importe quel objet auquel ils souhaitent accéder dans la fonction de rappel.
coercionType
: Le format souhaité pour le corps. La chaîne du paramètre data est convertie dans ce format.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.1
Niveau d’autorisation minimal : lecture/écriture d’élément
Mode Outlook applicable : Compose
Recommandé : Appelez getTypeAsync puis transmettez la valeur renvoyée au options.coercionType paramètre.
Important:
Lors de l’inclusion de liens dans le balisage HTML, vous pouvez désactiver l’aperçu des liens en ligne en définissant l’attribut
idsur l’ancre (<a>) sur « LPNoLP ». Par exemple,'<a id="LPNoLP" href="http://www.contoso.com">Click here!</a>'.Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
setSelectedDataAsyncméthode ne prend pas en charge le CSS intégré. Utilisez plutôt du CSS interne ou externe.La
setSelectedDataAsyncméthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsyncméthode. Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize: ledataparamètre est supérieur à 1 000 000 caractères.InvalidFormatError: leoptions.coercionTypeparamètre est défini surOffice.CoercionType.Htmlet le corps du message est en texte brut.
Exemples
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/replace-selected-text.yaml
/* This snippet replaces selected text in a message or appointment's body with specified text.
If you want to use a link in HTML markup as a value of the setSelectedDataAsync call's data parameter, you can disable online link preview by setting the anchor tag's id attribute to "LPNoLP". For example, '<a id="LPNoLP" href="https://www.contoso.com">Click here!</a>'.
*/
const text = (document.getElementById("text-field") as HTMLInputElement).value;
// It's recommended to call getTypeAsync and pass its returned value to the options.coercionType parameter of the prependAsync call.
Office.context.mailbox.item.body.getTypeAsync((asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Action failed with error: " + asyncResult.error.message);
return;
}
const bodyFormat = asyncResult.value;
Office.context.mailbox.item.body.setSelectedDataAsync(text, { coercionType: bodyFormat }, (asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log("Action failed with error: " + asyncResult.error.message);
return;
}
console.log(`Replaced selected text with "${text}".`);
});
});
setSelectedDataAsync(data, callback)
Remplace la sélection dans le corps par le texte spécifié.
La méthode setSelectedDataAsync insère la chaîne spécifiée à l’emplacement du curseur dans le corps de l’élément ou, si du texte est sélectionné dans l’éditeur, elle remplace ce texte. Si le curseur ne s’est jamais trouvé dans le corps de l’élément, ou si le corps de l’élément n’est plus la partie active de l’interface utilisateur, la chaîne est insérée au début du corps de l’élément. Après l’insertion, le curseur est placé à la fin du contenu inséré.
setSelectedDataAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Paramètres
- data
-
string
Chaîne qui remplace le corps existant. Elle est limitée à 1 000 000 caractères.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.1
Niveau d’autorisation minimal : lecture/écriture d’élément
Mode Outlook applicable : Compose
Recommandé : Appelez getTypeAsync puis transmettez la valeur renvoyée au options.coercionType paramètre.
Important:
Lors de l’inclusion de liens dans le balisage HTML, vous pouvez désactiver l’aperçu des liens en ligne en définissant l’attribut
idsur l’ancre (<a>) sur « LPNoLP ». Par exemple,'<a id="LPNoLP" href="http://www.contoso.com">Click here!</a>'.Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
setSelectedDataAsyncméthode ne prend pas en charge le CSS intégré. Utilisez plutôt du CSS interne ou externe.La
setSelectedDataAsyncméthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsyncméthode. Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize: ledataparamètre est supérieur à 1 000 000 caractères.InvalidFormatError: leoptions.coercionTypeparamètre est défini surOffice.CoercionType.Htmlet le corps du message est en texte brut.
setSignatureAsync(data, options, callback)
Ajoute une signature au corps de l’élément s’il n’a pas de signature existante. S’il existe déjà une signature dans le corps, remplace cette signature.
setSignatureAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Paramètres
- data
-
string
Chaîne représentant la signature à définir dans le corps du courrier. Cette chaîne est limitée à 30 000 caractères.
Un littéral d’objet qui contient une ou plusieurs des propriétés suivantes :- asyncContext: Les développeurs peuvent fournir n’importe quel objet auquel ils souhaitent accéder dans la fonction de rappel.
coercionType
: format obligatoire pour la signature. Si la méthode est Texte, la méthode définit la signature sur du texte brut, en supprimant les balises HTML présentes. Si elle est Html, la méthode définit la signature sur HTML.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.10
Niveau d’autorisation minimal : lecture/écriture d’élément
Mode Outlook applicable : Compose
Important:
Dans Outlook sur le web et la nouvelle version d’Outlook sur Windows,
setSignatureAsyncfonctionne uniquement sur les messages.Cette méthode est prise en charge dans Message Compose sur Outlook sur Android et sur iOS à partir de la version 4.2352.0. Pour voir un exemple de scénario, voir Implémenter l’activation basée sur les événements dans les compléments mobiles Outlook. Pour en savoir plus sur les API prises en charge dans Outlook Mobile, consultez API JavaScript Outlook prises en charge dans Outlook sur les appareils mobiles.
Le comportement de
setSignatureAsyncdiffère si vous l’appelez dans le gestionnaire d’événements d’un complément qui implémente la fonctionnalité d’activation basée sur les événements à l’aide de LaunchEvent dans le manifeste. Lorsque l’utilisateur compose un nouvel élément (y compris répondre ou transférer), la signature est définie, mais ne modifie pas le formulaire. Cela signifie que si l’utilisateur ferme le formulaire sans effectuer d’autres modifications, il ne sera pas invité à enregistrer les modifications.Les fichiers SVG ne sont pas pris en charge dans les signatures de courrier. Utilisez plutôt des fichiers JPG ou PNG.
La
setSignatureAsyncméthode ne prend pas en charge le CSS intégré. Utilisez plutôt du CSS interne ou externe.La
setSignatureAsyncméthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsyncméthode. Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize: ledataparamètre est supérieur à 30 000 caractères.InvalidFormatError: leoptions.coercionTypeparamètre est défini surOffice.CoercionType.Htmlet le corps du message est en texte brut.
Exemples
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/work-with-client-signatures.yaml
// Set the signature for the current item with inline image.
const modIcon1Base64 = "iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpDRDMxMDg1MjBCNDZFMTExODE2MkM1RUI2M0M4MDYxRCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpFMTUxQjgyRjQ2MEQxMUUxODlFMkQwNTYzQ0YwMTUxMiIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpFMTUxQjgyRTQ2MEQxMUUxODlFMkQwNTYzQ0YwMTUxMiIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgV2luZG93cyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkQxMzEwODUyMEI0NkUxMTE4MTYyQzVFQjYzQzgwNjFEIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkNEMzEwODUyMEI0NkUxMTE4MTYyQzVFQjYzQzgwNjFEIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+uC/WfAAAAehJREFUeNpilCzfwEAEkAbiECA2A2J1IOaHin8E4ptAfBaIVwLxU0IGMRKw0B6IW4DYhoE4cASIK6E0VsCEQ1wUiNcB8QESLGOAqj0MxBuhZhBloS4QnwHiQAbygR/UDF1CFupCXSjHQDmQg5qli8tCUBBsQUoQ1AD8UDNFsVk4n0o+w+bT+egWglKjNymmeGhLkqLcG2oHAwtUoIuQDj5OVgZPLUmwRe5aEmAxqYqNpFgKssOcCeplM0KqdST5GfpDDRm0JfkYrj3/SE7QguyQY4ImYYLgCtAS10kHGMw6dzNsv/qC7OwCClJXYlR++v6b4er3j5QmIFcmaNlIL6AOslCIjhYKMTHQGTBBqxh6gXcgC6/R0cKbIAv30dHCfaAKGJTxHxJSqS3Fz9DkowNmywpyMcgA8fF7b8D8VWcfM6w8+4gYC+VB+RCk8hSh0gaUD4/dewvlvUWRe/z+GzGWgex4BGtiOAHxXhoHpzMoSGHZAhSPW2lo2VZYWkHOh4nEtLrIAE+hZmNUwK+B2BOIv1PRsu9QM1/jatNcBtVZ0IREKXgENesyoVYbzNIdFFi2A5tl+NqlL6BB4QBNzsSCU1A9nlAzMAALAQMOQl0qB23qWwKxIlIrDBQ394H4OBCvISYqAAIMACVibHDqsO7zAAAAAElFTkSuQmCC";
Office.context.mailbox.item.addFileAttachmentFromBase64Async(
modIcon1Base64,
"myImage.png",
{ isInline: true },
function(result) {
if (result.status == Office.AsyncResultStatus.Succeeded) {
const signature = (document.getElementById("signature") as HTMLInputElement).value + "<img src='cid:myImage.png'>";
console.log(`Setting signature to "${signature}".`);
Office.context.mailbox.item.body.setSignatureAsync(
signature,
{ coercionType: "html" },
function(asyncResult) {
console.log(`setSignatureAsync: ${asyncResult.status}`);
}
);
} else {
console.error(`addFileAttachmentFromBase64Async: ${result.error}`);
}
}
);
...
// Set the signature for the current item.
const signature = (document.getElementById("signature") as HTMLInputElement).value;
console.log(`Setting signature to "${signature}".`);
Office.context.mailbox.item.body.setSignatureAsync(signature, function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
console.log("setSignatureAsync succeeded");
} else {
console.error(asyncResult.error);
}
});
setSignatureAsync(data, callback)
Ajoute une signature au corps de l’élément s’il n’a pas de signature existante. S’il existe déjà une signature dans le corps, remplace cette signature.
setSignatureAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Paramètres
- data
-
string
Chaîne représentant la signature à définir dans le corps du courrier. Cette chaîne est limitée à 30 000 caractères.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Facultatif. Lorsque la méthode est terminée, la fonction passée dans le callback paramètre est appelée avec un seul paramètre de type Office.AsyncResult.
Retours
void
Remarques
Jeu d’API : Boîte aux lettres 1.10
Niveau d’autorisation minimal : lecture/écriture d’élément
Mode Outlook applicable : Compose
Important:
Dans Outlook sur le web et la nouvelle version d’Outlook sur Windows,
setSignatureAsyncfonctionne uniquement sur les messages.Cette méthode est prise en charge dans Message Compose sur Outlook sur Android et sur iOS à partir de la version 4.2352.0. Pour voir un exemple de scénario, voir Implémenter l’activation basée sur les événements dans les compléments mobiles Outlook. Pour en savoir plus sur les API prises en charge dans Outlook Mobile, consultez API JavaScript Outlook prises en charge dans Outlook sur les appareils mobiles.
Le comportement de
setSignatureAsyncdiffère si vous l’appelez dans le gestionnaire d’événements d’un complément qui implémente la fonctionnalité d’activation basée sur les événements à l’aide de LaunchEvent dans le manifeste. Lorsque l’utilisateur compose un nouvel élément (y compris répondre ou transférer), la signature est définie, mais ne modifie pas le formulaire. Cela signifie que si l’utilisateur ferme le formulaire sans effectuer d’autres modifications, il ne sera pas invité à enregistrer les modifications.Les fichiers SVG ne sont pas pris en charge dans les signatures de courrier. Utilisez plutôt des fichiers JPG ou PNG.
La
setSignatureAsyncméthode ne prend pas en charge le CSS intégré. Utilisez plutôt du CSS interne ou externe.La
setSignatureAsyncméthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsyncméthode. Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize: ledataparamètre est supérieur à 30 000 caractères.InvalidFormatError: leoptions.coercionTypeparamètre est défini surOffice.CoercionType.Htmlet le corps du message est en texte brut.