Office.AppointmentRead interface
O modo de participante de compromisso do Office.context.mailbox.item.
Importante: este é um objeto interno do Outlook, não exposto diretamente por meio de interfaces existentes. Você deve tratar isso como um modo de Office.context.mailbox.item
. Para obter mais informações, consulte a página Modelo de Objeto .
Interfaces pai:
- Extends
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. |
date |
Obtém a data e a hora em que um item foi criado. |
date |
Obtém a data e a hora em que um item foi alterado pela última vez. |
end | Obtém a data e a hora que o compromisso deve terminar. A Ao usar o método |
item |
Obtém a classe de item do Exchange Web Services do compromisso selecionado. Retorna |
item |
Obtém o identificador de item do Exchange Web Services para o item atual. A propriedade Observação: o identificador retornado pela |
item |
Obtém o tipo de item que representa uma instância. A |
location | Obtém o local de um compromisso. A propriedade |
normalized |
Obtém o assunto de um item, com todos os prefixos removidos (incluindo RE: e FWD:). A |
optional |
Fornece acesso aos participantes opcionais de um evento. O tipo de objeto e o nível de acesso dependem do modo do item atual. A
|
organizer | Obtém as propriedades de email do organizador da reunião. |
required |
Fornece acesso aos participantes obrigatórios de um evento. O tipo de objeto e o nível de acesso dependem do modo do item atual. A
|
start | Obtém a data e a hora que o compromisso deve começar. A |
subject | Obtém a descrição que aparece no campo assunto de um item. A propriedade A propriedade |
Métodos
display |
Exibe 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. |
display |
Exibe um formulário de resposta que inclui o remetente da mensagem selecionada ou o organizador do compromisso selecionado. |
get |
Obtém as entidades encontradas no corpo do item selecionado. |
get |
Obtém uma matriz de todas as entidades do tipo de entidade especificado encontradas no corpo do item selecionado. |
get |
Retorna entidades conhecidas no item selecionado que passa o filtro nomeado definido em um arquivo de manifesto XML. |
get |
Retorna valores de cadeia de caracteres no item selecionado que correspondem às expressões regulares definidas em um arquivo de manifesto XML. |
get |
Retorna valores de cadeia de caracteres no item selecionado que correspondem à expressão regular nomeada definida em um arquivo de manifesto XML. |
load |
Carrega de forma assíncrona as propriedades personalizadas para esse suplemento no item selecionado. As propriedades personalizadas são armazenadas como pares de valor-chave por aplicativo, por item. Esse método retorna um objeto CustomProperties no retorno de chamada, que fornece métodos para acessar as propriedades personalizadas específicas do item atual e do suplemento atual. As propriedades personalizadas não são criptografadas no item, portanto, isso não deve ser usado como armazenamento seguro. As propriedades personalizadas são fornecidas como um objeto |
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: item de leitura
Modo Outlook aplicável: Participante de compromisso
Observação: determinados tipos de arquivos são bloqueados pelo Outlook devido a possíveis problemas de segurança e, portanto, não são retornados. Para obter mais informações, confira 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: item de leitura
Modo Outlook aplicável: Participante de compromisso
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"
}
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: item de leitura
Modo Outlook aplicável: Participante de compromisso
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: item de leitura
Modo Outlook aplicável: Participante de compromisso
Importante: essa propriedade não tem suporte no Outlook no Android ou no iOS. Para obter mais informações sobre APIs com suporte no Outlook mobile, consulte APIs JavaScript do Outlook com suporte 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 a hora que o compromisso deve terminar.
A end
propriedade é um Date
objeto expresso como um valor de data e hora do UTC (Tempo Universal Coordenado). Você pode usar o convertToLocalClientTime
método para converter o valor da end
propriedade na data e hora local 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: item de leitura
Modo Outlook aplicável: Participante de compromisso
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}`);
itemClass
Obtém a classe de item do Exchange Web Services do compromisso selecionado.
Retorna IPM.Appointment
para compromissos não recorrentes e IPM.Appointment.Occurrence
para compromissos recorrentes.
itemClass: string;
Valor da propriedade
string
Comentários
Nível mínimo de permissão: item de leitura
Modo Outlook aplicável: Participante de compromisso
Importante: você pode criar classes personalizadas que estendem uma classe de item padrão. Por exemplo, IPM.Appointment.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 de item do Exchange Web Services para o item atual.
A propriedade itemId
não está disponível no modo de redação. Se for obrigatório o identificador de um item, pode ser usado o método 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.
Observação: o identificador retornado pela itemId
propriedade é o mesmo que o identificador de item do Exchange Web Services. A propriedade itemId
não é idêntica à ID de Entrada do Outlook ou a ID usada pela API REST do Outlook. Antes de fazer chamadas de API REST usando esse valor, ela deve ser convertida usando Office.context.mailbox.convertToRestId
. Para obter mais detalhes, confira Usar as APIs REST do Outlook de um suplemento do Outlook.
itemId: string;
Valor da propriedade
string
Comentários
Nível mínimo de permissão: item de leitura
Modo Outlook aplicável: Participante de compromisso
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 retorna 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
Office.MailboxEnums.ItemType | string
Comentários
Nível mínimo de permissão: item de leitura
Modo Outlook aplicável: Participante de compromisso
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 o local de um compromisso.
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: item de leitura
Modo Outlook aplicável: Participante de compromisso
Exemplos
const location = Office.context.mailbox.item.location;
console.log("location: " + location);
// 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 email. 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: item de leitura
Modo Outlook aplicável: Participante de compromisso
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}`);
optionalAttendees
Fornece acesso aos participantes opcionais de um evento. O tipo de objeto e o nível de acesso dependem do modo do item atual.
A optionalAttendees
propriedade retorna uma matriz que contém um objeto EmailAddressDetails para cada participante opcional na reunião. O número máximo de participantes retornados varia de acordo com o cliente do Outlook.
Windows: 500 participantes
Android, interface do usuário clássica do Mac, iOS: 100 participantes
Nova interface do usuário do Mac, navegador da Web: sem limite
optionalAttendees: EmailAddressDetails[];
Valor da propriedade
Comentários
Nível mínimo de permissão: item de leitura
Modo Outlook aplicável: Participante de compromisso
Exemplos
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-optional-attendees-appointment-attendee.yaml
const apptOptionalAttendees = Office.context.mailbox.item.optionalAttendees;
console.log("Optional attendees:");
for (let i = 0; i < apptOptionalAttendees.length; i++) {
console.log(
apptOptionalAttendees[i].displayName +
" (" +
apptOptionalAttendees[i].emailAddress +
") - response: " +
apptOptionalAttendees[i].appointmentResponse
);
}
organizer
Obtém as propriedades de email do organizador da reunião.
organizer: EmailAddressDetails;
Valor da propriedade
Comentários
Nível mínimo de permissão: item de leitura
Modo Outlook aplicável: Participante de compromisso
Exemplos
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-organizer-appointment-attendee.yaml
const apptOrganizer = Office.context.mailbox.item.organizer;
console.log("Organizer: " + apptOrganizer.displayName + " (" + apptOrganizer.emailAddress + ")");
requiredAttendees
Fornece acesso aos participantes obrigatórios de um evento. O tipo de objeto e o nível de acesso dependem do modo do item atual.
A requiredAttendees
propriedade retorna uma matriz que contém um objeto EmailAddressDetails para cada participante necessário para a reunião. O número máximo de participantes retornados varia de acordo com o cliente do Outlook.
Windows: 500 participantes
Android, interface do usuário clássica do Mac, iOS: 100 participantes
Nova interface do usuário do Mac, navegador da Web: sem limite
requiredAttendees: EmailAddressDetails[];
Valor da propriedade
Comentários
Nível mínimo de permissão: item de leitura
Modo Outlook aplicável: Participante de compromisso
Exemplos
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-required-attendees-appointment-attendee.yaml
const apptRequiredAttendees = Office.context.mailbox.item.requiredAttendees;
console.log("Required attendees:");
for (let i = 0; i < apptRequiredAttendees.length; i++) {
console.log(
apptRequiredAttendees[i].displayName +
" (" +
apptRequiredAttendees[i].emailAddress +
") - response: " +
apptRequiredAttendees[i].appointmentResponse
);
}
start
Obtém a data e a hora que o compromisso deve começar.
A start
propriedade é um Date
objeto expresso como um valor de data e hora do UTC (Tempo Universal Coordenado). Você pode usar o convertToLocalClientTime
método para converter o valor na data e hora local do cliente.
start: Date;
Valor da propriedade
Date
Comentários
Nível mínimo de permissão: item de leitura
Modo Outlook aplicável: Participante de compromisso
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. Use a normalizedSubject
propriedade para obter o assunto menos todos os prefixos principais, como RE: e FW:.
subject: string;
Valor da propriedade
string
Comentários
Nível mínimo de permissão: item de leitura
Modo Outlook aplicável: Participante de compromisso
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}`);
Detalhes do método
displayReplyAllForm(formData)
Exibe 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 de caracteres é limitada a 32 KB OU um objeto ReplyFormData que contém dados de corpo ou anexo e uma função de retorno de chamada.
Retornos
void
Comentários
[ Conjunto de API: Caixa de correio 1.1 ]
Nível mínimo de permissão: item de leitura
Modo Outlook aplicável: Participante de compromisso
Importante:
Em Outlook na Web, o formulário de resposta é exibido como um formulário pop-out na exibição de 3 colunas e um formulário pop-up na exibição 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 baixar 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.Esse método não tem suporte no Outlook no Android ou no iOS. Para obter mais informações sobre APIs com suporte no Outlook mobile, consulte APIs JavaScript do Outlook com suporte 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 de caracteres é limitada a 32 KB OU um objeto ReplyFormData que contém dados de corpo ou anexo e uma função de retorno de chamada.
Retornos
void
Comentários
[ Conjunto de API: Caixa de correio 1.1 ]
Nível mínimo de permissão: item de leitura
Modo Outlook aplicável: Participante de compromisso
Importante:
Em Outlook na Web, o formulário de resposta é exibido como um formulário pop-out na exibição de 3 colunas e um formulário pop-up na exibição 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 baixar 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.Esse método não tem suporte no Outlook no Android ou no iOS. Para obter mais informações sobre APIs com suporte no Outlook mobile, consulte APIs JavaScript do Outlook com suporte no Outlook em dispositivos móveis.
Exemplos
// The following code passes a string to the `displayReplyForm` method.
Office.context.mailbox.item.displayReplyForm('hello there');
Office.context.mailbox.item.displayReplyForm('<b>hello there</b>');
// Reply with an empty body.
Office.context.mailbox.item.displayReplyForm({});
// Reply with just a body.
Office.context.mailbox.item.displayReplyForm(
{
'htmlBody' : 'hi'
});
// Reply with a body and a file attachment.
Office.context.mailbox.item.displayReplyForm(
{
'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.displayReplyForm(
{
'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.displayReplyForm(
{
'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.displayReplyForm("This is a reply with <i>some text in italics</i>.");
...
Office.context.mailbox.item.displayReplyForm({
htmlBody: "This is a reply with a couple of attachments - an inline image and an item<br><img src='cid:dog.jpg'>",
attachments: [
{ type: "file", url: "http://i.imgur.com/9S36xvA.jpg", name: "dog.jpg", isInline: true },
{ type: "item", itemId: Office.context.mailbox.item.itemId, name: "test_email.msg" }
],
options: { asyncContext: null },
callback: function(result) {
if (result.status !== Office.AsyncResultStatus.Succeeded) {
console.error(`Action failed with message ${result.error.message}`);
}
}
});
getEntities()
Obtém as entidades encontradas no corpo do item selecionado.
getEntities(): Entities;
Retornos
Comentários
[ Conjunto de API: Caixa de correio 1.1 ]
Nível mínimo de permissão: item de leitura
Modo Outlook aplicável: Participante de compromisso
Importante:
Os suplementos contextuais do Outlook baseados em entidade, incluindo o
getEntities
método, serão desativados no segundo trimestre de 2024. O trabalho para aposentar esse método começará em maio e continuará até o final de junho. Após junho, os suplementos contextuais não poderão mais detectar entidades em itens de email para executar tarefas neles. As regras de expressão regular continuarão a ser suportadas depois que os suplementos contextuais baseados em entidade forem retirados. Recomendamos atualizar seu suplemento contextual para usar regras de expressão regulares como uma solução alternativa. Para obter diretrizes sobre como implementar essas regras, consulte Usar regras regulares de ativação de expressão para mostrar um suplemento do Outlook. Para saber mais sobre a aposentadoria de suplementos contextuais do Outlook baseados em entidade, confira Aposentadoria de suplementos contextuais do Outlook baseados em entidade.Esse método não tem suporte no Outlook no Android ou no iOS. Para obter mais informações sobre APIs com suporte no Outlook mobile, consulte APIs JavaScript do Outlook com suporte no Outlook em dispositivos móveis.
Exemplos
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/75-entities-and-regex-matches/basic-entities.yaml
const entities = Office.context.mailbox.item.getEntities();
let entityTypesFound = 0;
if (entities.addresses.length > 0) {
console.warn("physical addresses: ");
console.log(entities.addresses);
entityTypesFound++;
}
if (entities.contacts.length > 0) {
console.warn("contacts: ");
entities.contacts.forEach(function (contact) { console.log(contact.personName); })
entityTypesFound++;
}
if (entities.emailAddresses.length > 0) {
console.warn("email addresses: ");
console.log(entities.emailAddresses);
entityTypesFound++;
}
if (entities.meetingSuggestions.length > 0) {
console.warn("meetings suggestions: ");
entities.meetingSuggestions.forEach(function (meetingSuggestion) { console.log(meetingSuggestion.meetingString); })
entityTypesFound++;
}
if (entities.phoneNumbers.length > 0) {
console.warn("phone numbers: ");
entities.phoneNumbers.forEach(function (phoneNumber) { console.log(phoneNumber.originalPhoneString); })
entityTypesFound++;
}
if (entities.taskSuggestions.length > 0) {
console.warn("task suggestions: ");
entities.taskSuggestions.forEach(function (taskSuggestion) { console.log(taskSuggestion.taskString); })
entityTypesFound++;
}
if (entities.urls.length > 0) {
console.warn("URLs: ");
console.log(entities.urls);
entityTypesFound++;
}
if (entityTypesFound == 0)
{
console.log("No entities found on this item.");
}
getEntitiesByType(entityType)
Obtém uma matriz de todas as entidades do tipo de entidade especificado encontradas no corpo do item selecionado.
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.
Embora o nível de permissão mínimo para usar esse método seja restrito, alguns tipos de entidade exigem o acesso do item de leitura , conforme especificado na tabela a seguir.
Valor do entityType | Tipo de objetos na matriz retornada | Nível de permissão necessário |
---|---|---|
Endereço | Cadeia de caracteres | Restricted |
Contato | Contato | ReadItem |
EmailAddress | Cadeia de caracteres | ReadItem |
MeetingSuggestion | MeetingSuggestion | ReadItem |
PhoneNumber | PhoneNumber | Restricted |
TaskSuggestion | TaskSuggestion | ReadItem |
URL | Cadeia de caracteres | Restricted |
Retornos
Array<string | Office.Contact | Office.MeetingSuggestion | Office.PhoneNumber | Office.TaskSuggestion>
Se o valor passado em entityType
não for um membro válido da enumeração EntityType
, o método retorna nulo. 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: Participante de compromisso
Importante:
Os suplementos contextuais do Outlook baseados em entidade, incluindo o
getEntitiesByType
método, serão desativados no segundo trimestre de 2024. O trabalho para aposentar esse método começará em maio e continuará até o final de junho. Após junho, os suplementos contextuais não poderão mais detectar entidades em itens de email para executar tarefas neles. As regras de expressão regular continuarão a ser suportadas depois que os suplementos contextuais baseados em entidade forem retirados. Recomendamos atualizar seu suplemento contextual para usar regras de expressão regulares como uma solução alternativa. Para obter diretrizes sobre como implementar essas regras, consulte Usar regras regulares de ativação de expressão para mostrar um suplemento do Outlook. Para saber mais sobre a aposentadoria de suplementos contextuais do Outlook baseados em entidade, confira Aposentadoria de suplementos contextuais do Outlook baseados em entidade.Esse método não tem suporte no Outlook no Android ou no iOS. Para obter mais informações sobre APIs com suporte no Outlook mobile, consulte APIs JavaScript do Outlook com suporte no Outlook em dispositivos móveis.
Exemplos
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/75-entities-and-regex-matches/basic-entities.yaml
console.log(Office.context.mailbox.item.getEntitiesByType(Office.MailboxEnums.EntityType.Address));
getFilteredEntitiesByName(name)
Retorna entidades conhecidas no item selecionado que passa o filtro nomeado definido em um arquivo de manifesto XML.
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
Array<string | Office.Contact | Office.MeetingSuggestion | Office.PhoneNumber | Office.TaskSuggestion>
As entidades que correspondem à expressão regular definida no ItemHasKnownEntity
elemento regra no arquivo XML de manifesto com o valor do FilterName
elemento especificado. Se não houver nenhum ItemHasKnownEntity
elemento no manifesto com um FilterName
valor de elemento que corresponda ao name
parâmetro, o método retornará null
. Se o name
parâmetro corresponder a um ItemHasKnownEntity
elemento no manifesto, mas não houver entidades no item atual que correspondam, o método retornará uma matriz vazia.
Comentários
[ Conjunto de API: Caixa de correio 1.1 ]
Nível mínimo de permissão: item de leitura
Modo Outlook aplicável: Participante de compromisso
Importante:
Os suplementos contextuais do Outlook baseados em entidade, incluindo o
getFilteredEntitiesByName
método, serão desativados no segundo trimestre de 2024. O trabalho para aposentar esse método começará em maio e continuará até o final de junho. Após junho, os suplementos contextuais não poderão mais detectar entidades em itens de email para executar tarefas neles. As regras de expressão regular continuarão a ser suportadas depois que os suplementos contextuais baseados em entidade forem retirados. Recomendamos atualizar seu suplemento contextual para usar regras de expressão regulares como uma solução alternativa. Para obter diretrizes sobre como implementar essas regras, consulte Usar regras regulares de ativação de expressão para mostrar um suplemento do Outlook. Para saber mais sobre a aposentadoria de suplementos contextuais do Outlook baseados em entidade, confira Aposentadoria de suplementos contextuais do Outlook baseados em entidade.Esse método é usado com o recurso de regras de ativação para suplementos do Outlook, que não é compatível com o manifesto unificado do Microsoft 365.
Esse método não tem suporte no Outlook no Android ou no iOS. Para obter mais informações sobre APIs com suporte no Outlook mobile, consulte APIs JavaScript do Outlook com suporte no Outlook em dispositivos móveis.
Exemplos
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/75-entities-and-regex-matches/contextual.yaml
// This API would only work when you click on highlighted physical address that has the word "Way" in it.
console.log(Office.context.mailbox.item.getFilteredEntitiesByName("sampleFilterName"));
getRegExMatches()
Retorna valores de cadeia de caracteres no item selecionado que correspondem às expressões regulares definidas em um arquivo de manifesto XML.
getRegExMatches(): any;
Retornos
any
Um objeto que contém matrizes de cadeias de caracteres que correspondem às expressões regulares definidas no arquivo XML do manifesto. O nome de cada matriz é igual ao valor correspondente do atributo RegExName da regra correspondente ItemHasRegularExpressionMatch
ou do FilterName
atributo da regra correspondente ItemHasKnownEntity
. Para uma ItemHasRegularExpressionMatch
regra, uma cadeia de caracteres correspondente deve ocorrer 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: item de leitura
Modo Outlook aplicável: Participante de compromisso
Importante:
Os suplementos contextuais do Outlook baseados em entidade serão desativados no segundo trimestre de 2024. Depois de aposentados, os suplementos contextuais não poderão mais detectar entidades em itens de email para executar tarefas neles. As regras de expressão regular continuarão a ser suportadas depois que os suplementos contextuais baseados em entidade forem retirados. Recomendamos atualizar seu suplemento contextual para usar regras de expressão regulares como uma solução alternativa. Para obter diretrizes sobre como implementar essas regras, consulte Usar regras regulares de ativação de expressão para mostrar um suplemento do Outlook. Para saber mais sobre a aposentadoria de suplementos contextuais baseados em entidade, confira Aposentadoria de suplementos contextuais do Outlook baseados em entidade.
Esse método é usado com o recurso de regras de ativação para suplementos do Outlook, que não é compatível com o manifesto unificado do Microsoft 365.
Se você especificar uma
ItemHasRegularExpressionMatch
regra na propriedade do corpo de um item, a expressão regular deverá filtrar ainda mais o corpo e não deve tentar retornar todo o corpo do item. Usar uma expressão regular como.*
para obter todo o corpo de um item nem sempre retorna os resultados esperados. Em vez disso, use o métodoBody.getAsync
para recuperar todo o corpo.Esse método não tem suporte no Outlook no Android ou no iOS. Para obter mais informações sobre APIs com suporte no Outlook mobile, consulte APIs JavaScript do Outlook com suporte 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-entities-and-regex-matches/contextual.yaml
// This API would only work when you click on highlighted word "ScriptLab".
console.log(Office.context.mailbox.item.getRegExMatches());
getRegExMatchesByName(name)
Retorna valores de cadeia de caracteres no item selecionado que correspondem à expressão regular nomeada definida em um arquivo de manifesto XML.
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 de caracteres que correspondem à expressão regular definida no ItemHasRegularExpressionMatch
elemento de regra no arquivo XML do manifesto, com o valor do RegExName
elemento especificado.
Comentários
[ Conjunto de API: Caixa de correio 1.1 ]
Nível mínimo de permissão: item de leitura
Modo Outlook aplicável: Participante de compromisso
Importante:
Os suplementos contextuais do Outlook baseados em entidade serão desativados no segundo trimestre de 2024. Depois de aposentados, os suplementos contextuais não poderão mais detectar entidades em itens de email para executar tarefas neles. As regras de expressão regular continuarão a ser suportadas depois que os suplementos contextuais baseados em entidade forem retirados. Recomendamos atualizar seu suplemento contextual para usar regras de expressão regulares como uma solução alternativa. Para obter diretrizes sobre como implementar essas regras, consulte Usar regras regulares de ativação de expressão para mostrar um suplemento do Outlook. Para saber mais sobre a aposentadoria de suplementos contextuais baseados em entidade, confira Aposentadoria de suplementos contextuais do Outlook baseados em entidade.
Esse método é usado com o recurso de regras de ativação para suplementos do Outlook, que não é compatível com o manifesto unificado do Microsoft 365.
Se você especificar uma
ItemHasRegularExpressionMatch
regra na propriedade do corpo de um item, a expressão regular deverá filtrar ainda mais o corpo e não deve tentar retornar todo o corpo do item. Usar uma expressão regular como.*
para obter todo o corpo de um item nem sempre retorna os resultados esperados. Em vez disso, use o métodoBody.getAsync
para recuperar todo o corpo.Esse método não tem suporte no Outlook no Android ou no iOS. Para obter mais informações sobre APIs com suporte no Outlook mobile, consulte APIs JavaScript do Outlook com suporte 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-entities-and-regex-matches/contextual.yaml
// This API would only work when you click on 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 de valor-chave por aplicativo, por item. Esse método retorna um objeto CustomProperties no retorno de chamada, que fornece métodos para acessar as propriedades personalizadas específicas do item atual e do suplemento atual. As propriedades personalizadas não são criptografadas no item, portanto, isso não deve ser usado como armazenamento seguro.
As propriedades personalizadas são fornecidas como um objeto CustomProperties
na propriedade asyncResult.value
. Esse objeto pode ser usado para obter, definir, salvar e remover propriedades personalizadas do item de email.
loadCustomPropertiesAsync(callback: (asyncResult: Office.AsyncResult<CustomProperties>) => void, userContext?: any): void;
Parâmetros
- callback
-
(asyncResult: Office.AsyncResult<Office.CustomProperties>) => void
Quando o método é concluído, a função passada 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 propriedades personalizadas, consulte Obter e definir metadados de suplemento para um suplemento do Outlook.
Nível mínimo de permissão: item de leitura
Modo Outlook aplicável: Participante de compromisso
Exemplos
// The following example shows how to use the loadCustomPropertiesAsync method
// to asynchronously load custom properties that are specific to the current item.
// The example also shows how to use the saveAsync method to save these properties
// back to the server. After loading the custom properties, the example uses the
// get method to read the custom property myProp, the set method to write the
// custom property otherProp, and then finally calls the saveAsync method to save
// the custom properties.
Office.initialize = function () {
// Checks for the DOM to load using the jQuery ready method.
$(document).ready(function () {
// After the DOM is loaded, add-in-specific code can run.
const mailbox = Office.context.mailbox;
mailbox.item.loadCustomPropertiesAsync(customPropsCallback);
});
};
function customPropsCallback(asyncResult) {
const customProps = asyncResult.value;
const myProp = customProps.get("myProp");
customProps.set("otherProp", "value");
customProps.saveAsync(saveCallback);
}
function saveCallback(asyncResult) {
}
// 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(function (result) {
if (result.status === Office.AsyncResultStatus.Succeeded) {
console.log("Loaded following custom properties:");
customProps = result.value;
const dataKey = Object.keys(customProps)[0];
const data = customProps[dataKey];
for (let propertyName in data)
{
let propertyValue = data[propertyName];
console.log(`${propertyName}: ${propertyValue}`);
}
}
else {
console.error(`loadCustomPropertiesAsync failed with message ${result.error.message}`);
}
});
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de