Office.Body interface
El objeto body proporciona métodos para agregar y actualizar el contenido del mensaje o la cita. Se devuelve en la propiedad body del elemento seleccionado.
Comentarios
[ Conjunto de API: Buzón 1.1 ]
Problema conocido con los colores de borde de tabla HTML
Outlook en Windows: si va a establecer varios bordes de celda en diferentes colores de una tabla HTML en modo Compose, es posible que los bordes de una celda no reflejen el color esperado. Para conocer el comportamiento conocido, visite OfficeDev/office-js issue #1818.
Nivel mínimo de permiso: elemento de lectura
Modo de Outlook aplicable: Compose o lectura
Ejemplos
// 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étodos
append |
Anexa al enviar el contenido especificado al final del cuerpo del elemento, después de cualquier firma. Para usar |
append |
Anexa al enviar el contenido especificado al final del cuerpo del elemento, después de cualquier firma. Para usar |
get |
Devuelve el cuerpo actual en un formato especificado. Este método devuelve todo el cuerpo actual en el formato especificado por |
get |
Devuelve el cuerpo actual en un formato especificado. Este método devuelve todo el cuerpo actual en el formato especificado por |
get |
Obtiene un valor que indica si el contenido tiene formato de texto o HTML. |
get |
Obtiene un valor que indica si el contenido tiene formato de texto o HTML. |
prepend |
Agrega el contenido especificado al principio del cuerpo del elemento. |
prepend |
Agrega el contenido especificado al principio del cuerpo del elemento. |
prepend |
Antepone html o texto sin formato al principio de un cuerpo de mensaje o cita cuando se envía el elemento de correo. Para usar |
prepend |
Antepone html o texto sin formato al principio de un cuerpo de mensaje o cita cuando se envía el elemento de correo. Para usar |
set |
Reemplaza todo el cuerpo con el texto especificado. |
set |
Reemplaza todo el cuerpo con el texto especificado. |
set |
Reemplaza la selección que se ha realizado en el cuerpo por el texto especificado. El método |
set |
Reemplaza la selección que se ha realizado en el cuerpo por el texto especificado. El método |
set |
Agrega una firma al cuerpo del elemento si no tiene una firma existente. Si ya hay una firma en el cuerpo, reemplaza esa firma. |
set |
Agrega una firma al cuerpo del elemento si no tiene una firma existente. Si ya hay una firma en el cuerpo, reemplaza esa firma. |
Detalles del método
appendOnSendAsync(data, options, callback)
Anexa al enviar el contenido especificado al final del cuerpo del elemento, después de cualquier firma.
Para usar appendOnSendAsync
, debe especificar un permiso complementario en el manifiesto. Los detalles varían según el tipo de manifiesto. Consulte Descripción de los permisos de complemento de Outlook. Para obtener más información sobre append-on-send y su configuración, vea Implementar append-on-send en el complemento de Outlook.
appendOnSendAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Parámetros
- data
-
string
Cadena que se va a agregar al final del cuerpo. La cadena está limitada a 5000 caracteres.
Literal de objeto que contiene una o varias de las siguientes propiedades:- asyncContext
: los desarrolladores pueden proporcionar cualquier objeto al que quieran acceder en la función de devolución de llamada.
coercionType
: el formato deseado para los datos que se van a anexar. La cadena del parámetro data
se convertirá a este formato.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult
. Cualquier error que se detecte se proporcionará en la propiedad asyncResult.error
.
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.9 ]
Nivel mínimo de permiso: elemento de lectura y escritura
Modo de Outlook aplicable: Compose
Recomendado: llame a getTypeAsync
y, a continuación, pase su valor devuelto al options.coercionType
parámetro .
Importante:
Si el usuario ejecuta complementos que implementan la característica de envío mediante
ItemSend
en el manifiesto, append-on-send se ejecuta antes de la funcionalidad de envío.Si el complemento implementa la característica de envío y llama
appendOnSendAsync
alItemSend
controlador, laappendOnSendAsync
llamada devuelve un error, ya que no se admite este escenario.Para borrar datos de una llamada anterior
appendOnSendAsync
, puede llamarlos de nuevo con eldata
parámetro establecido ennull
.No se admiten archivos SVG. En su lugar, use archivos JPG o PNG.
El
appendOnSendAsync
método no admite CSS insertado. En su lugar, use CSS interno o externo.
Errores:
DataExceedsMaximumSize
: eldata
parámetro tiene más de 5000 caracteres.InvalidFormatError
: eloptions.coercionType
parámetro está establecido enOffice.CoercionType.Html
, pero el cuerpo del mensaje está en texto sin formato.
Ejemplos
// 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)
Anexa al enviar el contenido especificado al final del cuerpo del elemento, después de cualquier firma.
Para usar appendOnSendAsync
, debe especificar un permiso complementario en el manifiesto. Los detalles varían según el tipo de manifiesto. Consulte Descripción de los permisos de complemento de Outlook. Para obtener más información sobre append-on-send y su configuración, vea Implementar append-on-send en el complemento de Outlook.
appendOnSendAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Parámetros
- data
-
string
Cadena que se va a agregar al final del cuerpo. La cadena está limitada a 5000 caracteres.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult
. Cualquier error que se detecte se proporcionará en la propiedad asyncResult.error
.
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.9 ]
Nivel mínimo de permiso: elemento de lectura y escritura
Modo de Outlook aplicable: Compose
Recomendado: llame a getTypeAsync
y, a continuación, pase su valor devuelto al options.coercionType
parámetro .
Importante:
Si el usuario ejecuta complementos que implementan la característica de envío mediante
ItemSend
en el manifiesto, append-on-send se ejecuta antes de la funcionalidad de envío.Si el complemento implementa la característica de envío y llama
appendOnSendAsync
alItemSend
controlador, laappendOnSendAsync
llamada devuelve un error, ya que no se admite este escenario.Para borrar datos de una llamada anterior
appendOnSendAsync
, puede llamarlos de nuevo con eldata
parámetro establecido ennull
.No se admiten archivos SVG. En su lugar, use archivos JPG o PNG.
El
appendOnSendAsync
método no admite CSS insertado. En su lugar, use CSS interno o externo.
Errores:
DataExceedsMaximumSize
: eldata
parámetro tiene más de 5000 caracteres.InvalidFormatError
: eloptions.coercionType
parámetro está establecido enOffice.CoercionType.Html
, pero el cuerpo del mensaje está en texto sin formato.
getAsync(coercionType, options, callback)
Devuelve el cuerpo actual en un formato especificado.
Este método devuelve todo el cuerpo actual en el formato especificado por coercionType
.
getAsync(coercionType: Office.CoercionType | string, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;
Parámetros
- coercionType
-
Office.CoercionType | string
El formato del cuerpo devuelto.
- options
- Office.AsyncContextOptions
Literal de objeto que contiene una o varias de las siguientes propiedades:- asyncContext
: los desarrolladores pueden proporcionar cualquier objeto al que quieran acceder en la función de devolución de llamada.
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult. El cuerpo se proporciona en el formato solicitado en la asyncResult.value
propiedad .
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.3 ]
Nivel mínimo de permiso: elemento de lectura
Modo de Outlook aplicable: Compose o lectura
Importante:
Al trabajar con cuerpos con formato HTML, es importante tener en cuenta que el valor devuelto por el
Body.getAsync
método no será necesariamente el mismo valor que se pasó anteriormente en elBody.setAsync
método . El cliente puede modificar el valor pasado asetAsync
para que se represente de forma eficaz con su motor de representación.En Outlook en la Web y nueva Outlook en Windows, si el cuerpo contiene elementos con formato, como tablas, listas y vínculos, especifique
Office.CoercionType.Html
en lagetAsync
llamada. De lo contrario, puede recibir un valor inesperado, como una cadena vacía.
Ejemplos
// 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)
Devuelve el cuerpo actual en un formato especificado.
Este método devuelve todo el cuerpo actual en el formato especificado por coercionType
.
getAsync(coercionType: Office.CoercionType | string, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;
Parámetros
- coercionType
-
Office.CoercionType | string
El formato del cuerpo devuelto.
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult. El cuerpo se proporciona en el formato solicitado en la asyncResult.value
propiedad .
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.3 ]
Nivel mínimo de permiso: elemento de lectura
Modo de Outlook aplicable: Compose o lectura
Importante:
Al trabajar con cuerpos con formato HTML, es importante tener en cuenta que el valor devuelto por el
Body.getAsync
método no será necesariamente el mismo valor que se pasó anteriormente en elBody.setAsync
método . El cliente puede modificar el valor pasado asetAsync
para que se represente de forma eficaz con su motor de representación.En Outlook en la Web y nueva Outlook en Windows, si el cuerpo contiene elementos con formato, como tablas, listas y vínculos, especifique
Office.CoercionType.Html
en lagetAsync
llamada. De lo contrario, puede recibir un valor inesperado, como una cadena vacía.
Ejemplos
// 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)
Obtiene un valor que indica si el contenido tiene formato de texto o HTML.
getTypeAsync(options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<Office.CoercionType>) => void): void;
Parámetros
- options
- Office.AsyncContextOptions
Literal de objeto que contiene una o varias de las siguientes propiedades:- asyncContext
: los desarrolladores pueden proporcionar cualquier objeto al que quieran acceder en la función de devolución de llamada.
- callback
-
(asyncResult: Office.AsyncResult<Office.CoercionType>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult
. El tipo de contenido se devuelve como uno de los CoercionType
valores de la asyncResult.value
propiedad .
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.1 ]
Nivel mínimo de permiso: elemento de lectura
Modo de Outlook aplicable: Compose
Importante: En Outlook en Android y en iOS, este método no se admite en el modo message Compose. Solo se admite el modo Organizador de citas. Para obtener más información sobre las API admitidas en Outlook mobile, vea API de JavaScript de Outlook compatibles con Outlook en dispositivos móviles.
Ejemplos
// 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)
Obtiene un valor que indica si el contenido tiene formato de texto o HTML.
getTypeAsync(callback?: (asyncResult: Office.AsyncResult<Office.CoercionType>) => void): void;
Parámetros
- callback
-
(asyncResult: Office.AsyncResult<Office.CoercionType>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult
. El tipo de contenido se devuelve como uno de los CoercionType
valores de la asyncResult.value
propiedad .
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.1 ]
Nivel mínimo de permiso: elemento de lectura
Modo de Outlook aplicable: Compose
Importante: En Outlook en Android y en iOS, este método no se admite en el modo message Compose. Solo se admite el modo Organizador de citas. Para obtener más información sobre las API admitidas en Outlook mobile, vea API de JavaScript de Outlook compatibles con Outlook en dispositivos móviles.
prependAsync(data, options, callback)
Agrega el contenido especificado al principio del cuerpo del elemento.
prependAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Parámetros
- data
-
string
Cadena que se debe insertar al principio del cuerpo. La cadena está limitada a 1 000 000 caracteres.
Literal de objeto que contiene una o varias de las siguientes propiedades:- asyncContext
: los desarrolladores pueden proporcionar cualquier objeto al que quieran acceder en la función de devolución de llamada.
coercionType
: el formato deseado para el cuerpo. La cadena del parámetro data
se convertirá a este formato.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult
. Cualquier error que se detecte se proporcionará en la propiedad asyncResult.error
.
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.1 ]
Nivel mínimo de permiso: elemento de lectura y escritura
Modo de Outlook aplicable: Compose
Recomendado: llame a getTypeAsync
y pase el valor devuelto al options.coercionType
parámetro .
Importante:
Una vez antepuesto el contenido, la posición del cursor depende del cliente en el que se ejecute el complemento. En Outlook en la Web y en Windows (nuevo y clásico), la posición del cursor sigue siendo la misma en el contenido preexistente del cuerpo. Por ejemplo, si el cursor se colocaba al principio del cuerpo antes de la
prependAsync
llamada, aparecerá entre el contenido antepuesto y el contenido preexistente del cuerpo después de la llamada. En Outlook en Mac, la posición del cursor no se conserva. El cursor desaparece después de laprependAsync
llamada y solo vuelve a aparecer cuando el usuario selecciona algo en el cuerpo del elemento de correo.Al trabajar con sólidos con formato HTML, es importante tener en cuenta que el cliente puede modificar el valor pasado a
prependAsync
para que se represente de forma eficaz con su motor de representación. Esto significa que el valor devuelto por una llamada posterior al método (introducido en elBody.getAsync
buzón 1.3) no contendrá necesariamente el valor exacto que se pasó en la llamada anteriorprependAsync
.Al incluir vínculos en el marcado HTML, puede deshabilitar la vista previa de vínculos en línea estableciendo el
id
atributo en el delimitador (<a>) en "LPNoLP" (consulte la sección Ejemplos para obtener un ejemplo).En Outlook en Android y en iOS, este método no se admite en el modo message Compose. Solo se admite el modo Organizador de citas. Para obtener más información sobre las API admitidas en Outlook mobile, vea API de JavaScript de Outlook compatibles con Outlook en dispositivos móviles.
No se admiten archivos SVG. En su lugar, use archivos JPG o PNG.
El
prependAsync
método no admite CSS insertado. En su lugar, use CSS interno o externo.
Errores:
-
DataExceedsMaximumSize
: el parámetro de datos tiene más de 1000 000 caracteres.
Ejemplos
// 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)
Agrega el contenido especificado al principio del cuerpo del elemento.
prependAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Parámetros
- data
-
string
Cadena que se debe insertar al principio del cuerpo. La cadena está limitada a 1 000 000 caracteres.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult
. Cualquier error que se detecte se proporcionará en la propiedad asyncResult.error
.
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.1 ]
Nivel mínimo de permiso: elemento de lectura y escritura
Modo de Outlook aplicable: Compose
Recomendado: llame a getTypeAsync
y pase el valor devuelto al options.coercionType
parámetro .
Importante:
Una vez antepuesto el contenido, la posición del cursor depende del cliente en el que se ejecute el complemento. En Outlook en la Web y en Windows (nuevo y clásico), la posición del cursor sigue siendo la misma en el contenido preexistente del cuerpo. Por ejemplo, si el cursor se colocaba al principio del cuerpo antes de la
prependAsync
llamada, aparecerá entre el contenido antepuesto y el contenido preexistente del cuerpo después de la llamada. En Outlook en Mac, la posición del cursor no se conserva. El cursor desaparece después de laprependAsync
llamada y solo vuelve a aparecer cuando el usuario selecciona algo en el cuerpo del elemento de correo.Al trabajar con sólidos con formato HTML, es importante tener en cuenta que el cliente puede modificar el valor pasado a
prependAsync
para que se represente de forma eficaz con su motor de representación. Esto significa que el valor devuelto por una llamada posterior al método (introducido en elBody.getAsync
buzón 1.3) no contendrá necesariamente el valor exacto que se pasó en la llamada anteriorprependAsync
.Al incluir vínculos en el marcado HTML, puede deshabilitar la vista previa de vínculos en línea estableciendo el
id
atributo en el delimitador (<a>) en "LPNoLP" (consulte la sección Ejemplos para obtener un ejemplo).En Outlook en Android y en iOS, este método no se admite en el modo message Compose. Solo se admite el modo Organizador de citas. Para obtener más información sobre las API admitidas en Outlook mobile, vea API de JavaScript de Outlook compatibles con Outlook en dispositivos móviles.
No se admiten archivos SVG. En su lugar, use archivos JPG o PNG.
El
prependAsync
método no admite CSS insertado. En su lugar, use CSS interno o externo.
Errores:
-
DataExceedsMaximumSize
: el parámetro de datos tiene más de 1000 000 caracteres.
prependOnSendAsync(data, options, callback)
Antepone html o texto sin formato al principio de un cuerpo de mensaje o cita cuando se envía el elemento de correo.
Para usar prependOnSendAsync
, debe especificar un permiso complementario en el manifiesto. Los detalles varían según el tipo de manifiesto. Para obtener instrucciones, vea Descripción de los permisos de complemento de Outlook.
prependOnSendAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Parámetros
- data
-
string
Cadena que se va a anteponer al principio del cuerpo del mensaje o de la cita. La cadena está limitada a 5000 caracteres.
Literal de objeto que contiene una o varias de las siguientes propiedades:- asyncContext
: cualquier objeto al que se pueda tener acceso en la función de devolución de llamada.
coercionType
: el formato deseado para el cuerpo. La cadena del data
parámetro se convierte a este formato.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult
. Cualquier error que se detecte se proporcionará en la propiedad asyncResult.error
.
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.13 ]
Nivel mínimo de permiso: elemento de lectura y escritura
Modo de Outlook aplicable: Compose
Recomendado: llame a getTypeAsync
y, a continuación, pase su valor devuelto al options.coercionType
parámetro .
Importante: Al implementar prependOnSendAsync
, tenga en cuenta lo siguiente.
En un complemento alertas inteligentes, la característica anteponer al envío se ejecuta primero.
Se agrega una nueva línea después del contenido antepuesto.
Si varios complementos activos llaman a
prependOnSendAsync
, el orden del contenido insertado depende del orden en que se ejecute el complemento. El contenido del complemento de última ejecución aparece encima del contenido anteriormente antepuesto.Si el complemento intenta insertar HTML en un cuerpo de texto sin formato, el contenido no se antepone. Por el contrario, el texto sin formato se insertará en un cuerpo HTML.
No se admiten archivos SVG. En su lugar, use archivos JPG o PNG.
El
prependOnSendAsync
método no admite CSS insertado. En su lugar, use CSS interno o externo.
Errores:
DataExceedsMaximumSize
: eldata
parámetro supera los 5000 caracteres.InvalidFormatError
: eloptions.coercionType
parámetro se establece enOffice.CoercionType.Html
, pero el cuerpo del elemento está en formato de texto sin formato.
Ejemplos
// 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)
Antepone html o texto sin formato al principio de un cuerpo de mensaje o cita cuando se envía el elemento de correo.
Para usar prependOnSendAsync
, debe especificar un permiso complementario en el manifiesto. Los detalles varían según el tipo de manifiesto. Para obtener instrucciones, vea Descripción de los permisos de complemento de Outlook.
prependOnSendAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Parámetros
- data
-
string
Cadena que se va a anteponer al principio del cuerpo del mensaje o de la cita. La cadena está limitada a 5000 caracteres.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult
. Cualquier error que se detecte se proporcionará en la propiedad asyncResult.error
.
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.13 ]
Nivel mínimo de permiso: elemento de lectura y escritura
Modo de Outlook aplicable: Compose
Recomendado: llame a getTypeAsync
y, a continuación, pase su valor devuelto al options.coercionType
parámetro .
Importante: Al implementar prependOnSendAsync
, tenga en cuenta lo siguiente.
En un complemento alertas inteligentes, la característica anteponer al envío se ejecuta primero.
Se agrega una nueva línea después del contenido antepuesto.
Si varios complementos activos llaman a
prependOnSendAsync
, el orden del contenido insertado depende del orden en que se ejecute el complemento. El contenido del complemento de última ejecución aparece encima del contenido anteriormente antepuesto.Si el complemento intenta insertar HTML en un cuerpo de texto sin formato, el contenido no se antepone. Por el contrario, el texto sin formato se insertará en un cuerpo HTML.
No se admiten archivos SVG. En su lugar, use archivos JPG o PNG.
El
prependOnSendAsync
método no admite CSS insertado. En su lugar, use CSS interno o externo.
Errores:
DataExceedsMaximumSize
: eldata
parámetro supera los 5000 caracteres.InvalidFormatError
: eloptions.coercionType
parámetro se establece enOffice.CoercionType.Html
, pero el cuerpo del elemento está en formato de texto sin formato.
setAsync(data, options, callback)
Reemplaza todo el cuerpo con el texto especificado.
setAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Parámetros
- data
-
string
La cadena que reemplazará el cuerpo existente. La cadena está limitada a 1 000 000 de caracteres.
Literal de objeto que contiene una o varias de las siguientes propiedades:- asyncContext
: los desarrolladores pueden proporcionar cualquier objeto al que quieran acceder en la función de devolución de llamada.
coercionType
: el formato deseado para el cuerpo. La cadena del parámetro data
se convertirá a este formato.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult. Cualquier error que se detecte se proporcionará en la propiedad asyncResult.error
.
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.3 ]
Nivel mínimo de permiso: elemento de lectura y escritura
Modo de Outlook aplicable: Compose
Recomendado: llame a getTypeAsync
y pase el valor devuelto al options.coercionType
parámetro .
Importante:
Después de reemplazar el cuerpo por el contenido especificado, la posición del cursor depende del cliente en el que se ejecute el complemento. En Outlook clásico en Windows, el cursor aparece al principio del cuerpo del elemento de correo. En Outlook en la Web y nueva Outlook en Windows, el cursor aparece al final del cuerpo del elemento de correo. En Outlook en Mac, la posición del cursor no se conserva. El cursor desaparece después de la
prependAsync
llamada y solo vuelve a aparecer cuando el usuario selecciona algo en el cuerpo del elemento de correo.Al trabajar con cuerpos con formato HTML, es importante tener en cuenta que el valor devuelto por el
Body.getAsync
método no será necesariamente el mismo valor que se pasó anteriormente en elBody.setAsync
método . El cliente puede modificar el valor pasado asetAsync
para que se represente de forma eficaz con su motor de representación.Al incluir vínculos en el marcado HTML, puede deshabilitar la vista previa de vínculos en línea estableciendo el
id
atributo en el delimitador (<a>) en "LPNoLP" (consulte la sección Ejemplos para obtener un ejemplo).En Outlook en Windows (clásico) y en Mac, el usuario del complemento no puede revertir esta acción con el comando Deshacer .
En Outlook en Android y en iOS, este método no se admite en el modo message Compose. Solo se admite el modo Organizador de citas. Para obtener más información sobre las API admitidas en Outlook mobile, vea API de JavaScript de Outlook compatibles con Outlook en dispositivos móviles.
No se admiten archivos SVG. En su lugar, use archivos JPG o PNG.
El
setAsync
método no admite CSS insertado. En su lugar, use CSS interno o externo.
Errores:
DataExceedsMaximumSize
: el parámetro de datos tiene más de 1000 000 caracteres.InvalidFormatError
: eloptions.coercionType
parámetro se estableceOffice.CoercionType.Html
en y el cuerpo del mensaje está en texto sin formato.
Ejemplos
// 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)
Reemplaza todo el cuerpo con el texto especificado.
setAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Parámetros
- data
-
string
La cadena que reemplazará el cuerpo existente. La cadena está limitada a 1 000 000 de caracteres.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult. Cualquier error que se detecte se proporcionará en la propiedad asyncResult.error
.
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.3 ]
Nivel mínimo de permiso: elemento de lectura y escritura
Modo de Outlook aplicable: Compose
Recomendado: llame a getTypeAsync
y pase el valor devuelto al options.coercionType
parámetro .
Importante:
Después de reemplazar el cuerpo por el contenido especificado, la posición del cursor depende del cliente en el que se ejecute el complemento. En Outlook clásico en Windows, el cursor aparece al principio del cuerpo del elemento de correo. En Outlook en la Web y nueva Outlook en Windows, el cursor aparece al final del cuerpo del elemento de correo. En Outlook en Mac, la posición del cursor no se conserva. El cursor desaparece después de la
prependAsync
llamada y solo vuelve a aparecer cuando el usuario selecciona algo en el cuerpo del elemento de correo.Al trabajar con cuerpos con formato HTML, es importante tener en cuenta que el valor devuelto por el
Body.getAsync
método no será necesariamente el mismo valor que se pasó anteriormente en elBody.setAsync
método . El cliente puede modificar el valor pasado asetAsync
para que se represente de forma eficaz con su motor de representación.Al incluir vínculos en el marcado HTML, puede deshabilitar la vista previa de vínculos en línea estableciendo el
id
atributo en el delimitador (<a>) en "LPNoLP" (consulte la sección Ejemplos para obtener un ejemplo).En Outlook en Windows (clásico) y en Mac, el usuario del complemento no puede revertir esta acción con el comando Deshacer .
En Outlook en Android y en iOS, este método no se admite en el modo message Compose. Solo se admite el modo Organizador de citas. Para obtener más información sobre las API admitidas en Outlook mobile, vea API de JavaScript de Outlook compatibles con Outlook en dispositivos móviles.
No se admiten archivos SVG. En su lugar, use archivos JPG o PNG.
El
setAsync
método no admite CSS insertado. En su lugar, use CSS interno o externo.
Errores:
DataExceedsMaximumSize
: el parámetro de datos tiene más de 1000 000 caracteres.InvalidFormatError
: eloptions.coercionType
parámetro se estableceOffice.CoercionType.Html
en y el cuerpo del mensaje está en texto sin formato.
setSelectedDataAsync(data, options, callback)
Reemplaza la selección que se ha realizado en el cuerpo por el texto especificado.
El método setSelectedDataAsync
inserta la cadena especificada en la ubicación del cursor en el cuerpo del elemento o, si el texto se selecciona en el editor, reemplaza el texto seleccionado. Si nuca se ha colocado el cursor en el cuerpo del elemento, o si dicho cuerpo perdió enfoque en la interfaz de usuario, la cadena se insertará en la parte superior del contenido del cuerpo. Después de la inserción, el cursor se coloca al final del contenido insertado.
setSelectedDataAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Parámetros
- data
-
string
La cadena que reemplazará el cuerpo existente. La cadena está limitada a 1 000 000 de caracteres.
Literal de objeto que contiene una o varias de las siguientes propiedades:- asyncContext
: los desarrolladores pueden proporcionar cualquier objeto al que quieran acceder en la función de devolución de llamada.
coercionType
: el formato deseado para el cuerpo. La cadena del parámetro data
se convertirá a este formato.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult
. Cualquier error que se detecte se proporcionará en la propiedad asyncResult.error
.
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.1 ]
Nivel mínimo de permiso: elemento de lectura y escritura
Modo de Outlook aplicable: Compose
Recomendado: llame a getTypeAsync
y pase el valor devuelto al options.coercionType
parámetro .
* Importante:
Al incluir vínculos en el marcado HTML, puede deshabilitar la vista previa de vínculos en línea estableciendo el
id
atributo en el delimitador (<a>) en "LPNoLP" (consulte la sección Ejemplos para obtener un ejemplo).No se admiten archivos SVG. En su lugar, use archivos JPG o PNG.
El
setSelectedDataAsync
método no admite CSS insertado. En su lugar, use CSS interno o externo.
Errores:
DataExceedsMaximumSize
: eldata
parámetro tiene más de 1000 000 caracteres.InvalidFormatError
: eloptions.coercionType
parámetro se estableceOffice.CoercionType.Html
en y el cuerpo del mensaje está en texto sin formato.
Ejemplos
// 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)
Reemplaza la selección que se ha realizado en el cuerpo por el texto especificado.
El método setSelectedDataAsync
inserta la cadena especificada en la ubicación del cursor en el cuerpo del elemento o, si el texto se selecciona en el editor, reemplaza el texto seleccionado. Si nuca se ha colocado el cursor en el cuerpo del elemento, o si dicho cuerpo perdió enfoque en la interfaz de usuario, la cadena se insertará en la parte superior del contenido del cuerpo. Después de la inserción, el cursor se coloca al final del contenido insertado.
setSelectedDataAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Parámetros
- data
-
string
La cadena que reemplazará el cuerpo existente. La cadena está limitada a 1 000 000 de caracteres.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult
. Cualquier error que se detecte se proporcionará en la propiedad asyncResult.error
.
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.1 ]
Nivel mínimo de permiso: elemento de lectura y escritura
Modo de Outlook aplicable: Compose
Recomendado: llame a getTypeAsync
y pase el valor devuelto al options.coercionType
parámetro .
* Importante:
Al incluir vínculos en el marcado HTML, puede deshabilitar la vista previa de vínculos en línea estableciendo el
id
atributo en el delimitador (<a>) en "LPNoLP" (consulte la sección Ejemplos para obtener un ejemplo).No se admiten archivos SVG. En su lugar, use archivos JPG o PNG.
El
setSelectedDataAsync
método no admite CSS insertado. En su lugar, use CSS interno o externo.
Errores:
DataExceedsMaximumSize
: eldata
parámetro tiene más de 1000 000 caracteres.InvalidFormatError
: eloptions.coercionType
parámetro se estableceOffice.CoercionType.Html
en y el cuerpo del mensaje está en texto sin formato.
setSignatureAsync(data, options, callback)
Agrega una firma al cuerpo del elemento si no tiene una firma existente. Si ya hay una firma en el cuerpo, reemplaza esa firma.
setSignatureAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Parámetros
- data
-
string
Cadena que representa la firma que se va a establecer en el cuerpo del correo. Esta cadena está limitada a 30 000 caracteres.
Literal de objeto que contiene una o varias de las siguientes propiedades:- asyncContext
: los desarrolladores pueden proporcionar cualquier objeto al que quieran acceder en la función de devolución de llamada.
coercionType
: el formato en el que se debe establecer la firma. Si es Text, el método establece la firma en texto sin formato, quitando las etiquetas HTML presentes. Si es Html, el método establece la firma en HTML.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult
.
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.10 ]
Nivel mínimo de permiso: elemento de lectura y escritura
Modo de Outlook aplicable: Compose
Importante:
En Outlook en la Web y nueva Outlook en Windows,
setSignatureAsync
solo funciona en mensajes.Este método se admite en Message Compose en Outlook en Android y en iOS a partir de la versión 4.2352.0. Para ver un escenario de ejemplo, vea Implementar la activación basada en eventos en complementos móviles de Outlook. Para obtener más información sobre las API admitidas en Outlook mobile, consulte API de JavaScript de Outlook compatibles con Outlook en dispositivos móviles.
El comportamiento de
setSignatureAsync
difiere si lo llama en el controlador de eventos de un complemento que implementa la característica de activación basada en eventos mediante LaunchEvent en el manifiesto. Cuando el usuario crea un nuevo elemento (incluida la respuesta o el reenvío), la firma se establece pero no modifica el formulario. Esto significa que si el usuario cierra el formulario sin realizar otras modificaciones, no se le pedirá que guarde los cambios.Los archivos SVG no se admiten en las firmas de correo. En su lugar, use archivos JPG o PNG.
El
setSignatureAsync
método no admite CSS insertado. En su lugar, use CSS interno o externo.
Errores:
DataExceedsMaximumSize
: eldata
parámetro tiene más de 30 000 caracteres.InvalidFormatError
: eloptions.coercionType
parámetro se estableceOffice.CoercionType.Html
en y el cuerpo del mensaje está en texto sin formato.
Ejemplos
// 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)
Agrega una firma al cuerpo del elemento si no tiene una firma existente. Si ya hay una firma en el cuerpo, reemplaza esa firma.
setSignatureAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
Parámetros
- data
-
string
Cadena que representa la firma que se va a establecer en el cuerpo del correo. Esta cadena está limitada a 30 000 caracteres.
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
Opcional. Cuando se completa el método, se llama a la función pasada en el callback
parámetro con un único parámetro de tipo Office.AsyncResult
.
Devoluciones
void
Comentarios
[ Conjunto de API: Buzón 1.10 ]
Nivel mínimo de permiso: elemento de lectura y escritura
Modo de Outlook aplicable: Compose
Importante:
En Outlook en la Web y nueva Outlook en Windows,
setSignatureAsync
solo funciona en mensajes.Este método se admite en Message Compose en Outlook en Android y en iOS a partir de la versión 4.2352.0. Para ver un escenario de ejemplo, vea Implementar la activación basada en eventos en complementos móviles de Outlook. Para obtener más información sobre las API admitidas en Outlook mobile, consulte API de JavaScript de Outlook compatibles con Outlook en dispositivos móviles.
El comportamiento de
setSignatureAsync
difiere si lo llama en el controlador de eventos de un complemento que implementa la característica de activación basada en eventos mediante LaunchEvent en el manifiesto. Cuando el usuario crea un nuevo elemento (incluida la respuesta o el reenvío), la firma se establece pero no modifica el formulario. Esto significa que si el usuario cierra el formulario sin realizar otras modificaciones, no se le pedirá que guarde los cambios.Los archivos SVG no se admiten en las firmas de correo. En su lugar, use archivos JPG o PNG.
El
setSignatureAsync
método no admite CSS insertado. En su lugar, use CSS interno o externo.
Errores:
DataExceedsMaximumSize
: eldata
parámetro tiene más de 30 000 caracteres.InvalidFormatError
: eloptions.coercionType
parámetro se estableceOffice.CoercionType.Html
en y el cuerpo del mensaje está en texto sin formato.