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
[ Ensemble d’API : Boîte aux lettres 1.1 ]
Problème connu avec les couleurs de bordure de tableau HTML
Outlook sur Windows : si vous définissez différentes bordures de cellule sur différentes couleurs dans un tableau HTML en mode Compose, les bordures d’une cellule peuvent ne pas refléter la couleur attendue. Pour connaître le comportement connu, consultez OfficeDev/office-js issue #1818.
Niveau d’autorisation minimal : élément de lecture
Mode Outlook applicable : Rédiger ou Lire
Exemples
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/add-inline-base64-image.yaml
const mailItem = Office.context.mailbox.item;
const base64String =
"iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAMAAADVRocKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAnUExURQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN0S+bUAAAAMdFJOUwAQIDBAUI+fr7/P7yEupu8AAAAJcEhZcwAADsMAAA7DAcdvqGQAAAF8SURBVGhD7dfLdoMwDEVR6Cspzf9/b20QYOthS5Zn0Z2kVdY6O2WULrFYLBaLxd5ur4mDZD14b8ogWS/dtxV+dmx9ysA2QUj9TQRWv5D7HyKwuIW9n0vc8tkpHP0W4BOg3wQ8wtlvA+PC1e8Ao8Ld7wFjQtHvAiNC2e8DdqHqKwCrUPc1gE1AfRVgEXBfB+gF0lcCWoH2tYBOYPpqQCNwfT3QF9i+AegJfN8CtAWhbwJagtS3AbIg9o2AJMh9M5C+SVGBvx6zAfmT0r+Bv8JMwP4kyFPir+cswF5KL3WLv14zAFBCLf56Tw9cparFX4upgaJUtPhrOS1QlY5W+vWTXrGgBFB/b72ev3/0igUdQPppP/nfowfKUUEFcP207y/yxKmgAYQ+PywoAFOfCH3A2MdCFzD3kdADBvq10AGG+pXQBgb7pdAEhvuF0AIc/VtoAK7+JciAs38KIuDugyAC/v4hiMCE/i7IwLRBsh68N2WQjMVisVgs9i5bln8LGScNcCrONQAAAABJRU5ErkJggg==";
// Get the current body of the message or appointment.
mailItem.body.getAsync(Office.CoercionType.Html, (bodyResult) => {
if (bodyResult.status === Office.AsyncResultStatus.Succeeded) {
// Insert the Base64-encoded image to the beginning of the body.
const options = { isInline: true, asyncContext: bodyResult.value };
mailItem.addFileAttachmentFromBase64Async(base64String, "sample.png", options, (attachResult) => {
if (attachResult.status === Office.AsyncResultStatus.Succeeded) {
let body = attachResult.asyncContext;
body = body.replace("<p class=MsoNormal>", `<p class=MsoNormal><img src="cid:sample.png">`);
mailItem.body.setAsync(body, { coercionType: Office.CoercionType.Html }, (setResult) => {
if (setResult.status === Office.AsyncResultStatus.Succeeded) {
console.log("Inline Base64-encoded image added to the body.");
} else {
console.log(setResult.error.message);
}
});
} else {
console.log(attachResult.error.message);
}
});
} else {
console.log(bodyResult.error.message);
}
});
Méthodes
append |
Ajoute sur envoyer le contenu spécifié à la fin du corps de l’élément, après toute signature. Pour utiliser |
append |
Ajoute sur envoyer le contenu spécifié à la fin du corps de l’élément, après toute signature. Pour utiliser |
get |
Renvoie le corps actif dans un format spécifié. Cette méthode retourne l’intégralité du corps actuel dans le format spécifié par |
get |
Renvoie le corps actif dans un format spécifié. Cette méthode retourne 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 |
Ajoute le code HTML ou le texte brut au début du corps d’un message ou d’un rendez-vous lors de l’envoi de l’élément de courrier. Pour utiliser |
prepend |
Ajoute le code HTML ou le texte brut au début du corps d’un message ou d’un rendez-vous lors de l’envoi de l’élément de courrier. 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 y a 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 y a déjà une signature dans le corps, remplace cette signature. |
Détails de la méthode
appendOnSendAsync(data, options, callback)
Ajoute sur envoyer le contenu spécifié à la fin du corps de l’élément, après toute 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 de complément Outlook. Pour en savoir plus sur append-on-send et sa configuration, voir Implémenter l’ajout sur 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.
Littéral d’objet qui contient une ou plusieurs des propriétés suivantes : les asyncContext
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
Optional. 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
. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error
.
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.9 ]
Niveau d’autorisation minimal : élément en lecture/écriture
Mode Outlook applicable : Compose
Recommandé : appelez getTypeAsync
, puis passez sa valeur retournée au options.coercionType
paramètre .
Important:
Si l’utilisateur exécute des compléments qui implémentent la fonctionnalité d’envoi à l’aide
ItemSend
du manifeste, append-on-send s’exécute avant la fonctionnalité d’envoi.Si votre complément implémente la fonctionnalité d’envoi et appelle
appendOnSendAsync
dans leItemSend
gestionnaire, l’appelappendOnSendAsync
retourne 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 les appeler à nouveau avec ledata
paramètre défini surnull
.Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
appendOnSendAsync
méthode ne prend pas en charge css inline. Utilisez plutôt des css internes ou externes.La
appendOnSendAsync
méthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsync
méthode . Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize
: ledata
paramètre comporte plus de 5 000 caractères.InvalidFormatError
: leoptions.coercionType
paramètre est défini surOffice.CoercionType.Html
, mais 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 = $("#text-field").val();
// 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 sur envoyer le contenu spécifié à la fin du corps de l’élément, après toute 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 de complément Outlook. Pour en savoir plus sur append-on-send et sa configuration, voir Implémenter l’ajout sur 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
Optional. 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
. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error
.
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.9 ]
Niveau d’autorisation minimal : élément en lecture/écriture
Mode Outlook applicable : Compose
Recommandé : appelez getTypeAsync
, puis passez sa valeur retournée au options.coercionType
paramètre .
Important:
Si l’utilisateur exécute des compléments qui implémentent la fonctionnalité d’envoi à l’aide
ItemSend
du manifeste, append-on-send s’exécute avant la fonctionnalité d’envoi.Si votre complément implémente la fonctionnalité d’envoi et appelle
appendOnSendAsync
dans leItemSend
gestionnaire, l’appelappendOnSendAsync
retourne 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 les appeler à nouveau avec ledata
paramètre défini surnull
.Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
appendOnSendAsync
méthode ne prend pas en charge css inline. Utilisez plutôt des css internes ou externes.La
appendOnSendAsync
méthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsync
méthode . Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize
: ledata
paramètre comporte plus de 5 000 caractères.InvalidFormatError
: leoptions.coercionType
paramètre est défini surOffice.CoercionType.Html
, mais le corps du message est en texte brut.
getAsync(coercionType, options, callback)
Renvoie le corps actif dans un format spécifié.
Cette méthode retourne l’intégralité du corps actuel dans le format spécifié par coercionType
.
getAsync(coercionType: Office.CoercionType | string, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;
Paramètres
- coercionType
-
Office.CoercionType | string
Format du corps renvoyé.
- options
- Office.AsyncContextOptions
Littéral d’objet qui contient une ou plusieurs des propriétés suivantes : les asyncContext
développeurs peuvent fournir n’importe quel objet auquel ils souhaitent accéder dans la fonction de rappel.
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
Optional. 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. Le corps est fourni dans le format demandé dans la asyncResult.value
propriété .
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.3 ]
Niveau d’autorisation minimal : élément de lecture
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.getAsync
méthode ne sera pas nécessairement exactement la même valeur que celle précédemment passée dans laBody.setAsync
méthode. Le client peut modifier la valeur passée àsetAsync
pour qu’elle s’affiche efficacement avec son moteur de rendu.Dans Outlook sur le web et outlook sur Windows, si le corps contient des éléments mis en forme, tels que des tableaux, des listes et des liens, spécifiez
Office.CoercionType.Html
dans l’appelgetAsync
. Sinon, vous pouvez recevoir une valeur inattendue, telle qu’une chaîne vide.
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"
}
getAsync(coercionType, callback)
Renvoie le corps actif dans un format spécifié.
Cette méthode retourne 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
Optional. 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. Le corps est fourni dans le format demandé dans la asyncResult.value
propriété .
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.3 ]
Niveau d’autorisation minimal : élément de lecture
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.getAsync
méthode ne sera pas nécessairement exactement la même valeur que celle précédemment passée dans laBody.setAsync
méthode. Le client peut modifier la valeur passée àsetAsync
pour qu’elle s’affiche efficacement avec son moteur de rendu.Dans Outlook sur le web et outlook sur Windows, si le corps contient des éléments mis en forme, tels que des tableaux, des listes et des liens, spécifiez
Office.CoercionType.Html
dans l’appelgetAsync
. Sinon, vous pouvez recevoir une valeur inattendue, telle qu’une chaîne vide.
Exemples
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/add-inline-base64-image.yaml
const mailItem = Office.context.mailbox.item;
const base64String =
"iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAMAAADVRocKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAnUExURQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN0S+bUAAAAMdFJOUwAQIDBAUI+fr7/P7yEupu8AAAAJcEhZcwAADsMAAA7DAcdvqGQAAAF8SURBVGhD7dfLdoMwDEVR6Cspzf9/b20QYOthS5Zn0Z2kVdY6O2WULrFYLBaLxd5ur4mDZD14b8ogWS/dtxV+dmx9ysA2QUj9TQRWv5D7HyKwuIW9n0vc8tkpHP0W4BOg3wQ8wtlvA+PC1e8Ao8Ld7wFjQtHvAiNC2e8DdqHqKwCrUPc1gE1AfRVgEXBfB+gF0lcCWoH2tYBOYPpqQCNwfT3QF9i+AegJfN8CtAWhbwJagtS3AbIg9o2AJMh9M5C+SVGBvx6zAfmT0r+Bv8JMwP4kyFPir+cswF5KL3WLv14zAFBCLf56Tw9cparFX4upgaJUtPhrOS1QlY5W+vWTXrGgBFB/b72ev3/0igUdQPppP/nfowfKUUEFcP207y/yxKmgAYQ+PywoAFOfCH3A2MdCFzD3kdADBvq10AGG+pXQBgb7pdAEhvuF0AIc/VtoAK7+JciAs38KIuDugyAC/v4hiMCE/i7IwLRBsh68N2WQjMVisVgs9i5bln8LGScNcCrONQAAAABJRU5ErkJggg==";
// Get the current body of the message or appointment.
mailItem.body.getAsync(Office.CoercionType.Html, (bodyResult) => {
if (bodyResult.status === Office.AsyncResultStatus.Succeeded) {
// Insert the Base64-encoded image to the beginning of the body.
const options = { isInline: true, asyncContext: bodyResult.value };
mailItem.addFileAttachmentFromBase64Async(base64String, "sample.png", options, (attachResult) => {
if (attachResult.status === Office.AsyncResultStatus.Succeeded) {
let body = attachResult.asyncContext;
body = body.replace("<p class=MsoNormal>", `<p class=MsoNormal><img src="cid:sample.png">`);
mailItem.body.setAsync(body, { coercionType: Office.CoercionType.Html }, (setResult) => {
if (setResult.status === Office.AsyncResultStatus.Succeeded) {
console.log("Inline Base64-encoded image added to the body.");
} else {
console.log(setResult.error.message);
}
});
} else {
console.log(attachResult.error.message);
}
});
} else {
console.log(bodyResult.error.message);
}
});
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
Littéral d’objet qui contient une ou plusieurs des propriétés suivantes : les asyncContext
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
Optional. 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
. Le type de contenu est retourné comme l’une des CoercionType
valeurs de la asyncResult.value
propriété .
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.1 ]
Niveau d’autorisation minimal : élément de lecture
Mode Outlook applicable : Compose
Important : Dans Outlook sur Android et iOS, cette méthode n’est pas prise en charge en mode Compose 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
Optional. 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
. Le type de contenu est retourné comme l’une des CoercionType
valeurs de la asyncResult.value
propriété .
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.1 ]
Niveau d’autorisation minimal : élément de lecture
Mode Outlook applicable : Compose
Important : Dans Outlook sur Android et iOS, cette méthode n’est pas prise en charge en mode Compose 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.
Littéral d’objet qui contient une ou plusieurs des propriétés suivantes : les asyncContext
développeurs peuvent fournir n’importe quel objet auquel ils souhaitent accéder dans la fonction de rappel.
coercionType
: format souhaité pour le corps. La chaîne du paramètre data
est convertie dans ce format.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Optional. 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
. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error
.
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.1 ]
Niveau d’autorisation minimal : élément en lecture/écriture
Mode Outlook applicable : Compose
Recommandé : appelez getTypeAsync
, puis passez la valeur retournée au options.coercionType
paramètre .
Important:
Une fois le contenu ajouté, la position du curseur dépend du client en cours d’exécution du complément. 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ît entre le contenu ajouté et le contenu préexistant 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’appelprependAsync
et 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 passée à
prependAsync
pour qu’elle s’affiche efficacement avec son moteur de rendu. Cela signifie que la valeur retournée par un appel ultérieur à laBody.getAsync
méthode (introduite dans mailbox 1.3) ne contiendra pas nécessairement la valeur exacte qui a été passée dans l’appel précédentprependAsync
.Lorsque vous incluez des liens dans le balisage HTML, vous pouvez désactiver l’aperçu des liens en ligne en définissant l’attribut
id
sur l’ancre (<a>) sur « LPNoLP » (voir la section Exemples pour obtenir un exemple).Dans Outlook sur Android et sur iOS, cette méthode n’est pas prise en charge en mode message Compose. 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
prependAsync
méthode ne prend pas en charge css inline. Utilisez plutôt des css internes ou externes.La
prependAsync
méthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsync
méthode . Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
-
DataExceedsMaximumSize
: le paramètre de données dépasse 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 = $("#text-field").val().toString();
// 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
Optional. 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
. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error
.
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.1 ]
Niveau d’autorisation minimal : élément en lecture/écriture
Mode Outlook applicable : Compose
Recommandé : appelez getTypeAsync
, puis passez la valeur retournée au options.coercionType
paramètre .
Important:
Une fois le contenu ajouté, la position du curseur dépend du client en cours d’exécution du complément. 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ît entre le contenu ajouté et le contenu préexistant 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’appelprependAsync
et 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 passée à
prependAsync
pour qu’elle s’affiche efficacement avec son moteur de rendu. Cela signifie que la valeur retournée par un appel ultérieur à laBody.getAsync
méthode (introduite dans mailbox 1.3) ne contiendra pas nécessairement la valeur exacte qui a été passée dans l’appel précédentprependAsync
.Lorsque vous incluez des liens dans le balisage HTML, vous pouvez désactiver l’aperçu des liens en ligne en définissant l’attribut
id
sur l’ancre (<a>) sur « LPNoLP » (voir la section Exemples pour obtenir un exemple).Dans Outlook sur Android et sur iOS, cette méthode n’est pas prise en charge en mode message Compose. 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
prependAsync
méthode ne prend pas en charge css inline. Utilisez plutôt des css internes ou externes.La
prependAsync
méthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsync
méthode . Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
-
DataExceedsMaximumSize
: le paramètre de données dépasse 1 000 000 caractères.
prependOnSendAsync(data, options, callback)
Ajoute le code HTML ou le texte brut au début du corps d’un message ou d’un rendez-vous lors de l’envoi de l’élément de courrier.
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 de l’aide, voir Présentation des autorisations de complément Outlook.
prependOnSendAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Paramètres
- data
-
string
Chaîne à ajouter au début du message ou du corps 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
: format souhaité pour le corps. La chaîne dans le data
paramètre est convertie dans ce format.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Optional. 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
. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error
.
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.13 ]
Niveau d’autorisation minimal : élément en lecture/écriture
Mode Outlook applicable : Compose
Recommandé : appelez getTypeAsync
, puis passez sa valeur retournée au options.coercionType
paramètre .
Important : Lors de l’implémentation prependOnSendAsync
de , gardez les points suivants à l’esprit.
Dans un complément Alertes intelligentes, la fonctionnalité prepend-on-send s’exécute en premier.
Une nouvelle ligne est ajoutée après le contenu ajouté.
Si plusieurs compléments actifs appellent
prependOnSendAsync
, l’ordre du contenu inséré dépend de l’ordre dans lequel le complément s’exécute. Le contenu de la dernière exécution du complément apparaît au-dessus du contenu précédemment ajouté.Si le complément tente d’insérer du code HTML dans un corps de texte brut, le contenu n’est pas ajouté. À l’inverse, le texte brut est inséré dans un corps HTML.
Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
prependOnSendAsync
méthode ne prend pas en charge css inline. Utilisez plutôt des css internes ou externes.La
prependOnSendAsync
méthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsync
méthode . Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize
: ledata
paramètre dépasse 5 000 caractères.InvalidFormatError
: leoptions.coercionType
paramè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 = $("#text-field").val().toString();
// 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)
Ajoute le code HTML ou le texte brut au début du corps d’un message ou d’un rendez-vous lors de l’envoi de l’élément de courrier.
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 de l’aide, voir Présentation des autorisations de complément Outlook.
prependOnSendAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Paramètres
- data
-
string
Chaîne à ajouter au début du message ou du corps du rendez-vous. La chaîne est limitée à 5 000 caractères.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Optional. 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
. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error
.
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.13 ]
Niveau d’autorisation minimal : élément en lecture/écriture
Mode Outlook applicable : Compose
Recommandé : appelez getTypeAsync
, puis passez sa valeur retournée au options.coercionType
paramètre .
Important : Lors de l’implémentation prependOnSendAsync
de , gardez les points suivants à l’esprit.
Dans un complément Alertes intelligentes, la fonctionnalité prepend-on-send s’exécute en premier.
Une nouvelle ligne est ajoutée après le contenu ajouté.
Si plusieurs compléments actifs appellent
prependOnSendAsync
, l’ordre du contenu inséré dépend de l’ordre dans lequel le complément s’exécute. Le contenu de la dernière exécution du complément apparaît au-dessus du contenu précédemment ajouté.Si le complément tente d’insérer du code HTML dans un corps de texte brut, le contenu n’est pas ajouté. À l’inverse, le texte brut est inséré dans un corps HTML.
Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
prependOnSendAsync
méthode ne prend pas en charge css inline. Utilisez plutôt des css internes ou externes.La
prependOnSendAsync
méthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsync
méthode . Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize
: ledata
paramètre dépasse 5 000 caractères.InvalidFormatError
: leoptions.coercionType
paramè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, 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.
Littéral d’objet qui contient une ou plusieurs des propriétés suivantes : les asyncContext
développeurs peuvent fournir n’importe quel objet auquel ils souhaitent accéder dans la fonction de rappel.
coercionType
: format souhaité pour le corps. La chaîne du paramètre data
est convertie dans ce format.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Optional. 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. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error
.
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.3 ]
Niveau d’autorisation minimal : élément en lecture/écriture
Mode Outlook applicable : Compose
Recommandé : appelez getTypeAsync
, puis passez la valeur retourné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 exécuté par le complément. 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 outlook sur Windows, le curseur apparaît à 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
prependAsync
et 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.getAsync
méthode ne sera pas nécessairement exactement la même valeur que celle précédemment passée dans laBody.setAsync
méthode. Le client peut modifier la valeur passée àsetAsync
pour qu’elle s’affiche efficacement avec son moteur de rendu.Lorsque vous incluez des liens dans le balisage HTML, vous pouvez désactiver l’aperçu des liens en ligne en définissant l’attribut
id
sur l’ancre (<a>) sur « LPNoLP » (voir la section Exemples pour obtenir un exemple).Dans Outlook sur Windows (classique) et sur Mac, l’utilisateur du complément ne peut pas annuler cette action avec la commande Annuler .
Dans Outlook sur Android et sur iOS, cette méthode n’est pas prise en charge en mode message Compose. 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
setAsync
méthode ne prend pas en charge css inline. Utilisez plutôt des css internes ou externes.La
setAsync
méthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsync
méthode . Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize
: le paramètre de données dépasse 1 000 000 caractères.InvalidFormatError
: leoptions.coercionType
paramètre est défini surOffice.CoercionType.Html
et le corps du message est en texte brut.
Exemples
// When including links in HTML markup, you can disable online link preview
// by setting the id attribute on the anchor (<a>) to "LPNoLP".
Office.context.mailbox.item.body.setAsync(
'<a id="LPNoLP" href="http://www.contoso.com">Click here!</a>',
{
coercionType: Office.CoercionType.Html,
asyncContext: "This is passed to the callback"
},
(result) => {
// Process the result.
}
);
// The following is an example of the result parameter passed to the callback function.
{
"value": null,
"status": "succeeded",
"asyncContext": "This is passed to the callback"
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/add-inline-base64-image.yaml
const mailItem = Office.context.mailbox.item;
const base64String =
"iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAMAAADVRocKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAnUExURQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN0S+bUAAAAMdFJOUwAQIDBAUI+fr7/P7yEupu8AAAAJcEhZcwAADsMAAA7DAcdvqGQAAAF8SURBVGhD7dfLdoMwDEVR6Cspzf9/b20QYOthS5Zn0Z2kVdY6O2WULrFYLBaLxd5ur4mDZD14b8ogWS/dtxV+dmx9ysA2QUj9TQRWv5D7HyKwuIW9n0vc8tkpHP0W4BOg3wQ8wtlvA+PC1e8Ao8Ld7wFjQtHvAiNC2e8DdqHqKwCrUPc1gE1AfRVgEXBfB+gF0lcCWoH2tYBOYPpqQCNwfT3QF9i+AegJfN8CtAWhbwJagtS3AbIg9o2AJMh9M5C+SVGBvx6zAfmT0r+Bv8JMwP4kyFPir+cswF5KL3WLv14zAFBCLf56Tw9cparFX4upgaJUtPhrOS1QlY5W+vWTXrGgBFB/b72ev3/0igUdQPppP/nfowfKUUEFcP207y/yxKmgAYQ+PywoAFOfCH3A2MdCFzD3kdADBvq10AGG+pXQBgb7pdAEhvuF0AIc/VtoAK7+JciAs38KIuDugyAC/v4hiMCE/i7IwLRBsh68N2WQjMVisVgs9i5bln8LGScNcCrONQAAAABJRU5ErkJggg==";
// Get the current body of the message or appointment.
mailItem.body.getAsync(Office.CoercionType.Html, (bodyResult) => {
if (bodyResult.status === Office.AsyncResultStatus.Succeeded) {
// Insert the Base64-encoded image to the beginning of the body.
const options = { isInline: true, asyncContext: bodyResult.value };
mailItem.addFileAttachmentFromBase64Async(base64String, "sample.png", options, (attachResult) => {
if (attachResult.status === Office.AsyncResultStatus.Succeeded) {
let body = attachResult.asyncContext;
body = body.replace("<p class=MsoNormal>", `<p class=MsoNormal><img src="cid:sample.png">`);
mailItem.body.setAsync(body, { coercionType: Office.CoercionType.Html }, (setResult) => {
if (setResult.status === Office.AsyncResultStatus.Succeeded) {
console.log("Inline Base64-encoded image added to the body.");
} else {
console.log(setResult.error.message);
}
});
} else {
console.log(attachResult.error.message);
}
});
} else {
console.log(bodyResult.error.message);
}
});
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
Optional. 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. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error
.
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.3 ]
Niveau d’autorisation minimal : élément en lecture/écriture
Mode Outlook applicable : Compose
Recommandé : appelez getTypeAsync
, puis passez la valeur retourné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 exécuté par le complément. 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 outlook sur Windows, le curseur apparaît à 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
prependAsync
et 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.getAsync
méthode ne sera pas nécessairement exactement la même valeur que celle précédemment passée dans laBody.setAsync
méthode. Le client peut modifier la valeur passée àsetAsync
pour qu’elle s’affiche efficacement avec son moteur de rendu.Lorsque vous incluez des liens dans le balisage HTML, vous pouvez désactiver l’aperçu des liens en ligne en définissant l’attribut
id
sur l’ancre (<a>) sur « LPNoLP » (voir la section Exemples pour obtenir un exemple).Dans Outlook sur Windows (classique) et sur Mac, l’utilisateur du complément ne peut pas annuler cette action avec la commande Annuler .
Dans Outlook sur Android et sur iOS, cette méthode n’est pas prise en charge en mode message Compose. 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
setAsync
méthode ne prend pas en charge css inline. Utilisez plutôt des css internes ou externes.La
setAsync
méthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsync
méthode . Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize
: le paramètre de données dépasse 1 000 000 caractères.InvalidFormatError
: leoptions.coercionType
paramètre est défini surOffice.CoercionType.Html
et 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.
Littéral d’objet qui contient une ou plusieurs des propriétés suivantes : les asyncContext
développeurs peuvent fournir n’importe quel objet auquel ils souhaitent accéder dans la fonction de rappel.
coercionType
: format souhaité pour le corps. La chaîne du paramètre data
est convertie dans ce format.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Optional. 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
. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error
.
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.1 ]
Niveau d’autorisation minimal : élément en lecture/écriture
Mode Outlook applicable : Compose
Recommandé : Appelez getTypeAsync
, puis transmettez la valeur retournée au options.coercionType
paramètre .
Important:
Lorsque vous incluez des liens dans le balisage HTML, vous pouvez désactiver l’aperçu des liens en ligne en définissant l’attribut
id
sur l’ancre (<a>) sur « LPNoLP » (voir la section Exemples pour obtenir un exemple).Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
setSelectedDataAsync
méthode ne prend pas en charge css inline. Utilisez plutôt des css internes ou externes.La
setSelectedDataAsync
méthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsync
méthode . Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize
: ledata
paramètre comporte plus de 1 000 000 caractères.InvalidFormatError
: leoptions.coercionType
paramètre est défini surOffice.CoercionType.Html
et 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 = $("#text-field").val().toString();
// 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
Optional. 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
. Les erreurs rencontrées seront indiquées dans la propriété asyncResult.error
.
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.1 ]
Niveau d’autorisation minimal : élément en lecture/écriture
Mode Outlook applicable : Compose
Recommandé : Appelez getTypeAsync
, puis transmettez la valeur retournée au options.coercionType
paramètre .
Important:
Lorsque vous incluez des liens dans le balisage HTML, vous pouvez désactiver l’aperçu des liens en ligne en définissant l’attribut
id
sur l’ancre (<a>) sur « LPNoLP » (voir la section Exemples pour obtenir un exemple).Les fichiers SVG ne sont pas pris en charge. Utilisez plutôt des fichiers JPG ou PNG.
La
setSelectedDataAsync
méthode ne prend pas en charge css inline. Utilisez plutôt des css internes ou externes.La
setSelectedDataAsync
méthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsync
méthode . Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize
: ledata
paramètre comporte plus de 1 000 000 caractères.InvalidFormatError
: leoptions.coercionType
paramètre est défini surOffice.CoercionType.Html
et 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 y a 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 qui représente la signature à définir dans le corps du message. Cette chaîne est limitée à 30 000 caractères.
Littéral d’objet qui contient une ou plusieurs des propriétés suivantes : les asyncContext
développeurs peuvent fournir n’importe quel objet auquel ils souhaitent accéder dans la fonction de rappel.
coercionType
: format sur lequel la signature doit être définie. Si la valeur est Text, la méthode définit la signature en texte brut, en supprimant les balises HTML présentes. Si html, la méthode définit la signature sur HTML.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Optional. 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
.
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.10 ]
Niveau d’autorisation minimal : élément en lecture/écriture
Mode Outlook applicable : Compose
Important:
Dans Outlook sur le web et la nouvelle version d’Outlook sur Windows,
setSignatureAsync
fonctionne 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 obtenir un exemple de scénario, consultez 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
setSignatureAsync
diffè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 la réponse ou le transfert), la signature est définie, mais ne modifie pas le formulaire. Cela signifie que si l’utilisateur ferme le formulaire sans apporter 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
setSignatureAsync
méthode ne prend pas en charge css inline. Utilisez plutôt des css internes ou externes.La
setSignatureAsync
méthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsync
méthode . Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize
: ledata
paramètre comporte plus de 30 000 caractères.InvalidFormatError
: leoptions.coercionType
paramètre est défini surOffice.CoercionType.Html
et 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 = $("#signature").val() + "<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 = $("#signature").val();
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 y a 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 qui représente la signature à définir dans le corps du message. Cette chaîne est limitée à 30 000 caractères.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Optional. 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
.
Retours
void
Remarques
[ Ensemble d’API : Boîte aux lettres 1.10 ]
Niveau d’autorisation minimal : élément en lecture/écriture
Mode Outlook applicable : Compose
Important:
Dans Outlook sur le web et la nouvelle version d’Outlook sur Windows,
setSignatureAsync
fonctionne 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 obtenir un exemple de scénario, consultez 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
setSignatureAsync
diffè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 la réponse ou le transfert), la signature est définie, mais ne modifie pas le formulaire. Cela signifie que si l’utilisateur ferme le formulaire sans apporter 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
setSignatureAsync
méthode ne prend pas en charge css inline. Utilisez plutôt des css internes ou externes.La
setSignatureAsync
méthode n’est pas prise en charge sur un message actuellement chargé à l’aide de laloadItemByIdAsync
méthode . Pour plus d’informations, voir Activer votre complément Outlook sur plusieurs messages.
Erreurs :
DataExceedsMaximumSize
: ledata
paramètre comporte plus de 30 000 caractères.InvalidFormatError
: leoptions.coercionType
paramètre est défini surOffice.CoercionType.Html
et le corps du message est en texte brut.