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

Para obtener información sobre cómo obtener o establecer el cuerpo de un elemento de correo, vea Obtener o establecer el cuerpo de un mensaje o cita en Outlook.

Problema conocido con los colores de borde de tabla HTML

Outlook en Windows: Si está configurando bordes de varias celdas en diferentes colores en una tabla HTML en modo Compose, es posible que los bordes de una celda no reflejen el color esperado. Para obtener información sobre el comportamiento conocido, visite el problema #1818 de OfficeDev/office-js.

Nivel mínimo de permisos: Leer elemento

Modo de Outlook aplicable: Componer o leer

Usada por

Ejemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/add-inline-base64-image.yaml

// Get the current body of the message or appointment.
Office.context.mailbox.item.body.getAsync(Office.CoercionType.Html, (bodyResult) => {
  if (bodyResult.status === Office.AsyncResultStatus.Failed) {
    console.log(`Failed to get body: ${bodyResult.error.message}`);
    return;
  }

  // Add the Base64-encoded image to the end of the body.
  const options = { isInline: true, asyncContext: bodyResult.value };
  Office.context.mailbox.item.addFileAttachmentFromBase64Async(base64String, "sample.png", options, (attachResult) => {
    if (attachResult.status === Office.AsyncResultStatus.Failed) {
      console.log(`Failed to attach file: ${attachResult.error.message}`);
      return;
    }

    let body = attachResult.asyncContext;
    body += '<img src="cid:sample.png" />';

    Office.context.mailbox.item.body.setAsync(body, { coercionType: Office.CoercionType.Html }, (setResult) => {
      if (setResult.status === Office.AsyncResultStatus.Failed) {
        console.log(`Failed to set body: ${setResult.error.message}`);
        return;
      }
      
      console.log("Inline Base64-encoded image added to the end of the body.");
    });
  });
});

Métodos

appendOnSendAsync(data, options, callback)

Anexa 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 del complemento de Outlook. Para obtener más información sobre anexar al enviar y su configuración, consulte Implementar anexar al enviar en el complemento de Outlook.

appendOnSendAsync(data, callback)

Anexa 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 del complemento de Outlook. Para obtener más información sobre anexar al enviar y su configuración, consulte Implementar anexar al enviar en el complemento de Outlook.

getAsync(coercionType, options, callback)

Devuelve todo el cuerpo actual en el formato especificado por coercionType.

getAsync(coercionType, callback)

Devuelve todo el cuerpo actual en el formato especificado por coercionType.

getTypeAsync(options, callback)

Obtiene un valor que indica si el contenido tiene formato de texto o HTML.

getTypeAsync(callback)

Obtiene un valor que indica si el contenido tiene formato de texto o HTML.

prependAsync(data, options, callback)

Agrega el contenido especificado al principio del cuerpo del elemento.

prependAsync(data, callback)

Agrega el contenido especificado al principio del cuerpo del elemento.

prependOnSendAsync(data, options, callback)

Antepone HTML o texto sin formato al principio del cuerpo de un 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, consulte Descripción de los permisos del complemento de Outlook.

prependOnSendAsync(data, callback)

Antepone HTML o texto sin formato al principio del cuerpo de un 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, consulte Descripción de los permisos del complemento de Outlook.

setAsync(data, options, callback)

Reemplaza todo el cuerpo con el texto especificado.

setAsync(data, callback)

Reemplaza todo el cuerpo con el texto especificado.

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, 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.

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, 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.

Detalles del método

appendOnSendAsync(data, options, callback)

Anexa 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 del complemento de Outlook. Para obtener más información sobre anexar al enviar y su configuración, consulte Implementar anexar al enviar en el complemento de Outlook.

appendOnSendAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Parámetros

data

string

Cuerda que se va a agregar al final del cuerpo. La cadena está limitada a 5000 caracteres.

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

Un literal de objeto que contiene una o más de las siguientes propiedades:- asyncContext: Los desarrolladores pueden proporcionar cualquier objeto al que deseen 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, la función pasada en el callback parámetro se llama con un solo 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 permisos: elemento de lectura/escritura

Modo de Outlook aplicable: Compose

Recomendado: Llamar getTypeAsyncy, a continuación, pasar su options.coercionType valor devuelto al parámetro.

Importante:

  • Si el usuario está ejecutando complementos que implementan la característica de envío mediante ItemSend el manifiesto, la función de anexar al enviar se ejecuta antes que la funcionalidad al enviar.

  • Si el complemento implementa la característica de envío y llama appendOnSendAsync al ItemSend controlador, la appendOnSendAsync llamada devuelve un error, ya que este escenario no se admite.

  • Para borrar los datos de una llamada anterior appendOnSendAsync , puede volver a llamarla con el data parámetro establecido en null.

  • Los archivos SVG no son compatibles. Usa archivos JPG o PNG en su lugar.

  • El appendOnSendAsync método no admite CSS insertado. En su lugar, use CSS interno o externo.

  • El appendOnSendAsync método no es compatible con un mensaje cargado actualmente con él loadItemByIdAsync . Para obtener más información, vea Activar el complemento de Outlook en varios mensajes.

Errores:

  • DataExceedsMaximumSize : el data parámetro tiene una longitud superior a 5000 caracteres.

  • InvalidFormatError : el options.coercionType parámetro está establecido en Office.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 = (document.getElementById("text-field") as HTMLInputElement).value;

// It's recommended to call getTypeAsync and pass its returned value to the options.coercionType parameter of the appendOnSendAsync call.
Office.context.mailbox.item.body.getTypeAsync((asyncResult) => {
  if (asyncResult.status === Office.AsyncResultStatus.Failed) {
    console.log("Action failed with error: " + asyncResult.error.message);
    return;
  }

  const bodyFormat = asyncResult.value;
  Office.context.mailbox.item.body.appendOnSendAsync(text, { coercionType: bodyFormat }, (asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Failed) {
      console.log("Action failed with error: " + asyncResult.error.message);
      return;
    }

    console.log(`"${text}" will be appended to the body once the message or appointment is sent. Send the mail item to test this feature.`);
  });
});

appendOnSendAsync(data, callback)

Anexa 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 del complemento de Outlook. Para obtener más información sobre anexar al enviar y su configuración, consulte Implementar anexar al enviar en el complemento de Outlook.

appendOnSendAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Parámetros

data

string

Cuerda 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, la función pasada en el callback parámetro se llama con un solo 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 permisos: elemento de lectura/escritura

Modo de Outlook aplicable: Compose

Recomendado: Llamar getTypeAsyncy, a continuación, pasar su options.coercionType valor devuelto al parámetro.

Importante:

  • Si el usuario está ejecutando complementos que implementan la característica de envío mediante ItemSend el manifiesto, la función de anexar al enviar se ejecuta antes que la funcionalidad al enviar.

  • Si el complemento implementa la característica de envío y llama appendOnSendAsync al ItemSend controlador, la appendOnSendAsync llamada devuelve un error, ya que este escenario no se admite.

  • Para borrar los datos de una llamada anterior appendOnSendAsync , puede volver a llamarla con el data parámetro establecido en null.

  • Los archivos SVG no son compatibles. Usa archivos JPG o PNG en su lugar.

  • El appendOnSendAsync método no admite CSS insertado. En su lugar, use CSS interno o externo.

  • El appendOnSendAsync método no es compatible con un mensaje cargado actualmente con él loadItemByIdAsync . Para obtener más información, vea Activar el complemento de Outlook en varios mensajes.

Errores:

  • DataExceedsMaximumSize : el data parámetro tiene una longitud superior a 5000 caracteres.

  • InvalidFormatError : el options.coercionType parámetro está establecido en Office.CoercionType.Html pero el cuerpo del mensaje está en texto sin formato.

getAsync(coercionType, options, callback)

Devuelve todo el cuerpo actual en el formato especificado por coercionType.

getAsync(coercionType: Office.CoercionType | string, options: Office.AsyncContextOptions & { bodyMode?: MailboxEnums.BodyMode }, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;

Parámetros

coercionType

Office.CoercionType | string

El formato del cuerpo devuelto.

options

Office.AsyncContextOptions & { bodyMode?: Office.MailboxEnums.BodyMode }

Un objeto literal que contiene una o más de las siguientes propiedades. asyncContext : cualquier dato al que quieras acceder en la función de devolución de llamada. bodyMode : En Outlook en la Web, en dispositivos móviles y en el nuevo Outlook en Windows, especifica si se devuelve solo el cuerpo del mensaje actual o todo el cuerpo de una conversación de mensaje. Si no se especifica un valor, bodyMode el Office.MailboxEnums.BodyMode.FullBodyvalor predeterminado es , que devuelve todo el cuerpo de una conversación de mensaje. La bodyMode propiedad solo se aplica a las respuestas de la superficie de Compose mensajes. Se omite en Outlook en Windows (clásico) y en Mac.

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 permisos: Leer elemento

Modo de Outlook aplicable: Componer o leer

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 exactamente el mismo valor que se pasó previamente en el Body.setAsync método. El cliente puede modificar el valor pasado para setAsync que se represente de forma eficaz con su motor de representación.

  • En Outlook en la Web y en el nuevo Outlook en Windows, es posible que la especificación Office.CoercionType.Text en la getAsync llamada no siempre proporcione un formato confiable. En su lugar, especifique Office.CoercionType.Html especialmente si el cuerpo contiene elementos con formato, como tablas, listas y vínculos.

  • En Outlook en la Web y en el nuevo Outlook en Windows, los usuarios pueden organizar sus mensajes como conversaciones o mensajes individuales en Configuración>Diseño de>correo>Organización de mensajes (consulte Cambiar cómo se muestra la lista de mensajes en Outlook). Esta configuración afecta a la cantidad del cuerpo de un mensaje que se muestra al usuario (es decir, toda la conversación de un mensaje o solo el mensaje actual). En el modo de compostura de mensajes, especialmente para las respuestas a una conversación con más de un mensaje, si desea que el cuerpo devuelto refleje la configuración del usuario, especifique el parámetro en getAsync la bodyMode: Office.MailboxEnums.BodyMode.HostConfig llamada. Si los mensajes se agrupan por conversación, solo se devuelve el cuerpo de la respuesta actual. Por el contrario, si los mensajes se muestran individualmente, se devuelve todo el hilo de conversación.

  • En Outlook para dispositivos móviles, la propiedad está disponible a partir de la bodyMode versión 4.2538.0.

  • En Outlook para dispositivos móviles, especificar bodyMode: Office.MailboxEnums.BodyMode.HostConfig devuelve el cuerpo de la respuesta actual.

  • En Outlook para dispositivos móviles, en el modo de respuesta rápida (el campo de respuesta en la parte inferior del mensaje), solo se devuelve el cuerpo de la respuesta actual. Esto se aplica incluso si bodyMode: Office.MailboxEnums.BodyMode.FullBody se especifica en la getAsync llamada.

  • La bodyMode opción no es compatible con un mensaje que se carga mediante el loadItemByIdAsync método. Para obtener más información, vea Activar el complemento de Outlook en varios mensajes.

getAsync(coercionType, callback)

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 permisos: Leer elemento

Modo de Outlook aplicable: Componer o leer

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 exactamente el mismo valor que se pasó previamente en el Body.setAsync método. El cliente puede modificar el valor pasado para setAsync que se represente de forma eficaz con su motor de representación.

  • En Outlook en la Web y en el nuevo Outlook en Windows, es posible que la especificación Office.CoercionType.Text en la getAsync llamada no siempre proporcione un formato confiable. En su lugar, especifique Office.CoercionType.Html especialmente si el cuerpo contiene elementos con formato, como tablas, listas y vínculos.

  • En Outlook en la Web y en el nuevo Outlook en Windows, los usuarios pueden organizar sus mensajes como conversaciones o mensajes individuales en Configuración>Diseño de>correo>Organización de mensajes (consulte Cambiar cómo se muestra la lista de mensajes en Outlook). Esta configuración afecta a la cantidad del cuerpo de un mensaje que se muestra al usuario (es decir, toda la conversación de un mensaje o solo el mensaje actual). En el modo de compostura de mensajes, especialmente para las respuestas a una conversación con más de un mensaje, si desea que el cuerpo devuelto refleje la configuración del usuario, especifique el parámetro en getAsync la bodyMode: Office.MailboxEnums.BodyMode.HostConfig llamada. Si los mensajes se agrupan por conversación, solo se devuelve el cuerpo de la respuesta actual. Por el contrario, si los mensajes se muestran individualmente, se devuelve todo el hilo de conversación.

  • En Outlook para dispositivos móviles, la propiedad está disponible a partir de la bodyMode versión 4.2538.0.

  • En Outlook para dispositivos móviles, especificar bodyMode: Office.MailboxEnums.BodyMode.HostConfig devuelve el cuerpo de la respuesta actual.

  • En Outlook para dispositivos móviles, en el modo de respuesta rápida (el campo de respuesta en la parte inferior del mensaje), solo se devuelve el cuerpo de la respuesta actual. Esto se aplica incluso si bodyMode: Office.MailboxEnums.BodyMode.FullBody se especifica en la getAsync llamada.

Ejemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/add-inline-base64-image.yaml

// Get the current body of the message or appointment.
Office.context.mailbox.item.body.getAsync(Office.CoercionType.Html, (bodyResult) => {
  if (bodyResult.status === Office.AsyncResultStatus.Failed) {
    console.log(`Failed to get body: ${bodyResult.error.message}`);
    return;
  }

  // Add the Base64-encoded image to the end of the body.
  const options = { isInline: true, asyncContext: bodyResult.value };
  Office.context.mailbox.item.addFileAttachmentFromBase64Async(base64String, "sample.png", options, (attachResult) => {
    if (attachResult.status === Office.AsyncResultStatus.Failed) {
      console.log(`Failed to attach file: ${attachResult.error.message}`);
      return;
    }

    let body = attachResult.asyncContext;
    body += '<img src="cid:sample.png" />';

    Office.context.mailbox.item.body.setAsync(body, { coercionType: Office.CoercionType.Html }, (setResult) => {
      if (setResult.status === Office.AsyncResultStatus.Failed) {
        console.log(`Failed to set body: ${setResult.error.message}`);
        return;
      }
      
      console.log("Inline Base64-encoded image added to the end of the body.");
    });
  });
});

getTypeAsync(options, callback)

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

Un literal de objeto que contiene una o más de las siguientes propiedades:- asyncContext: Los desarrolladores pueden proporcionar cualquier objeto al que deseen acceder en la función de devolución de llamada.

callback

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

Opcional. Cuando se completa el método, la función pasada en el callback parámetro se llama con un solo 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 permisos: Leer elemento

Modo de Outlook aplicable: Compose

Importante: En Outlook para Android y para iOS, este método no se admite en el modo Compose mensajes. Solo se admite el modo Organizador de citas. 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.

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, la función pasada en el callback parámetro se llama con un solo 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 permisos: Leer elemento

Modo de Outlook aplicable: Compose

Importante: En Outlook para Android y para iOS, este método no se admite en el modo Compose mensajes. Solo se admite el modo Organizador de citas. 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.

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.

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

Un literal de objeto que contiene una o más de las siguientes propiedades:- asyncContext: Los desarrolladores pueden proporcionar cualquier objeto al que deseen 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, la función pasada en el callback parámetro se llama con un solo 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 permisos: elemento de lectura/escritura

Modo de Outlook aplicable: Compose

Recomendado: Llamar getTypeAsyncy, a continuación, pasar el valor devuelto al options.coercionType parámetro.

Importante:

  • Una vez antepuesto el contenido, la posición del cursor depende del cliente que ejecute el complemento. En Outlook en la Web y en Windows (nuevo y clásico), la posición del cursor permanece igual en el contenido preexistente del cuerpo. Por ejemplo, si el cursor se colocó 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 para Mac, no se conserva la posición del cursor. 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 cliente puede modificar el valor pasado para prependAsync que se represente de manera eficiente con su motor de representación. Esto significa que el valor devuelto por una llamada posterior al método (presentado en el Body.getAsync buzón 1.3) no necesariamente contendrá el valor exacto que se pasó en la llamada anterior prependAsync .

  • 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 anclaje (<a>) en "LPNoLP". Por ejemplo, '<a id="LPNoLP" href="http://www.contoso.com">Click here!</a>'.

  • En Outlook para Android y para iOS, este método no se admite en el modo Compose mensajes. Solo se admite el modo Organizador de citas. 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.

  • Los archivos SVG no son compatibles. Usa archivos JPG o PNG en su lugar.

  • El prependAsync método no admite CSS insertado. En su lugar, use CSS interno o externo.

  • El prependAsync método no es compatible con un mensaje cargado actualmente con él loadItemByIdAsync . Para obtener más información, vea Activar el complemento de Outlook en varios mensajes.

Errores:

  • DataExceedsMaximumSize : el parámetro de datos tiene una longitud superior a 1.000.000 de 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 = (document.getElementById("text-field") as HTMLInputElement).value;

// It's recommended to call getTypeAsync and pass its returned value to the options.coercionType parameter of the prependAsync call.
Office.context.mailbox.item.body.getTypeAsync((asyncResult) => {
  if (asyncResult.status === Office.AsyncResultStatus.Failed) {
    console.log("Action failed with error: " + asyncResult.error.message);
    return;
  }

  const bodyFormat = asyncResult.value;
  Office.context.mailbox.item.body.prependAsync(text, { coercionType: bodyFormat }, (asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Failed) {
      console.log("Action failed with error: " + asyncResult.error.message);
      return;
    }

    console.log(`"${text}" prepended to the body.`);
  });
});

prependAsync(data, callback)

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, la función pasada en el callback parámetro se llama con un solo 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 permisos: elemento de lectura/escritura

Modo de Outlook aplicable: Compose

Recomendado: Llamar getTypeAsyncy, a continuación, pasar el valor devuelto al options.coercionType parámetro.

Importante:

  • Una vez antepuesto el contenido, la posición del cursor depende del cliente que ejecute el complemento. En Outlook en la Web y en Windows (nuevo y clásico), la posición del cursor permanece igual en el contenido preexistente del cuerpo. Por ejemplo, si el cursor se colocó 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 para Mac, no se conserva la posición del cursor. 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 cliente puede modificar el valor pasado para prependAsync que se represente de manera eficiente con su motor de representación. Esto significa que el valor devuelto por una llamada posterior al método (presentado en el Body.getAsync buzón 1.3) no necesariamente contendrá el valor exacto que se pasó en la llamada anterior prependAsync .

  • 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 anclaje (<a>) en "LPNoLP". Por ejemplo, '<a id="LPNoLP" href="http://www.contoso.com">Click here!</a>'.

  • En Outlook para Android y para iOS, este método no se admite en el modo Compose mensajes. Solo se admite el modo Organizador de citas. 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.

  • Los archivos SVG no son compatibles. Usa archivos JPG o PNG en su lugar.

  • El prependAsync método no admite CSS insertado. En su lugar, use CSS interno o externo.

  • El prependAsync método no es compatible con un mensaje cargado actualmente con él loadItemByIdAsync . Para obtener más información, vea Activar el complemento de Outlook en varios mensajes.

Errores:

  • DataExceedsMaximumSize : el parámetro de datos tiene una longitud superior a 1.000.000 de caracteres.

prependOnSendAsync(data, options, callback)

Antepone HTML o texto sin formato al principio del cuerpo de un 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, consulte Descripción de los permisos del complemento de Outlook.

prependOnSendAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Parámetros

data

string

La cadena que se antepondrá al principio del cuerpo del mensaje o de la cita. La cadena está limitada a 5000 caracteres.

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

Un literal de objeto que contiene una o más 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, la función pasada en el callback parámetro se llama con un solo 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 permisos: elemento de lectura/escritura

Modo de Outlook aplicable: Compose

Recomendado: Llamar getTypeAsyncy, a continuación, pasar su options.coercionType valor devuelto al parámetro.

Importante: Al implementar prependOnSendAsync, tenga en cuenta lo siguiente.

  • En un complemento de alertas inteligentes, la función de preparación al enviar se ejecuta primero.

  • Se agrega una nueva línea después del contenido antepuesto.

  • Si varios complementos activos llaman prependOnSendAsync, el orden del contenido insertado dependerá del orden en que se ejecute el complemento. El contenido del complemento de la última ejecución aparece encima del contenido antepuesto anteriormente.

  • Si el complemento intenta insertar HTML en un cuerpo de texto sin formato, el contenido no se antepondrá. Por el contrario, el texto sin formato se insertará en un cuerpo HTML.

  • Los archivos SVG no son compatibles. Usa archivos JPG o PNG en su lugar.

  • El prependOnSendAsync método no admite CSS insertado. En su lugar, use CSS interno o externo.

  • El prependOnSendAsync método no es compatible con un mensaje cargado actualmente con él loadItemByIdAsync . Para obtener más información, vea Activar el complemento de Outlook en varios mensajes.

Errores:

  • DataExceedsMaximumSize : el data parámetro supera los 5000 caracteres.

  • InvalidFormatError : el options.coercionType parámetro está establecido en Office.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 = (document.getElementById("text-field") as HTMLInputElement).value;

// It's recommended to call getTypeAsync and pass its returned value to the options.coercionType parameter of the prependOnSendAsync call.
Office.context.mailbox.item.body.getTypeAsync((asyncResult) => {
  if (asyncResult.status === Office.AsyncResultStatus.Failed) {
    console.log("Action failed with error: " + asyncResult.error.message);
    return;
  }

  const bodyFormat = asyncResult.value;
  Office.context.mailbox.item.body.prependOnSendAsync(text, { coercionType: bodyFormat }, (asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Failed) {
      console.log("Action failed with error: " + asyncResult.error.message);
      return;
    }

    console.log(`"${text}" will be prepended to the body once the message or appointment is sent. Send the mail item to test this feature.`);
  });
});

prependOnSendAsync(data, callback)

Antepone HTML o texto sin formato al principio del cuerpo de un 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, consulte Descripción de los permisos del complemento de Outlook.

prependOnSendAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Parámetros

data

string

La cadena que se antepondrá 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, la función pasada en el callback parámetro se llama con un solo 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 permisos: elemento de lectura/escritura

Modo de Outlook aplicable: Compose

Recomendado: Llamar getTypeAsyncy, a continuación, pasar su options.coercionType valor devuelto al parámetro.

Importante: Al implementar prependOnSendAsync, tenga en cuenta lo siguiente.

  • En un complemento de alertas inteligentes, la función de preparación al enviar se ejecuta primero.

  • Se agrega una nueva línea después del contenido antepuesto.

  • Si varios complementos activos llaman prependOnSendAsync, el orden del contenido insertado dependerá del orden en que se ejecute el complemento. El contenido del complemento de la última ejecución aparece encima del contenido antepuesto anteriormente.

  • Si el complemento intenta insertar HTML en un cuerpo de texto sin formato, el contenido no se antepondrá. Por el contrario, el texto sin formato se insertará en un cuerpo HTML.

  • Los archivos SVG no son compatibles. Usa archivos JPG o PNG en su lugar.

  • El prependOnSendAsync método no admite CSS insertado. En su lugar, use CSS interno o externo.

  • El prependOnSendAsync método no es compatible con un mensaje cargado actualmente con él loadItemByIdAsync . Para obtener más información, vea Activar el complemento de Outlook en varios mensajes.

Errores:

  • DataExceedsMaximumSize : el data parámetro supera los 5000 caracteres.

  • InvalidFormatError : el options.coercionType parámetro está establecido en Office.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 & { bodyMode?: MailboxEnums.BodyMode }, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Parámetros

data

string

Cadena que reemplaza al cuerpo existente. La cadena está limitada a 1 000 000 caracteres.

options

Office.AsyncContextOptions & Office.CoercionTypeOptions & { bodyMode?: Office.MailboxEnums.BodyMode }

Un objeto literal que contiene una o más de las siguientes propiedades. asyncContext : cualquier dato al que quieras acceder 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. bodyMode : En Outlook en la Web y en el nuevo Outlook en Windows, especifica si se establece solo el cuerpo del mensaje actual o todo el cuerpo de una conversación de mensajes. Si no se especifica un valor, bodyMode el Office.MailboxEnums.BodyMode.FullBodyvalor predeterminado es , que reemplaza todo el cuerpo, incluidos los mensajes anteriores del hilo de conversación. La bodyMode propiedad solo se aplica a las respuestas de la superficie de Compose mensajes. Se omite en Outlook en Windows (clásico), en Mac y en dispositivos móviles.

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 permisos: elemento de lectura/escritura

Modo de Outlook aplicable: Compose

Recomendado: Llamar getTypeAsyncy, a continuación, pasar 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 que 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 en el nuevo Outlook en Windows, el cursor aparece al final del cuerpo del elemento de correo. En Outlook para Mac, no se conserva la posición del cursor. 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 exactamente el mismo valor que se pasó previamente en el Body.setAsync método. El cliente puede modificar el valor pasado para setAsync 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 anclaje (<a>) en "LPNoLP". Por ejemplo, '<a id="LPNoLP" href="http://www.contoso.com">Click here!</a>'.

  • 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 para Android y para iOS, este método no se admite en el modo Compose mensajes. Solo se admite el modo Organizador de citas. 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.

  • Los archivos SVG no son compatibles. Usa archivos JPG o PNG en su lugar.

  • El setAsync método no admite CSS insertado. En su lugar, use CSS interno o externo.

  • El setAsync método no es compatible con un mensaje cargado actualmente con él loadItemByIdAsync . Para obtener más información, vea Activar el complemento de Outlook en varios mensajes.

  • En Outlook en la Web y en el nuevo Outlook en Windows, los usuarios pueden organizar sus mensajes como conversaciones o mensajes individuales en Configuración>Diseño de>correo>Organización de mensajes (consulte Cambiar cómo se muestra la lista de mensajes en Outlook). Esta configuración afecta a la cantidad del cuerpo de un mensaje que se muestra al usuario (es decir, toda la conversación de un mensaje o solo el mensaje actual). En el modo Compose mensajes, especialmente para las respuestas a una conversación con más de un mensaje, si desea respetar la configuración del usuario al establecer el cuerpo de un mensaje, especifique el parámetro en setAsync la bodyMode: Office.MailboxEnums.BodyMode.HostConfig llamada. Si los mensajes se agrupan por conversación, solo se establecerá el cuerpo de la respuesta actual. Por el contrario, si los mensajes se muestran individualmente, se reemplaza todo el cuerpo, incluidos los mensajes anteriores del hilo de conversación.

  • En Outlook en la Web y en el nuevo Outlook en Windows, si la bodyMode propiedad no se especifica o se establece enOffice.MailboxEnums.BodyMode.FullBody, se reemplaza todo el cuerpo de un mensaje, incluidos los mensajes anteriores del hilo de conversación. Esto se aplica incluso si los mensajes de un usuario están organizados por conversación. En este escenario, la configuración del usuario se cambia temporalmente a Mensajes individuales: No agrupar mensajes>Solo un mensaje o Mostrar correo electrónico como mensajes individuales durante la setAsync llamada. Se mostrará una notificación al usuario para avisarle de este cambio. Una vez finalizada la llamada, se restablece la configuración del usuario.

Errores:

  • DataExceedsMaximumSize : el parámetro de datos tiene una longitud superior a 1.000.000 de caracteres.

  • InvalidFormatError : el options.coercionType parámetro está establecido en Office.CoercionType.Html 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/add-inline-base64-image.yaml

// Get the current body of the message or appointment.
Office.context.mailbox.item.body.getAsync(Office.CoercionType.Html, (bodyResult) => {
  if (bodyResult.status === Office.AsyncResultStatus.Failed) {
    console.log(`Failed to get body: ${bodyResult.error.message}`);
    return;
  }

  // Add the Base64-encoded image to the end of the body.
  const options = { isInline: true, asyncContext: bodyResult.value };
  Office.context.mailbox.item.addFileAttachmentFromBase64Async(base64String, "sample.png", options, (attachResult) => {
    if (attachResult.status === Office.AsyncResultStatus.Failed) {
      console.log(`Failed to attach file: ${attachResult.error.message}`);
      return;
    }

    let body = attachResult.asyncContext;
    body += '<img src="cid:sample.png" />';

    Office.context.mailbox.item.body.setAsync(body, { coercionType: Office.CoercionType.Html }, (setResult) => {
      if (setResult.status === Office.AsyncResultStatus.Failed) {
        console.log(`Failed to set body: ${setResult.error.message}`);
        return;
      }
      
      console.log("Inline Base64-encoded image added to the end of the body.");
    });
  });
});

setAsync(data, callback)

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 permisos: elemento de lectura/escritura

Modo de Outlook aplicable: Compose

Recomendado: Llamar getTypeAsyncy, a continuación, pasar 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 que 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 en el nuevo Outlook en Windows, el cursor aparece al final del cuerpo del elemento de correo. En Outlook para Mac, no se conserva la posición del cursor. 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 exactamente el mismo valor que se pasó previamente en el Body.setAsync método. El cliente puede modificar el valor pasado para setAsync 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 anclaje (<a>) en "LPNoLP". Por ejemplo, '<a id="LPNoLP" href="http://www.contoso.com">Click here!</a>'.

  • 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 para Android y para iOS, este método no se admite en el modo Compose mensajes. Solo se admite el modo Organizador de citas. 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.

  • Los archivos SVG no son compatibles. Usa archivos JPG o PNG en su lugar.

  • El setAsync método no admite CSS insertado. En su lugar, use CSS interno o externo.

  • El setAsync método no es compatible con un mensaje cargado actualmente con él loadItemByIdAsync . Para obtener más información, vea Activar el complemento de Outlook en varios mensajes.

  • En Outlook en la Web y en el nuevo Outlook en Windows, los usuarios pueden organizar sus mensajes como conversaciones o mensajes individuales en Configuración>Diseño de>correo>Organización de mensajes (consulte Cambiar cómo se muestra la lista de mensajes en Outlook). Esta configuración afecta a la cantidad del cuerpo de un mensaje que se muestra al usuario (es decir, toda la conversación de un mensaje o solo el mensaje actual). En el modo Compose mensajes, especialmente para las respuestas en una conversación con más de un mensaje, si desea respetar la configuración del usuario al establecer el cuerpo de un mensaje, especifique el parámetro en setAsync la bodyMode: Office.MailboxEnums.BodyMode.HostConfig llamada. Si los mensajes se agrupan por conversación, solo se establecerá el cuerpo de la respuesta actual. Por el contrario, si los mensajes se muestran individualmente, se reemplaza todo el cuerpo, incluidos los mensajes anteriores del hilo de conversación.

  • En Outlook en la Web y en el nuevo Outlook en Windows, si la bodyMode propiedad no se especifica o se establece enOffice.MailboxEnums.BodyMode.FullBody, se reemplaza todo el cuerpo de un mensaje, incluidos los mensajes anteriores del hilo de conversación. Esto se aplica incluso si los mensajes de un usuario están organizados por conversación. En este escenario, la configuración del usuario se cambia temporalmente a Mensajes individuales: No agrupar mensajes>Solo un mensaje o Mostrar correo electrónico como mensajes individuales durante la setAsync llamada. Se mostrará una notificación al usuario para avisarle de este cambio. Una vez finalizada la llamada, se restablece la configuración del usuario.

Errores:

  • DataExceedsMaximumSize : el parámetro de datos tiene una longitud superior a 1.000.000 de caracteres.

  • InvalidFormatError : el options.coercionType parámetro está establecido en Office.CoercionType.Html 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.

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

Un literal de objeto que contiene una o más de las siguientes propiedades:- asyncContext: Los desarrolladores pueden proporcionar cualquier objeto al que deseen 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, la función pasada en el callback parámetro se llama con un solo 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 permisos: elemento de lectura/escritura

Modo de Outlook aplicable: Compose

Recomendado: Llamar getTypeAsync y luego pasar 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 anclaje (<a>) en "LPNoLP". Por ejemplo, '<a id="LPNoLP" href="http://www.contoso.com">Click here!</a>'.

  • Los archivos SVG no son compatibles. Usa archivos JPG o PNG en su lugar.

  • El setSelectedDataAsync método no admite CSS insertado. En su lugar, use CSS interno o externo.

  • El setSelectedDataAsync método no es compatible con un mensaje cargado actualmente con él loadItemByIdAsync . Para obtener más información, vea Activar el complemento de Outlook en varios mensajes.

Errores:

  • DataExceedsMaximumSize : el data parámetro tiene una longitud superior a 1 000 000 caracteres.

  • InvalidFormatError : el options.coercionType parámetro está establecido en Office.CoercionType.Html 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 = (document.getElementById("text-field") as HTMLInputElement).value;

// It's recommended to call getTypeAsync and pass its returned value to the options.coercionType parameter of the prependAsync call.
Office.context.mailbox.item.body.getTypeAsync((asyncResult) => {
  if (asyncResult.status === Office.AsyncResultStatus.Failed) {
    console.log("Action failed with error: " + asyncResult.error.message);
    return;
  }

  const bodyFormat = asyncResult.value;
  Office.context.mailbox.item.body.setSelectedDataAsync(text, { coercionType: bodyFormat }, (asyncResult) => {
    if (asyncResult.status === Office.AsyncResultStatus.Failed) {
      console.log("Action failed with error: " + asyncResult.error.message);
      return;
    }

    console.log(`Replaced selected text with "${text}".`);
  });
});

setSelectedDataAsync(data, callback)

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, la función pasada en el callback parámetro se llama con un solo 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 permisos: elemento de lectura/escritura

Modo de Outlook aplicable: Compose

Recomendado: Llamar getTypeAsync y luego pasar 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 anclaje (<a>) en "LPNoLP". Por ejemplo, '<a id="LPNoLP" href="http://www.contoso.com">Click here!</a>'.

  • Los archivos SVG no son compatibles. Usa archivos JPG o PNG en su lugar.

  • El setSelectedDataAsync método no admite CSS insertado. En su lugar, use CSS interno o externo.

  • El setSelectedDataAsync método no es compatible con un mensaje cargado actualmente con él loadItemByIdAsync . Para obtener más información, vea Activar el complemento de Outlook en varios mensajes.

Errores:

  • DataExceedsMaximumSize : el data parámetro tiene una longitud superior a 1 000 000 caracteres.

  • InvalidFormatError : el options.coercionType parámetro está establecido en Office.CoercionType.Html 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

La cadena que representa la firma que se va a establecer en el cuerpo del correo. Esta cadena está limitada a 30 000 caracteres.

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

Un literal de objeto que contiene una o más de las siguientes propiedades:- asyncContext: Los desarrolladores pueden proporcionar cualquier objeto al que deseen acceder en la función de devolución de llamada. coercionType : El formato con el que se debe establecer la firma. Si es Texto, 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, la función pasada en el callback parámetro se llama con un solo parámetro de tipo Office.AsyncResult.

Devoluciones

void

Comentarios

Conjunto de API: Buzón 1.10

Nivel mínimo de permisos: elemento de lectura/escritura

Modo de Outlook aplicable: Compose

Importante:

Errores:

  • DataExceedsMaximumSize : el data parámetro tiene más de 30 000 caracteres.

  • InvalidFormatError : el options.coercionType parámetro está establecido en Office.CoercionType.Html 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 = (document.getElementById("signature") as HTMLInputElement).value + "<img src='cid:myImage.png'>";
      console.log(`Setting signature to "${signature}".`);
      Office.context.mailbox.item.body.setSignatureAsync(
        signature,
        { coercionType: "html" },
        function(asyncResult) {
          console.log(`setSignatureAsync: ${asyncResult.status}`);
        }
      );
    } else {
      console.error(`addFileAttachmentFromBase64Async: ${result.error}`);
    }
  }
);

...

// Set the signature for the current item.
const signature = (document.getElementById("signature") as HTMLInputElement).value;
console.log(`Setting signature to "${signature}".`);
Office.context.mailbox.item.body.setSignatureAsync(signature, function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log("setSignatureAsync succeeded");
  } else {
    console.error(asyncResult.error);
  }
});

setSignatureAsync(data, callback)

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

La 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, la función pasada en el callback parámetro se llama con un solo parámetro de tipo Office.AsyncResult.

Devoluciones

void

Comentarios

Conjunto de API: Buzón 1.10

Nivel mínimo de permisos: elemento de lectura/escritura

Modo de Outlook aplicable: Compose

Importante:

Errores:

  • DataExceedsMaximumSize : el data parámetro tiene más de 30 000 caracteres.

  • InvalidFormatError : el options.coercionType parámetro está establecido en Office.CoercionType.Html y el cuerpo del mensaje está en texto sin formato.