Compartilhar via


Office.MessageCompose interface

O modo de composição de mensagens de Office.context.mailbox.item.

Importante:

  • Este é um objeto interno do Outlook, não exposto diretamente através de interfaces existentes. Deve tratar isto como um modo de Office.context.mailbox.item. Para obter mais informações, veja a página Modelo de Objeto .

  • Ao chamar Office.context.mailbox.item uma mensagem, tenha em atenção que o Painel de Leitura no cliente do Outlook tem de estar ativado. Para obter orientações sobre como configurar o Painel de Leitura, consulte Utilizar e configurar o Painel de Leitura para pré-visualizar mensagens.

Interfaces principais:

Extends

Propriedades

bcc

Obtém um objeto que fornece métodos para obter ou atualizar os destinatários na linha Bcc (cópia oculta de carbono) de uma mensagem.

Consoante o cliente/plataforma (ou seja, Windows, Mac, etc.), podem aplicar-se limites ao número de destinatários que pode obter ou atualizar. Veja o objeto Destinatários para obter mais detalhes.

body

Obtém um objeto que fornece métodos para manipular o corpo de um item.

cc

Fornece acesso aos destinatários na linha Cc (com cópia) de uma mensagem. O tipo de objeto e o nível de acesso dependem do modo do item atual.

A propriedade cc retorna um objeto Recipients que fornece métodos para obter ou atualizar os destinatários na linha Cc da mensagem. No entanto, dependendo do cliente/plataforma (ou seja, Windows, Mac, etc.), podem aplicar-se limites ao número de destinatários que pode obter ou atualizar. Veja o objeto Destinatários para obter mais detalhes.

conversationId

Obtém um identificador da conversa de email que contém uma mensagem específica.

Você pode obter um número inteiro para esta propriedade se o aplicativo de email estiver ativado nos formulários de leitura ou nas respostas em formulários de composição. Se, posteriormente, o usuário alterar o assunto da mensagem de resposta, ao enviar a resposta, a ID da conversa daquela mensagem será alterada e o valor obtido anteriormente não mais se aplicará.

Você obtém nulo para esta propriedade para um novo item em um formulário de composição. Se o usuário definir um assunto e salvar o item, a propriedade conversationId retornará um valor.

itemType

Obtém o tipo de item que representa uma instância.

A itemType propriedade devolve um dos valores de ItemType enumeração, indicando se a instância do objeto de item é uma mensagem ou um compromisso.

subject

Obtém ou define a descrição que aparece no campo de assunto de um item.

A propriedade subject obtém ou define o assunto completo do item, conforme enviado pelo servidor de email.

A propriedade subject retorna um objeto Subject que fornece métodos para obter e definir o assunto.

to

Fornece acesso aos destinatários na linha Para de uma mensagem. O tipo de objeto e o nível de acesso dependem do modo do item atual.

A propriedade to retorna um objeto Recipients que fornece métodos para obter ou atualizar os destinatários na linha Para da mensagem. No entanto, dependendo do cliente/plataforma (ou seja, Windows, Mac, etc.), podem aplicar-se limites ao número de destinatários que pode obter ou atualizar. Veja o objeto Destinatários para obter mais detalhes.

Métodos

addFileAttachmentAsync(uri, attachmentName, options, callback)

Adiciona um arquivo a uma mensagem ou um compromisso como um anexo.

O método addFileAttachmentAsync carrega o arquivo no URI especificado e anexa-o ao item no formulário de composição.

addFileAttachmentAsync(uri, attachmentName, callback)

Adiciona um arquivo a uma mensagem ou um compromisso como um anexo.

O método addFileAttachmentAsync carrega o arquivo no URI especificado e anexa-o ao item no formulário de composição.

addItemAttachmentAsync(itemId, attachmentName, options, callback)

Adiciona um item do Exchange, como uma mensagem, como anexo na mensagem ou no compromisso.

O método addItemAttachmentAsync anexa o item com o identificador do Exchange especificado ao item no formulário de composição. Se especificar uma função de chamada de retorno, o método é chamado com um parâmetro, asyncResult, que contém o identificador do anexo ou um código que indica qualquer erro que tenha ocorrido ao anexar o item. Pode utilizar o parâmetro de opções para transmitir informações de estado para a função de chamada de retorno, se necessário.

Posteriormente, você poderá usar o identificador com o método removeAttachmentAsync para remover o anexo na mesma sessão.

Se o seu Suplemento do Office estiver em execução no Outlook na Web ou no novo Outlook no Windows, o addItemAttachmentAsync método pode anexar itens a itens diferentes do item que está a editar. No entanto, isto não é suportado e não é recomendado.

addItemAttachmentAsync(itemId, attachmentName, callback)

Adiciona um item do Exchange, como uma mensagem, como anexo na mensagem ou no compromisso.

O método addItemAttachmentAsync anexa o item com o identificador do Exchange especificado ao item no formulário de composição. Se especificar uma função de chamada de retorno, o método é chamado com um parâmetro, asyncResult, que contém o identificador do anexo ou um código que indica qualquer erro que tenha ocorrido ao anexar o item. Pode utilizar o parâmetro de opções para transmitir informações de estado para a função de chamada de retorno, se necessário.

Posteriormente, você poderá usar o identificador com o método removeAttachmentAsync para remover o anexo na mesma sessão.

Se o seu Suplemento do Office estiver em execução no Outlook na Web ou no novo Outlook no Windows, o addItemAttachmentAsync método pode anexar itens a itens diferentes do item que está a editar. No entanto, isto não é suportado e não é recomendado.

getSelectedDataAsync(coercionType, options, callback)

Retorna de forma assíncrona os dados selecionados do assunto ou do corpo de uma mensagem.

Se não houver seleção, mas o cursor estiver no corpo ou assunto, o método devolve uma cadeia vazia para os dados selecionados. Se um campo que não seja o corpo ou o assunto estiver selecionado, o método retorna o erro InvalidSelection.

Para aceder aos dados selecionados a partir da função de chamada de retorno, chame asyncResult.value.data. Para aceder à propriedade de origem da qual a seleção provém, chame asyncResult.value.sourceProperty, que será body ou subject.

getSelectedDataAsync(coercionType, callback)

Retorna de forma assíncrona os dados selecionados do assunto ou do corpo de uma mensagem.

Se não houver seleção, mas o cursor estiver no corpo ou assunto, o método devolve uma cadeia vazia para os dados selecionados. Se um campo que não seja o corpo ou o assunto estiver selecionado, o método retorna o erro InvalidSelection.

Para aceder aos dados selecionados a partir da função de chamada de retorno, chame asyncResult.value.data. Para aceder à propriedade de origem da qual a seleção provém, chame asyncResult.value.sourceProperty, que será body ou subject.

loadCustomPropertiesAsync(callback, userContext)

Carrega de forma assíncrona as propriedades personalizadas para esse suplemento no item selecionado.

As propriedades personalizadas são armazenadas como pares chave-valor numa base por aplicação, por item. Este método devolve um objeto CustomProperties na chamada de retorno, que fornece métodos para aceder às propriedades personalizadas específicas do item atual e do suplemento atual. As propriedades personalizadas não são encriptadas no item, pelo que não deve ser utilizado como armazenamento seguro.

As propriedades personalizadas são fornecidas como um objeto CustomProperties na propriedade asyncResult.value. Este objeto pode ser utilizado para obter, definir, guardar e remover propriedades personalizadas do item de correio.

removeAttachmentAsync(attachmentId, options, callback)

Remove um anexo de uma mensagem ou de um compromisso.

O método removeAttachmentAsync remove o anexo com o identificador especificado do item. Como prática recomendada, deve-se usar o identificador do anexo para remover um anexo somente se o mesmo aplicativo de email tiver adicionado esse anexo na mesma sessão. No Outlook na Web, em dispositivos móveis e no novo Outlook no Windows, o identificador de anexo só é válido na mesma sessão. Uma sessão termina quando o utilizador fecha a aplicação ou, se o utilizador começar a compor um formulário inline, é posteriormente apresentado o formulário para continuar numa janela separada.

removeAttachmentAsync(attachmentId, callback)

Remove um anexo de uma mensagem ou de um compromisso.

O método removeAttachmentAsync remove o anexo com o identificador especificado do item. Como prática recomendada, deve-se usar o identificador do anexo para remover um anexo somente se o mesmo aplicativo de email tiver adicionado esse anexo na mesma sessão. No Outlook na Web, em dispositivos móveis e no novo Outlook no Windows, o identificador de anexo só é válido na mesma sessão. Uma sessão termina quando o utilizador fecha a aplicação ou, se o utilizador começar a compor um formulário inline, é posteriormente apresentado o formulário para continuar numa janela separada.

setSelectedDataAsync(data, options, callback)

Insere de forma assíncrona os dados no corpo ou no assunto de uma mensagem.

O setSelectedDataAsync método insere a cadeia especificada na localização do cursor no assunto ou corpo do item ou, se o texto estiver selecionado no editor, substitui o texto selecionado. Se o cursor não estiver no corpo ou no campo do assunto, é devolvido um erro. Após a inserção, o cursor é colocado no final do conteúdo inserido.

setSelectedDataAsync(data, callback)

Insere de forma assíncrona os dados no corpo ou no assunto de uma mensagem.

O setSelectedDataAsync método insere a cadeia especificada na localização do cursor no assunto ou corpo do item ou, se o texto estiver selecionado no editor, substitui o texto selecionado. Se o cursor não estiver no corpo ou no campo do assunto, é devolvido um erro. Após a inserção, o cursor é colocado no final do conteúdo inserido.

Detalhes da propriedade

bcc

Obtém um objeto que fornece métodos para obter ou atualizar os destinatários na linha Bcc (cópia oculta de carbono) de uma mensagem.

Consoante o cliente/plataforma (ou seja, Windows, Mac, etc.), podem aplicar-se limites ao número de destinatários que pode obter ou atualizar. Veja o objeto Destinatários para obter mais detalhes.

bcc: Recipients;

Valor da propriedade

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

Nível mínimo de permissão: ler item

Modo Outlook aplicável: mensagem Compose

Exemplos

Office.context.mailbox.item.bcc.setAsync( ['alice@contoso.com', 'bob@contoso.com'] );
Office.context.mailbox.item.bcc.addAsync( ['jason@contoso.com'] );
Office.context.mailbox.item.bcc.getAsync(callback);

function callback(asyncResult) {
    const arrayOfBccRecipients = asyncResult.value;
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-set-bcc-message-compose.yaml

Office.context.mailbox.item.bcc.getAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const msgBcc = asyncResult.value;
    console.log("Message being blind-copied to:");
    for (let i = 0; i < msgBcc.length; i++) {
      console.log(msgBcc[i].displayName + " (" + msgBcc[i].emailAddress + ")");
    }
  } else {
    console.error(asyncResult.error);
  }
});

...

const email = $("#emailBcc")
  .val()
  .toString();
const emailArray = [email];
Office.context.mailbox.item.bcc.setAsync(emailArray, function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log("Succeeded in setting Bcc field.");
  } else {
    console.error(asyncResult.error);
  }
});

body

Obtém um objeto que fornece métodos para manipular o corpo de um item.

body: Body;

Valor da propriedade

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

Nível mínimo de permissão: ler item

Modo Outlook aplicável: mensagem Compose

Exemplos

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

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

cc

Fornece acesso aos destinatários na linha Cc (com cópia) de uma mensagem. O tipo de objeto e o nível de acesso dependem do modo do item atual.

A propriedade cc retorna um objeto Recipients que fornece métodos para obter ou atualizar os destinatários na linha Cc da mensagem. No entanto, dependendo do cliente/plataforma (ou seja, Windows, Mac, etc.), podem aplicar-se limites ao número de destinatários que pode obter ou atualizar. Veja o objeto Destinatários para obter mais detalhes.

cc: Recipients;

Valor da propriedade

Comentários

Nível mínimo de permissão: ler item

Modo Outlook aplicável: mensagem Compose

Exemplos

Office.context.mailbox.item.cc.setAsync( ['alice@contoso.com', 'bob@contoso.com'] );
Office.context.mailbox.item.cc.addAsync( ['jason@contoso.com'] );
Office.context.mailbox.item.cc.getAsync(callback);

function callback(asyncResult) {
    const arrayOfCcRecipients = asyncResult.value;
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-set-cc-message-compose.yaml

Office.context.mailbox.item.cc.getAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const msgCc = asyncResult.value;
    console.log("Message being copied to:");
    for (let i = 0; i < msgCc.length; i++) {
      console.log(msgCc[i].displayName + " (" + msgCc[i].emailAddress + ")");
    }
  } else {
    console.error(asyncResult.error);
  }
});

...

const email = $("#emailCc")
  .val()
  .toString();
const emailArray = [email];
Office.context.mailbox.item.cc.setAsync(emailArray, function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log("Succeeded in setting Cc field.");
  } else {
    console.error(asyncResult.error);
  }
});

conversationId

Obtém um identificador da conversa de email que contém uma mensagem específica.

Você pode obter um número inteiro para esta propriedade se o aplicativo de email estiver ativado nos formulários de leitura ou nas respostas em formulários de composição. Se, posteriormente, o usuário alterar o assunto da mensagem de resposta, ao enviar a resposta, a ID da conversa daquela mensagem será alterada e o valor obtido anteriormente não mais se aplicará.

Você obtém nulo para esta propriedade para um novo item em um formulário de composição. Se o usuário definir um assunto e salvar o item, a propriedade conversationId retornará um valor.

conversationId: string;

Valor da propriedade

string

Comentários

Nível mínimo de permissão: ler item

Modo Outlook aplicável: mensagem Compose

Exemplos

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

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

itemType

Obtém o tipo de item que representa uma instância.

A itemType propriedade devolve um dos valores de ItemType enumeração, indicando se a instância do objeto de item é uma mensagem ou um compromisso.

itemType: MailboxEnums.ItemType | string;

Valor da propriedade

Comentários

Nível mínimo de permissão: ler item

Modo Outlook aplicável: mensagem Compose

Exemplos

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

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

subject

Obtém ou define a descrição que aparece no campo de assunto de um item.

A propriedade subject obtém ou define o assunto completo do item, conforme enviado pelo servidor de email.

A propriedade subject retorna um objeto Subject que fornece métodos para obter e definir o assunto.

subject: Subject;

Valor da propriedade

Comentários

Nível mínimo de permissão: ler item

Modo Outlook aplicável: mensagem Compose

Exemplos

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

Office.context.mailbox.item.subject.getAsync((result) => {
  if (result.status !== Office.AsyncResultStatus.Succeeded) {
    console.error(`Action failed with message ${result.error.message}`);
    return;
  }
  console.log(`Subject: ${result.value}`);
});

...

let subject = "Hello World!";
Office.context.mailbox.item.subject.setAsync(subject, (result) => {
  if (result.status !== Office.AsyncResultStatus.Succeeded) {
    console.error(`Action failed with message ${result.error.message}`);
    return;
  }
  console.log(`Successfully set subject to ${subject}`);
});

to

Fornece acesso aos destinatários na linha Para de uma mensagem. O tipo de objeto e o nível de acesso dependem do modo do item atual.

A propriedade to retorna um objeto Recipients que fornece métodos para obter ou atualizar os destinatários na linha Para da mensagem. No entanto, dependendo do cliente/plataforma (ou seja, Windows, Mac, etc.), podem aplicar-se limites ao número de destinatários que pode obter ou atualizar. Veja o objeto Destinatários para obter mais detalhes.

to: Recipients;

Valor da propriedade

Comentários

Nível mínimo de permissão: ler item

Modo Outlook aplicável: mensagem Compose

Exemplos

Office.context.mailbox.item.to.setAsync( ['alice@contoso.com', 'bob@contoso.com'] );
Office.context.mailbox.item.to.addAsync( ['jason@contoso.com'] );
Office.context.mailbox.item.to.getAsync(callback);

function callback(asyncResult) {
    const arrayOfToRecipients = asyncResult.value;
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-set-to-message-compose.yaml

Office.context.mailbox.item.to.getAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const msgTo = asyncResult.value;
    console.log("Message being sent to:");
    for (let i = 0; i < msgTo.length; i++) {
      console.log(msgTo[i].displayName + " (" + msgTo[i].emailAddress + ")");
    }
  } else {
    console.error(asyncResult.error);
  }
});

...

const email = $("#emailTo")
  .val()
  .toString();
const emailArray = [email];
Office.context.mailbox.item.to.setAsync(emailArray, function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log("Succeeded in setting To field.");
  } else {
    console.error(asyncResult.error);
  }
});

Detalhes do método

addFileAttachmentAsync(uri, attachmentName, options, callback)

Adiciona um arquivo a uma mensagem ou um compromisso como um anexo.

O método addFileAttachmentAsync carrega o arquivo no URI especificado e anexa-o ao item no formulário de composição.

addFileAttachmentAsync(uri: string, attachmentName: string, options: Office.AsyncContextOptions & { isInline: boolean }, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;

Parâmetros

uri

string

O URI que fornece o local do arquivo anexado à mensagem ou compromisso. O comprimento máximo é de 2048 caracteres.

attachmentName

string

O nome do anexo que é mostrado enquanto o anexo está sendo carregado. O tamanho máximo é de 255 caracteres.

options

Office.AsyncContextOptions & { isInline: boolean }

Um literal de objeto que contém uma ou mais das seguintes propriedades: asyncContext: os programadores podem fornecer qualquer objeto a que pretendam aceder na função de chamada de retorno. isInline : se for verdadeiro, indica que o anexo será apresentado inline como uma imagem no corpo da mensagem e não será apresentado na lista de anexos.

callback

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

Opcional. Quando o método for concluído, a função transmitida no callback parâmetro é chamada com um único parâmetro do tipo Office.AsyncResult. Em caso de êxito, o identificador do anexo será fornecido na propriedade asyncResult.value. Se houver falha ao carregar o anexo, o objeto asyncResult conterá um objeto Error que fornece uma descrição do erro.

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.1 para Outlook no Windows (clássico) e no Mac, Caixa de Correio 1.8 para Outlook na Web e novo Outlook no Windows ]

Nível mínimo de permissão: item de leitura/escrita

Modo Outlook aplicável: mensagem Compose

Importante:

  • Este método não é suportado no Outlook para iOS ou Android. Para obter mais informações sobre as APIs suportadas no Outlook Mobile, consulte ApIs JavaScript do Outlook suportadas no Outlook em dispositivos móveis.

  • Nas compilações recentes do Outlook clássico no Windows, foi introduzido um erro que acrescenta incorretamente um Authorization: Bearer cabeçalho a esta ação (quer esteja a utilizar esta API ou a IU do Outlook). Para contornar este problema, utilize a API introduzida com o addFileAttachmentFromBase64 conjunto de requisitos 1.8.

  • O URI do ficheiro a anexar tem de suportar a colocação em cache na produção. O servidor que aloja a imagem não deve devolver um Cache-Control cabeçalho que especifique no-cache, no-storeou opções semelhantes na resposta HTTP. No entanto, quando estiver a desenvolver o suplemento e a fazer alterações aos ficheiros, a colocação em cache pode impedi-lo de ver as suas alterações. Recomendamos a utilização de Cache-Control cabeçalhos durante o desenvolvimento.

  • Pode utilizar o mesmo URI com o removeAttachmentAsync método para remover o anexo na mesma sessão.

Erros:

  • AttachmentSizeExceeded : o anexo é maior do que o permitido.

  • FileTypeNotSupported : o anexo tem uma extensão que não é permitida.

  • NumberOfAttachmentsExceeded : a mensagem ou compromisso tem demasiados anexos.

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml

const attachmentUrl = $("#attachmentUrl")
  .val()
  .toString();
Office.context.mailbox.item.addFileAttachmentAsync(
  attachmentUrl,
  getFileName(attachmentUrl),
  { isInline: false },
  (result) => {
    console.log(result);
  }
);

addFileAttachmentAsync(uri, attachmentName, callback)

Adiciona um arquivo a uma mensagem ou um compromisso como um anexo.

O método addFileAttachmentAsync carrega o arquivo no URI especificado e anexa-o ao item no formulário de composição.

addFileAttachmentAsync(uri: string, attachmentName: string, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;

Parâmetros

uri

string

O URI que fornece o local do arquivo anexado à mensagem ou compromisso. O comprimento máximo é de 2048 caracteres.

attachmentName

string

O nome do anexo que é mostrado enquanto o anexo está sendo carregado. O tamanho máximo é de 255 caracteres.

callback

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

Opcional. Quando o método for concluído, a função transmitida no callback parâmetro é chamada com um único parâmetro do tipo Office.AsyncResult. Em caso de êxito, o identificador do anexo será fornecido na propriedade asyncResult.value. Se houver falha ao carregar o anexo, o objeto asyncResult conterá um objeto Error que fornece uma descrição do erro.

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.1 para Outlook no Windows (clássico) e no Mac, Caixa de Correio 1.8 para Outlook na Web e novo Outlook no Windows ]

Nível mínimo de permissão: item de leitura/escrita

Modo Outlook aplicável: mensagem Compose

Importante:

  • Este método não é suportado no Outlook para iOS ou Android. Para obter mais informações sobre as APIs suportadas no Outlook Mobile, consulte ApIs JavaScript do Outlook suportadas no Outlook em dispositivos móveis.

  • Nas compilações recentes do Outlook clássico no Windows, foi introduzido um erro que acrescenta incorretamente um Authorization: Bearer cabeçalho a esta ação (quer esteja a utilizar esta API ou a IU do Outlook). Para contornar este problema, utilize a API introduzida com o addFileAttachmentFromBase64 conjunto de requisitos 1.8.

  • O URI do ficheiro a anexar tem de suportar a colocação em cache na produção. O servidor que aloja a imagem não deve devolver um Cache-Control cabeçalho que especifique no-cache, no-storeou opções semelhantes na resposta HTTP. No entanto, quando estiver a desenvolver o suplemento e a fazer alterações aos ficheiros, a colocação em cache pode impedi-lo de ver as suas alterações. Recomendamos a utilização de Cache-Control cabeçalhos durante o desenvolvimento.

  • Pode utilizar o mesmo URI com o removeAttachmentAsync método para remover o anexo na mesma sessão.

Erros:

  • AttachmentSizeExceeded : o anexo é maior do que o permitido.

  • FileTypeNotSupported : o anexo tem uma extensão que não é permitida.

  • NumberOfAttachmentsExceeded : a mensagem ou compromisso tem demasiados anexos.

addItemAttachmentAsync(itemId, attachmentName, options, callback)

Adiciona um item do Exchange, como uma mensagem, como anexo na mensagem ou no compromisso.

O método addItemAttachmentAsync anexa o item com o identificador do Exchange especificado ao item no formulário de composição. Se especificar uma função de chamada de retorno, o método é chamado com um parâmetro, asyncResult, que contém o identificador do anexo ou um código que indica qualquer erro que tenha ocorrido ao anexar o item. Pode utilizar o parâmetro de opções para transmitir informações de estado para a função de chamada de retorno, se necessário.

Posteriormente, você poderá usar o identificador com o método removeAttachmentAsync para remover o anexo na mesma sessão.

Se o seu Suplemento do Office estiver em execução no Outlook na Web ou no novo Outlook no Windows, o addItemAttachmentAsync método pode anexar itens a itens diferentes do item que está a editar. No entanto, isto não é suportado e não é recomendado.

addItemAttachmentAsync(itemId: any, attachmentName: string, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;

Parâmetros

itemId

any

O identificador do Exchange do item a anexar. O comprimento máximo é de 100 caracteres.

attachmentName

string

O nome do anexo que é mostrado enquanto o anexo está sendo carregado. O tamanho máximo é de 255 caracteres.

options
Office.AsyncContextOptions

Um literal de objeto que contém uma ou mais das seguintes propriedades: asyncContext: os programadores podem fornecer qualquer objeto a que pretendam aceder na função de chamada de retorno.

callback

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

Opcional. Quando o método for concluído, a função transmitida no callback parâmetro é chamada com um único parâmetro do tipo Office.AsyncResult. Em caso de êxito, o identificador do anexo será fornecido na propriedade asyncResult.value. Se houver falha ao adicionar o anexo, o objeto asyncResult conterá um objeto Error que fornece uma descrição do erro.

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

Nível mínimo de permissão: item de leitura/escrita

Modo Outlook aplicável: mensagem Compose

Erros:

  • NumberOfAttachmentsExceeded : a mensagem ou compromisso tem demasiados anexos.

Exemplos

// The following example adds an existing Outlook item as an attachment
// with the name "My Attachment".
function addAttachment() {
    // EWS ID of item to attach (shortened for readability).
    const itemId = "AAMkADI1...AAA=";

    // The values in asyncContext can be accessed in the callback.
    const options = { asyncContext: { var1: 1, var2: 2 } };

    Office.context.mailbox.item.addItemAttachmentAsync(itemId, "My Attachment", options, (result) => {
        if (result.status === Office.AsyncResultStatus.Failed) {
            console.error("Failed to add attachment: " + result.error.message);
            return;
        }

        console.log("Attachment added successfully.");
        console.log("var1: " + result.asyncContext.var1);
        console.log("var2: " + result.asyncContext.var2);
    });
}

addItemAttachmentAsync(itemId, attachmentName, callback)

Adiciona um item do Exchange, como uma mensagem, como anexo na mensagem ou no compromisso.

O método addItemAttachmentAsync anexa o item com o identificador do Exchange especificado ao item no formulário de composição. Se especificar uma função de chamada de retorno, o método é chamado com um parâmetro, asyncResult, que contém o identificador do anexo ou um código que indica qualquer erro que tenha ocorrido ao anexar o item. Pode utilizar o parâmetro de opções para transmitir informações de estado para a função de chamada de retorno, se necessário.

Posteriormente, você poderá usar o identificador com o método removeAttachmentAsync para remover o anexo na mesma sessão.

Se o seu Suplemento do Office estiver em execução no Outlook na Web ou no novo Outlook no Windows, o addItemAttachmentAsync método pode anexar itens a itens diferentes do item que está a editar. No entanto, isto não é suportado e não é recomendado.

addItemAttachmentAsync(itemId: any, attachmentName: string, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;

Parâmetros

itemId

any

O identificador do Exchange do item a anexar. O comprimento máximo é de 100 caracteres.

attachmentName

string

O nome do anexo que é mostrado enquanto o anexo está sendo carregado. O tamanho máximo é de 255 caracteres.

callback

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

Opcional. Quando o método for concluído, a função transmitida no callback parâmetro é chamada com um único parâmetro do tipo Office.AsyncResult. Em caso de êxito, o identificador do anexo será fornecido na propriedade asyncResult.value. Se houver falha ao adicionar o anexo, o objeto asyncResult conterá um objeto Error que fornece uma descrição do erro.

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

Nível mínimo de permissão: item de leitura/escrita

Modo Outlook aplicável: mensagem Compose

Erros:

  • NumberOfAttachmentsExceeded : a mensagem ou compromisso tem demasiados anexos.

getSelectedDataAsync(coercionType, options, callback)

Retorna de forma assíncrona os dados selecionados do assunto ou do corpo de uma mensagem.

Se não houver seleção, mas o cursor estiver no corpo ou assunto, o método devolve uma cadeia vazia para os dados selecionados. Se um campo que não seja o corpo ou o assunto estiver selecionado, o método retorna o erro InvalidSelection.

Para aceder aos dados selecionados a partir da função de chamada de retorno, chame asyncResult.value.data. Para aceder à propriedade de origem da qual a seleção provém, chame asyncResult.value.sourceProperty, que será body ou subject.

getSelectedDataAsync(coercionType: Office.CoercionType | string, options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<any>) => void): void;

Parâmetros

coercionType

Office.CoercionType | string

Solicita um formato para os dados. Se Text, o método devolve o texto simples como uma cadeia, removendo todas as etiquetas HTML presentes. Se Html, o método devolve o texto selecionado, quer seja texto simples ou HTML.

options
Office.AsyncContextOptions

Um literal de objeto que contém uma ou mais das seguintes propriedades: asyncContext: os programadores podem fornecer qualquer objeto a que pretendam aceder na função de chamada de retorno.

callback

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

Quando o método for concluído, a função transmitida no callback parâmetro é chamada com um único parâmetro do tipo Office.AsyncResult.

Retornos

void

Os dados selecionados como uma cadeia com formato determinado por coercionType.

Comentários

[ Conjunto de API: Caixa de Correio 1.2 ]

Nível mínimo de permissão: ler item

Modo Outlook aplicável: mensagem Compose

Exemplos

// Get selected data.
Office.context.mailbox.item.getSelectedDataAsync(Office.CoercionType.Text, { option1: "option1"}, getCallback);

function getCallback(asyncResult) {
    const text = asyncResult.value.data;
    const prop = asyncResult.value.sourceProperty;

    console.log(`Selected text in ${prop}: ${text}`);
}

getSelectedDataAsync(coercionType, callback)

Retorna de forma assíncrona os dados selecionados do assunto ou do corpo de uma mensagem.

Se não houver seleção, mas o cursor estiver no corpo ou assunto, o método devolve uma cadeia vazia para os dados selecionados. Se um campo que não seja o corpo ou o assunto estiver selecionado, o método retorna o erro InvalidSelection.

Para aceder aos dados selecionados a partir da função de chamada de retorno, chame asyncResult.value.data. Para aceder à propriedade de origem da qual a seleção provém, chame asyncResult.value.sourceProperty, que será body ou subject.

getSelectedDataAsync(coercionType: Office.CoercionType | string, callback: (asyncResult: Office.AsyncResult<any>) => void): void;

Parâmetros

coercionType

Office.CoercionType | string

Solicita um formato para os dados. Se Text, o método devolve o texto simples como uma cadeia, removendo todas as etiquetas HTML presentes. Se Html, o método devolve o texto selecionado, quer seja texto simples ou HTML.

callback

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

Quando o método for concluído, a função transmitida no callback parâmetro é chamada com um único parâmetro do tipo Office.AsyncResult.

Retornos

void

Os dados selecionados como uma cadeia com formato determinado por coercionType.

Comentários

[ Conjunto de API: Caixa de Correio 1.2 ]

Nível mínimo de permissão: ler item

Modo Outlook aplicável: mensagem Compose

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/get-selected-data.yaml

Office.context.mailbox.item.getSelectedDataAsync(Office.CoercionType.Text, function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const text = asyncResult.value.data;
    const prop = asyncResult.value.sourceProperty;
    console.log("Selected text in " + prop + ": " + text);
  } else {
    console.error(asyncResult.error);
  }
});

loadCustomPropertiesAsync(callback, userContext)

Carrega de forma assíncrona as propriedades personalizadas para esse suplemento no item selecionado.

As propriedades personalizadas são armazenadas como pares chave-valor numa base por aplicação, por item. Este método devolve um objeto CustomProperties na chamada de retorno, que fornece métodos para aceder às propriedades personalizadas específicas do item atual e do suplemento atual. As propriedades personalizadas não são encriptadas no item, pelo que não deve ser utilizado como armazenamento seguro.

As propriedades personalizadas são fornecidas como um objeto CustomProperties na propriedade asyncResult.value. Este objeto pode ser utilizado para obter, definir, guardar e remover propriedades personalizadas do item de correio.

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

Parâmetros

callback

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

Quando o método for concluído, a função transmitida no callback parâmetro é chamada com um único parâmetro do tipo Office.AsyncResult.

userContext

any

Opcional. Os desenvolvedores podem fornecer qualquer objeto que desejarem acessar na função de retorno de chamada. Esse objeto pode ser acessado pela propriedade asyncResult.asyncContext na função de retorno de chamada.

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

Para saber mais sobre as propriedades personalizadas, consulte Obter e definir metadados de suplementos para um suplemento do Outlook.

Nível mínimo de permissão: ler item

Modo Outlook aplicável: mensagem Compose

Exemplos

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

Office.context.mailbox.item.loadCustomPropertiesAsync((result) => {
  if (result.status === Office.AsyncResultStatus.Failed) {
    console.error(`loadCustomPropertiesAsync failed with message ${result.error.message}`);
    return;
  }

  customProps = result.value;
  console.log("Loaded the CustomProperties object.");
});

removeAttachmentAsync(attachmentId, options, callback)

Remove um anexo de uma mensagem ou de um compromisso.

O método removeAttachmentAsync remove o anexo com o identificador especificado do item. Como prática recomendada, deve-se usar o identificador do anexo para remover um anexo somente se o mesmo aplicativo de email tiver adicionado esse anexo na mesma sessão. No Outlook na Web, em dispositivos móveis e no novo Outlook no Windows, o identificador de anexo só é válido na mesma sessão. Uma sessão termina quando o utilizador fecha a aplicação ou, se o utilizador começar a compor um formulário inline, é posteriormente apresentado o formulário para continuar numa janela separada.

removeAttachmentAsync(attachmentId: string, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

Parâmetros

attachmentId

string

O identificador do anexo a remover. O comprimento máximo da cadeia de carateres é de attachmentId 200 carateres em Outlook na Web e no Windows (novo e clássico).

options
Office.AsyncContextOptions

Um literal de objeto que contém uma ou mais das seguintes propriedades: asyncContext: os programadores podem fornecer qualquer objeto a que pretendam aceder na função de chamada de retorno.

callback

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

Opcional. Quando o método for concluído, a função transmitida no callback parâmetro é chamada com um único parâmetro do tipo Office.AsyncResult. Se a remoção do anexo falhar, a propriedade asyncResult.error conterá um código de erro com o motivo da falha.

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

Nível mínimo de permissão: item de leitura/escrita

Modo Outlook aplicável: mensagem Compose

Importante*: o removeAttachmentAsync método não remove anexos inline de um item de correio. Para remover um anexo inline, primeiro obtenha o corpo do item e, em seguida, remova quaisquer referências do anexo do respetivo conteúdo. Utilize as APIs Office.Body para obter e definir o corpo de um item.

Erros:

  • InvalidAttachmentId : o identificador de anexo não existe.

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml

Office.context.mailbox.item.removeAttachmentAsync(
  $("#attachmentId")
    .val()
    .toString(),
  (result) => {
    if (result.status === Office.AsyncResultStatus.Failed) {
      console.error(result.error.message);
      return;
    }

    console.log(`Attachment removed successfully.`);
  }
);

removeAttachmentAsync(attachmentId, callback)

Remove um anexo de uma mensagem ou de um compromisso.

O método removeAttachmentAsync remove o anexo com o identificador especificado do item. Como prática recomendada, deve-se usar o identificador do anexo para remover um anexo somente se o mesmo aplicativo de email tiver adicionado esse anexo na mesma sessão. No Outlook na Web, em dispositivos móveis e no novo Outlook no Windows, o identificador de anexo só é válido na mesma sessão. Uma sessão termina quando o utilizador fecha a aplicação ou, se o utilizador começar a compor um formulário inline, é posteriormente apresentado o formulário para continuar numa janela separada.

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

Parâmetros

attachmentId

string

O identificador do anexo a remover. O comprimento máximo da cadeia de carateres é de attachmentId 200 carateres em Outlook na Web e no Windows (novo e clássico).

callback

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

Opcional. Quando o método for concluído, a função transmitida no callback parâmetro é chamada com um único parâmetro do tipo Office.AsyncResult. Se a remoção do anexo falhar, a propriedade asyncResult.error conterá um código de erro com o motivo da falha.

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

Nível mínimo de permissão: item de leitura/escrita

Modo Outlook aplicável: mensagem Compose

Importante*: o removeAttachmentAsync método não remove anexos inline de um item de correio. Para remover um anexo inline, primeiro obtenha o corpo do item e, em seguida, remova quaisquer referências do anexo do respetivo conteúdo. Utilize as APIs Office.Body para obter e definir o corpo de um item.

Erros:

  • InvalidAttachmentId : o identificador de anexo não existe.

setSelectedDataAsync(data, options, callback)

Insere de forma assíncrona os dados no corpo ou no assunto de uma mensagem.

O setSelectedDataAsync método insere a cadeia especificada na localização do cursor no assunto ou corpo do item ou, se o texto estiver selecionado no editor, substitui o texto selecionado. Se o cursor não estiver no corpo ou no campo do assunto, é devolvido um erro. Após a inserção, o cursor é colocado no final do conteúdo inserido.

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

Parâmetros

data

string

Os dados a serem inseridos. Os dados não devem exceder 1.000.000 de caracteres. Se forem passados mais de 1.000.000 de caracteres, ocorrerá uma exceção ArgumentOutOfRange.

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

Um literal de objeto que contém uma ou mais das seguintes propriedades: asyncContext: os programadores podem fornecer qualquer objeto a que pretendam aceder na função de chamada de retorno. coercionType : se for texto, o estilo atual é aplicado no Outlook na Web, no Windows (novo e clássico) e no Mac. Se o campo for um editor de HTML, apenas os dados de texto são inseridos, mesmo se os dados forem HTML. Se os dados forem HTML e o campo suportar HTML (o assunto não o faz), o estilo atual é aplicado no Outlook na Web e no novo Outlook no Windows. O estilo predefinido é aplicado no Outlook no Windows (clássico) e no Mac. Se o campo for um campo de texto, retorna um erro InvalidDataFormat. Se coercionType não estiver definido, o resultado depende do campo: se o campo for HTML, HTML será usado; se o campo for texto, texto sem formatação será usado.

callback

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

Opcional. Quando o método for concluído, a função transmitida no callback parâmetro é chamada com um único parâmetro do tipo Office.AsyncResult.

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.2 ]

Nível mínimo de permissão: item de leitura/escrita

Modo Outlook aplicável: mensagem Compose

Erros:

  • InvalidAttachmentId : o identificador de anexo não existe.

Exemplos

Office.context.mailbox.item.setSelectedDataAsync("<b>Hello World!</b>", { coercionType : "html" });
Office.context.mailbox.item.setSelectedDataAsync("Hello World!");
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/set-selected-data.yaml

Office.context.mailbox.item.setSelectedDataAsync("Replaced", function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    console.log("Selected text has been updated successfully.");
  } else {
    console.error(asyncResult.error);
  }
});

setSelectedDataAsync(data, callback)

Insere de forma assíncrona os dados no corpo ou no assunto de uma mensagem.

O setSelectedDataAsync método insere a cadeia especificada na localização do cursor no assunto ou corpo do item ou, se o texto estiver selecionado no editor, substitui o texto selecionado. Se o cursor não estiver no corpo ou no campo do assunto, é devolvido um erro. Após a inserção, o cursor é colocado no final do conteúdo inserido.

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

Parâmetros

data

string

Os dados a serem inseridos. Os dados não devem exceder 1.000.000 de caracteres. Se forem passados mais de 1.000.000 de caracteres, ocorrerá uma exceção ArgumentOutOfRange.

callback

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

Opcional. Quando o método for concluído, a função transmitida no callback parâmetro é chamada com um único parâmetro do tipo Office.AsyncResult.

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.2 ]

Nível mínimo de permissão: item de leitura/escrita

Modo Outlook aplicável: mensagem Compose

Erros:

  • InvalidAttachmentId : o identificador de anexo não existe.