Compartilhar via


Office.MessageRead interface

O modo de leitura da mensagem 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

Comentários

Exemplos

// The following code builds an HTML string with details of all attachments on the current item.
 const item = Office.context.mailbox.item;
 let outputString = "";
 if (item.attachments.length > 0) {
     for (let i = 0 ; i < item.attachments.length ; i++) {
         const attachment = item.attachments[i];
         outputString += "<BR>" + i + ". Name: ";
         outputString += attachment.name;
         outputString += "<BR>ID: " + attachment.id;
         outputString += "<BR>contentType: " + attachment.contentType;
         outputString += "<BR>size: " + attachment.size;
         outputString += "<BR>attachmentType: " + attachment.attachmentType;
         outputString += "<BR>isInline: " + attachment.isInline;
     }
 }
 console.log(outputString);

Propriedades

attachments

Obtém os anexos do item como uma matriz.

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 cc propriedade devolve uma matriz que contém um objeto EmailAddressDetails para cada destinatário listado na linha Cc da mensagem. O número máximo de destinatários devolvidos varia de acordo com o cliente do Outlook.

  • Windows clássico: 500 destinatários

  • Android, IU clássica do Mac, iOS: 100 destinatários

  • Browser, novo Outlook: 20 destinatários (vista fechada), 500 destinatários (vista expandida)

  • Nova IU do Mac: sem limite

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.

dateTimeCreated

Obtém a data e a hora em que um item foi criado.

dateTimeModified

Obtém a data e a hora em que um item foi alterado pela última vez.

end

Obtém a data e hora em que o compromisso está para terminar.

A end propriedade é um Date objeto expresso como um valor de data e hora Universal Coordenada (UTC). Pode utilizar o convertToLocalClientTime método para converter o valor da end propriedade para a data e hora locais do cliente.

Ao usar o método Time.setAsync para definir a hora de término, deve-se usar o método convertToUtcClientTime para converter a hora local no cliente para UTC para o servidor.

from

Obtém o endereço de email do remetente de uma mensagem.

As propriedades from e sender representam a mesma pessoa, a menos que a mensagem seja enviada por um representante. Nesse caso, a from propriedade representa o delegante e a sender propriedade representa o delegado.

Nota: a recipientType propriedade do EmailAddressDetails objeto na from propriedade não está definida.

A from propriedade devolve um EmailAddressDetails objeto.

internetMessageId

Obtém o identificador de mensagem de Internet para uma mensagem de e-mail.

Importante: na pasta Itens Enviados , o internetMessageId pode ainda não estar disponível em itens enviados recentemente. Nesse caso, considere utilizar os Serviços Web exchange para obter esta propriedade do servidor.

itemClass

Obtém a classe de item exchange Web Services da mensagem selecionada.

itemId

Obtém o identificador do item do Exchange Web Services (EWS) do item atual.

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.

location

Obtém a localização de um pedido de reunião.

A propriedade location retorna uma cadeia de caracteres que contém o local do compromisso.

normalizedSubject

Obtém o assunto de um item, com todos os prefixos removidos (incluindo RE: e FWD:).

A normalizedSubject propriedade obtém o assunto do item, com quaisquer prefixos padrão (como RE: e FW:) que são adicionados por programas de e-mail. Para obter o assunto do item com os prefixos intactos, use a propriedade subject.

notificationMessages

Obtém as mensagens de notificação de um item.

sender

Obtém o endereço de email do remetente de uma mensagem de email.

As propriedades from e sender representam a mesma pessoa, a menos que a mensagem seja enviada por um representante. Nesse caso, a from propriedade representa o delegante e a sender propriedade representa o delegado.

Nota: a recipientType propriedade do EmailAddressDetails objeto na sender propriedade não está definida.

start

Obtém a data e hora em que o compromisso deve começar.

A start propriedade é um Date objeto expresso como um valor de data e hora Universal Coordenada (UTC). Pode utilizar o convertToLocalClientTime método para converter o valor para a data e hora locais do cliente.

subject

Obtém a descrição que aparece no campo 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 uma cadeia de caracteres. Utilize a normalizedSubject propriedade para obter o assunto menos quaisquer prefixos à esquerda, como RE: e FW:.

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 to propriedade devolve uma matriz que contém um objeto EmailAddressDetails para cada destinatário listado na linha Para da mensagem. O número máximo de destinatários devolvidos varia de acordo com o cliente do Outlook.

  • Windows clássico: 500 destinatários

  • Android, IU clássica do Mac, iOS: 100 destinatários

  • Browser, novo Outlook: 20 destinatários (vista fechada), 500 destinatários (vista expandida)

  • Nova IU do Mac: sem limite

Métodos

displayReplyAllForm(formData)

Apresenta um formulário de resposta que inclui o remetente e todos os destinatários da mensagem selecionada ou o organizador e todos os participantes do compromisso selecionado.

displayReplyForm(formData)

Exibe um formulário de resposta que inclui o remetente da mensagem selecionada ou o organizador do compromisso selecionado.

getEntities()

Obtém as entidades encontradas no corpo do item selecionado.

Aviso: os suplementos contextuais do Outlook baseados em entidades foram descontinuados. No entanto, as regras de expressão regulares continuam a ser suportadas. Recomendamos que atualize o suplemento contextual para utilizar regras de expressão regulares como uma solução alternativa. Para obter orientações sobre como implementar estas regras, veja Suplementos contextuais do Outlook.

getEntitiesByType(entityType)

Obtém uma matriz de todas as entidades do tipo de entidade especificado encontradas no corpo do item selecionado.

Aviso: os suplementos contextuais do Outlook baseados em entidades foram descontinuados. No entanto, as regras de expressão regulares continuam a ser suportadas. Recomendamos que atualize o suplemento contextual para utilizar regras de expressão regulares como uma solução alternativa. Para obter orientações sobre como implementar estas regras, veja Suplementos contextuais do Outlook.

getFilteredEntitiesByName(name)

Devolve entidades conhecidas no item selecionado que transmitem o filtro nomeado definido num ficheiro de manifesto apenas de suplemento.

Aviso: os suplementos contextuais do Outlook baseados em entidades foram descontinuados. No entanto, as regras de expressão regulares continuam a ser suportadas. Recomendamos que atualize o suplemento contextual para utilizar regras de expressão regulares como uma solução alternativa. Para obter orientações sobre como implementar estas regras, veja Suplementos contextuais do Outlook.

getRegExMatches()

Devolve valores de cadeia no item selecionado que correspondem às expressões regulares definidas num ficheiro de manifesto apenas de suplemento.

getRegExMatchesByName(name)

Devolve valores de cadeia no item selecionado que correspondem à expressão regular nomeada definida num ficheiro de manifesto apenas de suplemento.

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.

Detalhes da propriedade

attachments

Obtém os anexos do item como uma matriz.

attachments: AttachmentDetails[];

Valor da propriedade

Comentários

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

Modo Outlook aplicável: Leitura da Mensagem

Nota: determinados tipos de ficheiros são bloqueados pelo Outlook devido a potenciais problemas de segurança e, por conseguinte, não são devolvidos. Para obter mais informações, consulte Anexos bloqueados no Outlook.

Exemplos

// The following code builds an HTML string with details of all attachments on the current item.
const item = Office.context.mailbox.item;
let outputString = "";

if (item.attachments.length > 0) {
    for (let i = 0 ; i < item.attachments.length ; i++) {
        const attachment = item.attachments[i];
        outputString += "<BR>" + i + ". Name: ";
        outputString += attachment.name;
        outputString += "<BR>ID: " + attachment.id;
        outputString += "<BR>contentType: " + attachment.contentType;
        outputString += "<BR>size: " + attachment.size;
        outputString += "<BR>attachmentType: " + attachment.attachmentType;
        outputString += "<BR>isInline: " + attachment.isInline;
    }
}

console.log(outputString);
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/get-attachments-read.yaml

const attachments = Office.context.mailbox.item.attachments;
console.log(attachments);

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: Leitura da Mensagem

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 cc propriedade devolve uma matriz que contém um objeto EmailAddressDetails para cada destinatário listado na linha Cc da mensagem. O número máximo de destinatários devolvidos varia de acordo com o cliente do Outlook.

  • Windows clássico: 500 destinatários

  • Android, IU clássica do Mac, iOS: 100 destinatários

  • Browser, novo Outlook: 20 destinatários (vista fechada), 500 destinatários (vista expandida)

  • Nova IU do Mac: sem limite

cc: EmailAddressDetails[];

Valor da propriedade

Comentários

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

Modo Outlook aplicável: Leitura da Mensagem

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-cc-message-read.yaml

const msgCc = Office.context.mailbox.item.cc;
console.log("Message copied to:");
for (let i = 0; i < msgCc.length; i++) {
  console.log(msgCc[i].displayName + " (" + msgCc[i].emailAddress + ")");
}

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: Leitura da Mensagem

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}`);

dateTimeCreated

Obtém a data e a hora em que um item foi criado.

dateTimeCreated: Date;

Valor da propriedade

Date

Comentários

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

Modo Outlook aplicável: Leitura da Mensagem

Exemplos

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

console.log(`Creation date and time: ${Office.context.mailbox.item.dateTimeCreated}`);

dateTimeModified

Obtém a data e a hora em que um item foi alterado pela última vez.

dateTimeModified: Date;

Valor da propriedade

Date

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

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

Modo Outlook aplicável: Participante do Compromisso

Importante: esta propriedade não é suportada no Outlook para Android ou iOS. Para obter mais informações sobre as APIs suportadas no Outlook Mobile, consulte ApIs JavaScript do Outlook suportadas no Outlook em dispositivos móveis.

Exemplos

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

console.log(`Date and time item last modified: ${Office.context.mailbox.item.dateTimeModified}`);

end

Obtém a data e hora em que o compromisso está para terminar.

A end propriedade é um Date objeto expresso como um valor de data e hora Universal Coordenada (UTC). Pode utilizar o convertToLocalClientTime método para converter o valor da end propriedade para a data e hora locais do cliente.

Ao usar o método Time.setAsync para definir a hora de término, deve-se usar o método convertToUtcClientTime para converter a hora local no cliente para UTC para o servidor.

end: Date;

Valor da propriedade

Date

Comentários

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

Modo Outlook aplicável: Leitura da Mensagem

Exemplos

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

console.log(`Appointment ends: ${Office.context.mailbox.item.end}`);

from

Obtém o endereço de email do remetente de uma mensagem.

As propriedades from e sender representam a mesma pessoa, a menos que a mensagem seja enviada por um representante. Nesse caso, a from propriedade representa o delegante e a sender propriedade representa o delegado.

Nota: a recipientType propriedade do EmailAddressDetails objeto na from propriedade não está definida.

A from propriedade devolve um EmailAddressDetails objeto.

from: EmailAddressDetails;

Valor da propriedade

Comentários

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

Modo Outlook aplicável: Leitura da Mensagem

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-from-message-read.yaml

const msgFrom = Office.context.mailbox.item.from;
console.log("Message received from: " + msgFrom.displayName + " (" + msgFrom.emailAddress + ")");

internetMessageId

Obtém o identificador de mensagem de Internet para uma mensagem de e-mail.

Importante: na pasta Itens Enviados , o internetMessageId pode ainda não estar disponível em itens enviados recentemente. Nesse caso, considere utilizar os Serviços Web exchange para obter esta propriedade do servidor.

internetMessageId: string;

Valor da propriedade

string

Comentários

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

Modo Outlook aplicável: Leitura da Mensagem

Exemplos

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

console.log(`Internet message ID: ${Office.context.mailbox.item.internetMessageId}`);

itemClass

Obtém a classe de item exchange Web Services da mensagem selecionada.

itemClass: string;

Valor da propriedade

string

Comentários

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

Modo Outlook aplicável: Leitura da Mensagem

Importante:

A tabela seguinte lista as classes de itens predefinidas para mensagens.

Classe item Descrição
O IPM. Nota Novas mensagens e respostas a mensagens
O IPM. Note.SMIME Mensagens encriptadas que também podem ser assinadas
O IPM. Note.SMIME.MultipartSigned Mensagens com assinatura não criptografada
IPM.Schedule.Meeting.Request Solicitações de reunião
IPM.Schedule.Meeting.Canceled Cancelamentos de reunião
O IPM. Schedule.Meeting.Resp.Neg Respostas para recusar solicitações de reunião
O IPM. Schedule.Meeting.Resp.Pos Respostas para aceitar pedidos de reunião
O IPM. Schedule.Meeting.Resp.Tent Respostas para aceitar provisoriamente solicitações de reunião

Pode criar classes personalizadas que expandem uma classe de itens predefinida. Por exemplo, IPM.Note.Contoso.

Exemplos

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

console.log(`Item class: ${Office.context.mailbox.item.itemClass}`);

itemId

Obtém o identificador do item do Exchange Web Services (EWS) do item atual.

itemId: string;

Valor da propriedade

string

Comentários

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

Modo Outlook aplicável: Leitura da Mensagem

Importante:

  • A itemId propriedade não está disponível no modo de composição. Se for obrigatório o identificador de um item, pode ser usado o método Office.context.mailbox.item.saveAsync para salvar o item no servidor, o que retornará o identificador do item no parâmetro asyncResult.value na função de retorno de chamada. Se o item já estiver guardado, pode chamar o Office.context.mailbox.item.getItemIdAsync método.

  • O ID do item devolvido não é idêntico ao ID de Entrada do Outlook ou ao ID utilizado pela API REST do Outlook. Antes de efetuar chamadas à API REST com este valor, deve ser convertida com Office.context.mailbox.convertToRestId.

Exemplos

// The following code checks for the presence of an item
// identifier. If the `itemId` property returns `null` or
// `undefined`, it saves the item to the store and gets the
// item identifier from the asynchronous result.
// **Important**: `saveAsync` was introduced with requirement set 1.3
// so you can't get the `itemId` in Compose mode in earlier sets.
let itemId = Office.context.mailbox.item.itemId;
if (itemId === null || itemId == undefined) {
    Office.context.mailbox.item.saveAsync(function(result) {
        itemId = result.value;
    });
}

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: Leitura da Mensagem

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;
}

location

Obtém a localização de um pedido de reunião.

A propriedade location retorna uma cadeia de caracteres que contém o local do compromisso.

location: string;

Valor da propriedade

string

Comentários

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

Modo Outlook aplicável: Leitura da Mensagem

Exemplos

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

console.log(`Appointment location: ${Office.context.mailbox.item.location}`);

normalizedSubject

Obtém o assunto de um item, com todos os prefixos removidos (incluindo RE: e FWD:).

A normalizedSubject propriedade obtém o assunto do item, com quaisquer prefixos padrão (como RE: e FW:) que são adicionados por programas de e-mail. Para obter o assunto do item com os prefixos intactos, use a propriedade subject.

normalizedSubject: string;

Valor da propriedade

string

Comentários

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

Modo Outlook aplicável: Leitura da Mensagem

Exemplos

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

console.log(`Normalized subject: ${Office.context.mailbox.item.normalizedSubject}`);

notificationMessages

Obtém as mensagens de notificação de um item.

notificationMessages: NotificationMessages;

Valor da propriedade

Comentários

[ Conjunto de API: Caixa de Correio 1.3 ]

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

Modo Outlook aplicável: Leitura da Mensagem

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/35-notifications/add-getall-remove.yaml

// Adds a progress indicator to the mail item.
const id = $("#notificationId").val().toString();
const details =
  {
    type: Office.MailboxEnums.ItemNotificationMessageType.ProgressIndicator,
    message: "Progress indicator with id = " + id
  };
Office.context.mailbox.item.notificationMessages.addAsync(id, details, handleResult);

...

// Adds an informational notification to the mail item.
const id = $("#notificationId").val().toString();
const details =
  {
    type: Office.MailboxEnums.ItemNotificationMessageType.InformationalMessage,
    message: "Non-persistent informational notification message with id = " + id,
    icon: "icon1",
    persistent: false
  };
Office.context.mailbox.item.notificationMessages.addAsync(id, details, handleResult);

...

// Adds a persistent information notification to the mail item.
const id = $("#notificationId").val().toString();
const details =
  {
    type: Office.MailboxEnums.ItemNotificationMessageType.InformationalMessage,
    message: "Persistent informational notification message with id = " + id,
    icon: "icon1",
    persistent: true
  };
Office.context.mailbox.item.notificationMessages.addAsync(id, details, handleResult);

...

// Gets all the notification messages and their keys for the current mail item.
Office.context.mailbox.item.notificationMessages.getAllAsync((asyncResult) => {
  if (asyncResult.status === Office.AsyncResultStatus.Failed) {
    console.log(asyncResult.error.message);
    return;
  }

  console.log(asyncResult.value);
});

...

// Replaces a notification message of a given key with another message.
const id = $("#notificationId").val().toString();
Office.context.mailbox.item.notificationMessages.replaceAsync(
  id,
  {
    type: Office.MailboxEnums.ItemNotificationMessageType.InformationalMessage,
    message: "Notification message with id = " + id + " has been replaced with an informational message.",
    icon: "icon2",
    persistent: false
  },
  handleResult);

...

// Removes a notification message from the current mail item.
const id = $("#notificationId").val().toString();
Office.context.mailbox.item.notificationMessages.removeAsync(id, handleResult);

sender

Obtém o endereço de email do remetente de uma mensagem de email.

As propriedades from e sender representam a mesma pessoa, a menos que a mensagem seja enviada por um representante. Nesse caso, a from propriedade representa o delegante e a sender propriedade representa o delegado.

Nota: a recipientType propriedade do EmailAddressDetails objeto na sender propriedade não está definida.

sender: EmailAddressDetails;

Valor da propriedade

Comentários

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

Modo Outlook aplicável: Leitura da Mensagem

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-sender-message-read.yaml

const msgSender = Office.context.mailbox.item.sender;
console.log("Sender: " + msgSender.displayName + " (" + msgSender.emailAddress + ")");

start

Obtém a data e hora em que o compromisso deve começar.

A start propriedade é um Date objeto expresso como um valor de data e hora Universal Coordenada (UTC). Pode utilizar o convertToLocalClientTime método para converter o valor para a data e hora locais do cliente.

start: Date;

Valor da propriedade

Date

Comentários

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

Modo Outlook aplicável: Leitura da Mensagem

Exemplos

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

console.log(`Appointment starts: ${Office.context.mailbox.item.start}`);

subject

Obtém a descrição que aparece no campo 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 uma cadeia de caracteres. Utilize a normalizedSubject propriedade para obter o assunto menos quaisquer prefixos à esquerda, como RE: e FW:.

subject: string;

Valor da propriedade

string

Comentários

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

Modo Outlook aplicável: Leitura da Mensagem

Exemplos

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

console.log(`Subject: ${Office.context.mailbox.item.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 to propriedade devolve uma matriz que contém um objeto EmailAddressDetails para cada destinatário listado na linha Para da mensagem. O número máximo de destinatários devolvidos varia de acordo com o cliente do Outlook.

  • Windows clássico: 500 destinatários

  • Android, IU clássica do Mac, iOS: 100 destinatários

  • Browser, novo Outlook: 20 destinatários (vista fechada), 500 destinatários (vista expandida)

  • Nova IU do Mac: sem limite

to: EmailAddressDetails[];

Valor da propriedade

Comentários

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

Modo Outlook aplicável: Leitura da Mensagem

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-to-message-read.yaml

const msgTo = Office.context.mailbox.item.to;
const distributionLists = [];
const externalRecipients = [];
const internalRecipients = [];
const otherRecipients = [];
for (let i = 0; i < msgTo.length; i++) {
    switch (msgTo[i].recipientType) {
    case Office.MailboxEnums.RecipientType.DistributionList:
        distributionLists.push(msgTo[i]);
        break;
    case Office.MailboxEnums.RecipientType.ExternalUser:
        externalRecipients.push(msgTo[i]);
        break;
    case Office.MailboxEnums.RecipientType.User:
        internalRecipients.push(msgTo[i]);
        break;
    case Office.MailboxEnums.RecipientType.Other:
        otherRecipients.push(msgTo[i]);
    }
}

if (distributionLists.length > 0) {
    console.log("Distribution Lists:");
    distributionLists.forEach((recipient) => console.log(`${recipient.displayName}, ${recipient.emailAddress}`));
}

if (externalRecipients.length > 0) {
    console.log("External Recipients:");
    externalRecipients.forEach((recipient) => console.log(`${recipient.displayName}, ${recipient.emailAddress}`));
}

if (internalRecipients.length > 0) {
    console.log("Internal Recipients:");
    internalRecipients.forEach((recipient) => console.log(`${recipient.displayName}, ${recipient.emailAddress}`));
}

if (otherRecipients.length > 0) {
    console.log("Other Recipients:");
    otherRecipients.forEach((recipient) => console.log(`${recipient.displayName}, ${recipient.emailAddress}`));
}

Detalhes do método

displayReplyAllForm(formData)

Apresenta um formulário de resposta que inclui o remetente e todos os destinatários da mensagem selecionada ou o organizador e todos os participantes do compromisso selecionado.

displayReplyAllForm(formData: string | ReplyFormData): void;

Parâmetros

formData

string | Office.ReplyFormData

Uma cadeia de caracteres que contém texto e HTML e que representa o corpo do formulário de resposta. A cadeia está limitada a 32 KB OU um objeto ReplyFormData que contém dados do corpo ou do anexo e uma função de chamada de retorno.

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

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

Modo Outlook aplicável: Participante do Compromisso

Importante:

  • No Outlook na Web e no novo Outlook no Windows, o formulário de resposta é apresentado como um formulário de destaque na vista de 3 colunas e um formulário de pop-up na vista de 2 colunas ou 1 coluna.

  • Se qualquer dos parâmetros da cadeia de caracteres exceder seu limite, displayReplyAllForm gera uma exceção.

  • Quando os anexos são especificados no parâmetro , o formData.attachments Outlook tenta transferir todos os anexos e anexá-los ao formulário de resposta. Se a adição de anexos falhar, será exibido um erro na interface de usuário do formulário. Se isso não for possível, nenhuma mensagem de erro será apresentada.

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

Exemplos

// The following code passes a string to the `displayReplyAllForm` method.
Office.context.mailbox.item.displayReplyAllForm('hello there');
Office.context.mailbox.item.displayReplyAllForm('<b>hello there</b>');

// Reply with an empty body.
Office.context.mailbox.item.displayReplyAllForm({});

// Reply with just a body.
Office.context.mailbox.item.displayReplyAllForm(
{
'htmlBody' : 'hi'
});

// Reply with a body and a file attachment.
Office.context.mailbox.item.displayReplyAllForm(
{
    'htmlBody' : 'hi',
    'attachments' :
    [
        {
        'type' : Office.MailboxEnums.AttachmentType.File,
        'name' : 'squirrel.png',
        'url' : 'http://i.imgur.com/sRgTlGR.jpg'
        }
    ]
});

// Reply with a body and an item attachment.
Office.context.mailbox.item.displayReplyAllForm(
{
    'htmlBody' : 'hi',
    'attachments' :
    [
        {
        'type' : 'item',
        'name' : 'rand',
        'itemId' : Office.context.mailbox.item.itemId
        }
    ]
});

// Reply with a body, file attachment, item attachment, and a callback.
Office.context.mailbox.item.displayReplyAllForm(
{
    'htmlBody' : 'hi',
    'attachments' :
    [
        {
            'type' : Office.MailboxEnums.AttachmentType.File,
            'name' : 'squirrel.png',
            'url' : 'http://i.imgur.com/sRgTlGR.jpg'
        },
        {
            'type' : 'item',
            'name' : 'rand',
            'itemId' : Office.context.mailbox.item.itemId
        }
    ],
    'callback' : function(asyncResult)
    {
        console.log(asyncResult.value);
    }
});
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/55-display-items/display-reply-forms.yaml

Office.context.mailbox.item.displayReplyAllForm("This is a reply ALL with <b>some bold text</b>.");

displayReplyForm(formData)

Exibe um formulário de resposta que inclui o remetente da mensagem selecionada ou o organizador do compromisso selecionado.

displayReplyForm(formData: string | ReplyFormData): void;

Parâmetros

formData

string | Office.ReplyFormData

Uma cadeia de caracteres que contém texto e HTML e que representa o corpo do formulário de resposta. A cadeia está limitada a 32 KB OU um objeto ReplyFormData que contém dados do corpo ou do anexo e uma função de chamada de retorno.

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

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

Modo Outlook aplicável: Leitura da Mensagem

Importante:

  • No Outlook na Web e no novo Outlook no Windows, o formulário de resposta é apresentado como um formulário de destaque na vista de 3 colunas e um formulário de pop-up na vista de 2 colunas ou 1 coluna.

  • Se qualquer dos parâmetros da cadeia de caracteres exceder seu limite, displayReplyForm gera uma exceção.

  • Quando os anexos são especificados no parâmetro , o formData.attachments Outlook tenta transferir todos os anexos e anexá-los ao formulário de resposta. Se a adição de anexos falhar, será exibido um erro na interface de usuário do formulário. Se isso não for possível, nenhuma mensagem de erro será apresentada.

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

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/55-display-items/display-reply-forms.yaml

Office.context.mailbox.item.displayReplyForm("This is a reply with <i>some text in italics</i>.");

...

Office.context.mailbox.item.displayReplyForm({
  htmlBody: "This is a reply with an inline image and an item attachment.<br><img src='cid:dog.jpg'>",
  attachments: [
    { type: "file", url: "https://i.imgur.com/9S36xvA.jpg", name: "dog.jpg", inLine: true },
    { type: "item", itemId: Office.context.mailbox.item.itemId, name: "test_email.msg" }
  ],
  callback: (result) => {
    if (result.status === Office.AsyncResultStatus.Failed) {
      console.error(`Action failed with message ${result.error.message}`);
      return;
    }

    console.log("Created reply with attachments.");
  }
});

getEntities()

Aviso

Essa API foi preterida.

Use regular expression rules instead.

Obtém as entidades encontradas no corpo do item selecionado.

Aviso: os suplementos contextuais do Outlook baseados em entidades foram descontinuados. No entanto, as regras de expressão regulares continuam a ser suportadas. Recomendamos que atualize o suplemento contextual para utilizar regras de expressão regulares como uma solução alternativa. Para obter orientações sobre como implementar estas regras, veja Suplementos contextuais do Outlook.

getEntities(): Entities;

Retornos

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

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

Modo Outlook aplicável: Participante do Compromisso

getEntitiesByType(entityType)

Aviso

Essa API foi preterida.

Use regular expression rules instead.

Obtém uma matriz de todas as entidades do tipo de entidade especificado encontradas no corpo do item selecionado.

Aviso: os suplementos contextuais do Outlook baseados em entidades foram descontinuados. No entanto, as regras de expressão regulares continuam a ser suportadas. Recomendamos que atualize o suplemento contextual para utilizar regras de expressão regulares como uma solução alternativa. Para obter orientações sobre como implementar estas regras, veja Suplementos contextuais do Outlook.

getEntitiesByType(entityType: MailboxEnums.EntityType | string): Array<string | Contact | MeetingSuggestion | PhoneNumber | TaskSuggestion>;

Parâmetros

entityType

Office.MailboxEnums.EntityType | string

Um dos valores de EntityType enumeração.

Retornos

Se o valor transmitido entityType não for um membro válido da EntityType enumeração, o método devolve null. Se nenhuma entidade do tipo especificado estiver presente no corpo do item, o método retorna uma matriz vazia. Caso contrário, o tipo de objetos na matriz retornada depende do tipo de entidade solicitado no parâmetro entityType.

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

Nível mínimo de permissão: restrito

Modo Outlook aplicável: Leitura da Mensagem

getFilteredEntitiesByName(name)

Aviso

Essa API foi preterida.

Use regular expression rules instead.

Devolve entidades conhecidas no item selecionado que transmitem o filtro nomeado definido num ficheiro de manifesto apenas de suplemento.

Aviso: os suplementos contextuais do Outlook baseados em entidades foram descontinuados. No entanto, as regras de expressão regulares continuam a ser suportadas. Recomendamos que atualize o suplemento contextual para utilizar regras de expressão regulares como uma solução alternativa. Para obter orientações sobre como implementar estas regras, veja Suplementos contextuais do Outlook.

getFilteredEntitiesByName(name: string): Array<string | Contact | MeetingSuggestion | PhoneNumber | TaskSuggestion>;

Parâmetros

name

string

O nome do elemento de regra ItemHasKnownEntity que define o filtro a corresponder.

Retornos

As entidades que correspondem à expressão regular definida no elemento de ItemHasKnownEntity regra no ficheiro de manifesto do suplemento com o valor do elemento especificado FilterName . Se não existir nenhum ItemHasKnownEntity elemento no manifesto com um FilterName valor de elemento que corresponda ao name parâmetro , o método devolve null. Se o parâmetro corresponder a name um ItemHasKnownEntity elemento no manifesto, mas não existirem entidades no item atual que correspondam, o método devolve uma matriz vazia.

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

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

Modo Outlook aplicável: Participante do Compromisso

getRegExMatches()

Devolve valores de cadeia no item selecionado que correspondem às expressões regulares definidas num ficheiro de manifesto apenas de suplemento.

getRegExMatches(): any;

Retornos

any

Um objeto que contém matrizes de cadeias que correspondem às expressões regulares definidas no ficheiro de manifesto do suplemento. O nome de cada matriz é igual ao valor correspondente do atributo RegExName da regra correspondente ItemHasRegularExpressionMatch . Para uma ItemHasRegularExpressionMatch regra, tem de ocorrer uma cadeia correspondente na propriedade do item especificado por essa regra. O tipo simples PropertyName define as propriedades compatíveis.

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

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

Modo Outlook aplicável: Participante do Compromisso

Importante:

  • Os suplementos contextuais do Outlook baseados em entidades foram descontinuados. No entanto, as regras de expressão regulares continuam a ser suportadas. Recomendamos que atualize o suplemento contextual para utilizar regras de expressão regulares como uma solução alternativa. Para obter orientações sobre como implementar estas regras, veja Suplementos contextuais do Outlook.

  • Este método é utilizado com a funcionalidade de regras de ativação para suplementos do Outlook, que não é suportada pelo manifesto unificado do Microsoft 365.

  • Se especificar uma ItemHasRegularExpressionMatch regra na propriedade body de um item, a expressão regular deverá filtrar ainda mais o corpo e não deve tentar devolver todo o corpo do item. A utilização de uma expressão regular, como .* para obter todo o corpo de um item, nem sempre devolve os resultados esperados. Em vez disso, use o método Body.getAsync para recuperar todo o corpo.

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

Exemplos

// Consider an add-in manifest has the following `Rule` element:
//<Rule xsi:type="RuleCollection" Mode="And">
//  <Rule xsi:type="ItemIs" FormType="Read" ItemType="Message" />
//  <Rule xsi:type="RuleCollection" Mode="Or">
//    <Rule xsi:type="ItemHasRegularExpressionMatch" RegExName="fruits" RegExValue="apple|banana|coconut" PropertyName="BodyAsPlaintext" IgnoreCase="true" />
//    <Rule xsi:type="ItemHasRegularExpressionMatch" RegExName="veggies" RegExValue="tomato|onion|spinach|broccoli" PropertyName="BodyAsPlaintext" IgnoreCase="true" />
//  </Rule>
//</Rule>

// The object returned from `getRegExMatches` would have two properties: `fruits` and `veggies`.
//{
//'fruits': ['apple','banana','Banana','coconut'],
//'veggies': ['tomato','onion','spinach','broccoli']
//}

// The following example shows how to access the array of
// matches for the regular expression rule elements `fruits`
// and `veggies`, which are specified in the manifest.
const allMatches = Office.context.mailbox.item.getRegExMatches();
const fruits = allMatches.fruits;
const veggies = allMatches.veggies;
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/75-regex-matches/contextual.yaml

// This API only works when you click on the highlighted word "ScriptLab".
console.log(Office.context.mailbox.item.getRegExMatches());

getRegExMatchesByName(name)

Devolve valores de cadeia no item selecionado que correspondem à expressão regular nomeada definida num ficheiro de manifesto apenas de suplemento.

getRegExMatchesByName(name: string): string[];

Parâmetros

name

string

O nome do elemento de regra ItemHasRegularExpressionMatch que define o filtro a corresponder.

Retornos

string[]

Uma matriz que contém as cadeias que correspondem à expressão regular definida no elemento de ItemHasRegularExpressionMatch regra no ficheiro de manifesto do suplemento, com o valor do elemento especificado RegExName .

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

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

Modo Outlook aplicável: Participante do Compromisso

Importante:

  • Os suplementos contextuais do Outlook baseados em entidades foram descontinuados. No entanto, as regras de expressão regulares continuam a ser suportadas. Recomendamos que atualize o suplemento contextual para utilizar regras de expressão regulares como uma solução alternativa. Para obter orientações sobre como implementar estas regras, veja Suplementos contextuais do Outlook.

  • Este método é utilizado com a funcionalidade de regras de ativação para suplementos do Outlook, que não é suportada pelo manifesto unificado do Microsoft 365.

  • Se especificar uma ItemHasRegularExpressionMatch regra na propriedade body de um item, a expressão regular deverá filtrar ainda mais o corpo e não deve tentar devolver todo o corpo do item. A utilização de uma expressão regular, como .* para obter todo o corpo de um item, nem sempre devolve os resultados esperados. Em vez disso, use o método Body.getAsync para recuperar todo o corpo.

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

Exemplos

// Consider an add-in manifest has the following `Rule` element:
//<Rule xsi:type="RuleCollection" Mode="And">
//  <Rule xsi:type="ItemIs" FormType="Read" ItemType="Message" />
//  <Rule xsi:type="RuleCollection" Mode="Or">
//    <Rule xsi:type="ItemHasRegularExpressionMatch" RegExName="fruits" RegExValue="apple|banana|coconut" PropertyName="BodyAsPlaintext" IgnoreCase="true" />
//    <Rule xsi:type="ItemHasRegularExpressionMatch" RegExName="veggies" RegExValue="tomato|onion|spinach|broccoli" PropertyName="BodyAsPlaintext" IgnoreCase="true" />
//  </Rule>
//</Rule>

// The object returned from `getRegExMatches` would have two properties: `fruits` and `veggies`.
//{
//'fruits': ['apple','banana','Banana','coconut'],
//'veggies': ['tomato','onion','spinach','broccoli']
//}

const fruits = Office.context.mailbox.item.getRegExMatchesByName("fruits");
const veggies = Office.context.mailbox.item.getRegExMatchesByName("veggies");
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/75-regex-matches/contextual.yaml

// This API only works when you click on the highlighted word "ScriptLab".
console.log(Office.context.mailbox.item.getRegExMatchesByName("sampleRegexName"));

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: Leitura da Mensagem

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.");
});