Share via


Office.AppointmentCompose interface

O modo organizador de compromissos 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

body

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

end

Obtém ou define a data e a hora em que o compromisso deve terminar.

A end propriedade é um objeto Time expresso como um valor de data e hora de TEMPO Universal Coordenado (UTC). 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.

Importante: no cliente Windows, você não pode usar essa propriedade para atualizar o fim de uma recorrência.

itemType

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

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

location

Obtém ou define o local de um compromisso. A location propriedade retorna um objeto Location que fornece métodos que são usados para obter e definir o local do compromisso.

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 propriedade optionalAttendees retorna um objeto Recipients que fornece métodos para obter ou atualizar os participantes opcionais de uma reunião. No entanto, dependendo do cliente/plataforma (ou seja, Windows, Mac etc.), os limites podem se aplicar a quantos destinatários você pode obter ou atualizar. Consulte o objeto Destinatários para obter mais detalhes.

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 propriedade requiredAttendees retorna um objeto Recipients que fornece métodos para obter ou atualizar os participantes obrigatórios de uma reunião. No entanto, dependendo do cliente/plataforma (ou seja, Windows, Mac etc.), os limites podem se aplicar a quantos destinatários você pode obter ou atualizar. Consulte o objeto Destinatários para obter mais detalhes.

start

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

A start propriedade é um objeto Time expresso como um valor de data e hora de TEMPO Universal Coordenado (UTC). Você pode usar o convertToLocalClientTime método para converter o valor na data e hora local do cliente.

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

Importante: no cliente Windows, você não pode usar essa propriedade para atualizar o início de uma recorrência.

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.

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.

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

Importante: em builds recentes do Outlook no Windows, foi introduzido um bug que acrescenta incorretamente um Authorization: Bearer cabeçalho a essa ação (seja usando essa API ou a interface do usuário do Outlook). Para contornar esse problema, você pode tentar usar a API introduzida com o addFileAttachmentFromBase64 conjunto de requisitos 1.8.

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.

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

Importante: em builds recentes do Outlook no Windows, foi introduzido um bug que acrescenta incorretamente um Authorization: Bearer cabeçalho a essa ação (seja usando essa API ou a interface do usuário do Outlook). Para contornar esse problema, você pode tentar usar a API introduzida com o addFileAttachmentFromBase64 conjunto de requisitos 1.8.

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 você especificar uma função de retorno de chamada, o método será chamado com um parâmetro, asyncResult, que contém o identificador de anexo ou um código que indica qualquer erro ocorrido ao anexar o item. Você pode usar o options parâmetro para passar informações de estado para a função de retorno de chamada, se necessário.

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

Se o Suplemento do Office estiver em execução no Outlook na Web, o método addItemAttachmentAsync pode anexar itens que não sejam aquele que você está editando; no entanto, isso não tem suporte 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 você especificar uma função de retorno de chamada, o método será chamado com um parâmetro, asyncResult, que contém o identificador de anexo ou um código que indica qualquer erro ocorrido ao anexar o item. Você pode usar o options parâmetro para passar informações de estado para a função de retorno de chamada, se necessário.

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

Se o Suplemento do Office estiver em execução no Outlook na Web, o método addItemAttachmentAsync pode anexar itens que não sejam aquele que você está editando; no entanto, isso não tem suporte 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 no assunto, o método retornará uma cadeia de caracteres 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 acessar os dados selecionados da função de retorno de chamada, chame asyncResult.value.data. Para acessar a source propriedade da qual a seleção vem, 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 no assunto, o método retornará uma cadeia de caracteres 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 acessar os dados selecionados da função de retorno de chamada, chame asyncResult.value.data. Para acessar a source propriedade da qual a seleção vem, 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 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.

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. Em Outlook na Web e em dispositivos móveis, o identificador de anexo é válido somente na mesma sessão. Uma sessão acaba quando o usuário fecha o aplicativo ou se o usuário começa a compor um formulário embutido e, posteriormente, aparece o formulário para continuar em uma 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. Em Outlook na Web e em dispositivos móveis, o identificador de anexo é válido somente na mesma sessão. Uma sessão acaba quando o usuário fecha o aplicativo ou se o usuário começa a compor um formulário embutido e, posteriormente, aparece o formulário para continuar em uma 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 de caracteres especificada no local do cursor no assunto ou no corpo do item ou, se o texto for selecionado no editor, ele substituirá o texto selecionado. Se o cursor não estiver no corpo ou no campo do assunto, um erro será retornado. 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 de caracteres especificada no local do cursor no assunto ou no corpo do item ou, se o texto for selecionado no editor, ele substituirá o texto selecionado. Se o cursor não estiver no corpo ou no campo do assunto, um erro será retornado. Após a inserção, o cursor é colocado no final do conteúdo inserido.

Detalhes da propriedade

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: Organizador de Compromissos

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 an object that is passed as the result parameter to the callback function.
{
    "value": "TEXT of whole body (including threads below)",
    "status": "succeeded",
    "asyncContext": "This is passed to the callback"
}

end

Obtém ou define a data e a hora em que o compromisso deve terminar.

A end propriedade é um objeto Time expresso como um valor de data e hora de TEMPO Universal Coordenado (UTC). 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.

Importante: no cliente Windows, você não pode usar essa propriedade para atualizar o fim de uma recorrência.

end: Time;

Valor da propriedade

Comentários

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

Modo Outlook aplicável: Organizador de Compromissos

Exemplos

// The following example sets the end time of an appointment in compose mode by
// using the `setAsync` method of the `Time` object.
const endTime = new Date("3/14/2015");
const options = {
    // Pass information that can be used in the callback.
    asyncContext: {verb: "Set"}
};
Office.context.mailbox.item.end.setAsync(endTime, options, function(result) {
    if (result.error) {
        console.debug(result.error);
    } else {
        // Access the asyncContext that was passed to the setAsync method.
        console.debug("End Time " + result.asyncContext.verb);
    }
});
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-set-end-appointment-organizer.yaml

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

...

Office.context.mailbox.item.start.getAsync((result) => {
  if (result.status !== Office.AsyncResultStatus.Succeeded) {
    console.error(`Get start date failed with message ${result.error.message}`);
    return;
  }

  const end = result.value; // Set end to current start date and time.
  end.setDate(end.getDate() + 1); // Set end as 1 day later than start date.
  Office.context.mailbox.item.end.setAsync(end, (result) => {
    if (result.status !== Office.AsyncResultStatus.Succeeded) {
      console.error(`Set end date failed with message ${result.error.message}`);
      return;
    }
    console.log(`Successfully set end date and time to ${end}`);
  });
});

itemType

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

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

itemType: MailboxEnums.ItemType | string;

Valor da propriedade

Comentários

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

Modo Outlook aplicável: Organizador de Compromissos

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 ou define o local de um compromisso. A location propriedade retorna um objeto Location que fornece métodos que são usados para obter e definir o local do compromisso.

location: Location;

Valor da propriedade

Comentários

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

Modo Outlook aplicável: Organizador de Compromissos

Exemplos

const userContext = { value : 1 };
Office.context.mailbox.item.location.getAsync( { context: userContext}, callback);

function callback(asyncResult) {
    const context = asyncResult.context;
    const location = asyncResult.value;
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-set-location-appointment-organizer.yaml

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

...

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

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 propriedade optionalAttendees retorna um objeto Recipients que fornece métodos para obter ou atualizar os participantes opcionais de uma reunião. No entanto, dependendo do cliente/plataforma (ou seja, Windows, Mac etc.), os limites podem se aplicar a quantos destinatários você pode obter ou atualizar. Consulte o objeto Destinatários para obter mais detalhes.

optionalAttendees: Recipients;

Valor da propriedade

Comentários

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

Modo Outlook aplicável: Organizador de Compromissos

Exemplos

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

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

Office.context.mailbox.item.optionalAttendees.getAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const apptOptionalAttendees = asyncResult.value;
    for (let i = 0; i < apptOptionalAttendees.length; i++) {
      console.log(
        "Optional attendees: " +
          apptOptionalAttendees[i].displayName +
          " (" +
          apptOptionalAttendees[i].emailAddress +
          ") - response: " +
          apptOptionalAttendees[i].appointmentResponse
      );
    }
  } else {
    console.error(asyncResult.error);
  }
});

...

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

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 propriedade requiredAttendees retorna um objeto Recipients que fornece métodos para obter ou atualizar os participantes obrigatórios de uma reunião. No entanto, dependendo do cliente/plataforma (ou seja, Windows, Mac etc.), os limites podem se aplicar a quantos destinatários você pode obter ou atualizar. Consulte o objeto Destinatários para obter mais detalhes.

requiredAttendees: Recipients;

Valor da propriedade

Comentários

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

Modo Outlook aplicável: Organizador de Compromissos

Exemplos

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

function callback(asyncResult) {
    const arrayOfRequiredAttendeesRecipients = asyncResult.value;
    console.log(JSON.stringify(arrayOfRequiredAttendeesRecipients));
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-set-required-attendees-appointment-organizer.yaml

Office.context.mailbox.item.requiredAttendees.getAsync(function(asyncResult) {
  if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
    const apptRequiredAttendees = asyncResult.value;
    for (let i = 0; i < apptRequiredAttendees.length; i++) {
      console.log(
        "Required attendees: " +
          apptRequiredAttendees[i].displayName +
          " (" +
          apptRequiredAttendees[i].emailAddress +
          ") - response: " +
          apptRequiredAttendees[i].appointmentResponse
      );
    }
  } else {
    console.error(asyncResult.error);
  }
});

...

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

start

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

A start propriedade é um objeto Time expresso como um valor de data e hora de TEMPO Universal Coordenado (UTC). Você pode usar o convertToLocalClientTime método para converter o valor na data e hora local do cliente.

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

Importante: no cliente Windows, você não pode usar essa propriedade para atualizar o início de uma recorrência.

start: Time;

Valor da propriedade

Comentários

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

Modo Outlook aplicável: Organizador de Compromissos

Exemplos

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

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

...

const start = new Date(); // Represents current date and time.
start.setDate(start.getDate() + 2); // Add 2 days to current date.
Office.context.mailbox.item.start.setAsync(start, (result) => {
  if (result.status !== Office.AsyncResultStatus.Succeeded) {
    console.error(`Action failed with message ${result.error.message}`);
    return;
  }
  console.log(`Successfully set start date and time to ${start}`);
});

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: item de leitura

Modo Outlook aplicável: Organizador de Compromissos

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

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.

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

Importante: em builds recentes do Outlook no Windows, foi introduzido um bug que acrescenta incorretamente um Authorization: Bearer cabeçalho a essa ação (seja usando essa API ou a interface do usuário do Outlook). Para contornar esse problema, você pode tentar usar a API introduzida com o addFileAttachmentFromBase64 conjunto de requisitos 1.8.

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 desenvolvedores podem fornecer qualquer objeto que desejam acessar na função de retorno de chamada. isInline: se for true, indica que o anexo será mostrado embutido no corpo da mensagem e não deve ser exibido na lista de anexos.

callback

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

Opcional. Quando o método é concluído, a função passada 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 ]

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

Modo Outlook aplicável: Organizador de Compromissos

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 muitos anexos.

Exemplos

function callback(result) {
    if (result.error) {
        console.log(result.error);
    } else {
        console.log("Attachment added");
    }
}

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

    const attachmentURL = "https://contoso.com/rtm/icon.png";
    Office.context.mailbox.item.addFileAttachmentAsync(attachmentURL, attachmentURL, options, callback);
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml

const attachmentUrl = $("#attachmentUrl").val();
Office.context.mailbox.item.addFileAttachmentAsync(
    attachmentUrl,
    getFileName(attachmentUrl),
    { "asyncContext" : { var1: 1, var2: true } },
    function(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.

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

Importante: em builds recentes do Outlook no Windows, foi introduzido um bug que acrescenta incorretamente um Authorization: Bearer cabeçalho a essa ação (seja usando essa API ou a interface do usuário do Outlook). Para contornar esse problema, você pode tentar usar a API introduzida com o addFileAttachmentFromBase64 conjunto de requisitos 1.8.

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 é concluído, a função passada 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 ]

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

Modo Outlook aplicável: Organizador de Compromissos

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 muitos 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 você especificar uma função de retorno de chamada, o método será chamado com um parâmetro, asyncResult, que contém o identificador de anexo ou um código que indica qualquer erro ocorrido ao anexar o item. Você pode usar o options parâmetro para passar informações de estado para a função de retorno de chamada, se necessário.

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

Se o Suplemento do Office estiver em execução no Outlook na Web, o método addItemAttachmentAsync pode anexar itens que não sejam aquele que você está editando; no entanto, isso não tem suporte 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 desenvolvedores podem fornecer qualquer objeto que desejam acessar na função de retorno de chamada.

callback

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

Opcional. Quando o método é concluído, a função passada no parâmetro de retorno de chamada é 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/gravação

Modo Outlook aplicável: Organizador de Compromissos

Erros:

  • NumberOfAttachmentsExceeded: a mensagem ou compromisso tem muitos anexos.

Exemplos

// The following example adds an existing Outlook item as an attachment
// with the name `My Attachment`.
function callback(result) {
    if (result.error) {
        console.log(result.error);
    } else {
        console.log("Attachment added");
    }
}

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, callback);
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml

const attachmentItemId = $("#attachmentItemId").val();
Office.context.mailbox.item.addItemAttachmentAsync(
    attachmentItemId,
    "My attachment",
    { "asyncContext" : { var3: 3, var4: false } },
    function(result) { console.log(result); });

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 você especificar uma função de retorno de chamada, o método será chamado com um parâmetro, asyncResult, que contém o identificador de anexo ou um código que indica qualquer erro ocorrido ao anexar o item. Você pode usar o options parâmetro para passar informações de estado para a função de retorno de chamada, se necessário.

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

Se o Suplemento do Office estiver em execução no Outlook na Web, o método addItemAttachmentAsync pode anexar itens que não sejam aquele que você está editando; no entanto, isso não tem suporte 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 é concluído, a função passada no parâmetro de retorno de chamada é 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/gravação

Modo Outlook aplicável: Organizador de Compromissos

Erros:

  • NumberOfAttachmentsExceeded: a mensagem ou compromisso tem muitos 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 no assunto, o método retornará uma cadeia de caracteres 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 acessar os dados selecionados da função de retorno de chamada, chame asyncResult.value.data. Para acessar a source propriedade da qual a seleção vem, 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 retornará o texto simples como uma cadeia de caracteres, removendo todas as marcas HTML presentes. Se HTML, o método retornará o texto selecionado, seja plaintext ou HTML.

options
Office.AsyncContextOptions

Um literal de objeto que contém uma ou mais das seguintes propriedades:- asyncContext: Os desenvolvedores podem fornecer qualquer objeto que desejam acessar na função de retorno de chamada.

callback

(asyncResult: Office.AsyncResult<any>) => 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.

Retornos

void

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

Comentários

[ Conjunto de API: Caixa de correio 1.2 ]

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

Modo Outlook aplicável: Organizador de Compromissos

Exemplos

// Get selected data.
Office.initialize = function () {
    Office.context.mailbox.item.getSelectedDataAsync(Office.CoercionType.Text, {}, 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 no assunto, o método retornará uma cadeia de caracteres 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 acessar os dados selecionados da função de retorno de chamada, chame asyncResult.value.data. Para acessar a source propriedade da qual a seleção vem, chame asyncResult.value.sourceProperty, que será body ou subject.

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

Parâmetros

coercionType

Office.CoercionType | string

Solicita um formato para os dados. Se Text, o método retornará o texto simples como uma cadeia de caracteres, removendo todas as marcas HTML presentes. Se HTML, o método retornará o texto selecionado, seja plaintext ou HTML.

callback

(asyncResult: Office.AsyncResult<string>) => 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.

Retornos

void

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

Comentários

[ Conjunto de API: Caixa de correio 1.2 ]

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

Modo Outlook aplicável: Organizador de Compromissos

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 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: Organizador de Compromissos

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

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. Em Outlook na Web e em dispositivos móveis, o identificador de anexo é válido somente na mesma sessão. Uma sessão acaba quando o usuário fecha o aplicativo ou se o usuário começa a compor um formulário embutido e, posteriormente, aparece o formulário para continuar em uma 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 caracteres é de attachmentId 200 caracteres em Outlook na Web e no Windows.

options
Office.AsyncContextOptions

Um literal de objeto que contém uma ou mais das seguintes propriedades:- asyncContext: Os desenvolvedores podem fornecer qualquer objeto que desejam acessar na função de retorno de chamada.

callback

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

Opcional. Quando o método é concluído, a função passada 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/gravação

Modo Outlook aplicável: Organizador de Compromissos

Erros:

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

Exemplos

// The following code removes an attachment with an identifier of '0'.
Office.context.mailbox.item.removeAttachmentAsync(
    '0',
    { asyncContext : null },
    function (asyncResult)
    {
        console.log(asyncResult.status);
    }
);
// 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(),
    { asyncContext : null },
    function(result)
    {
        if (result.status !== Office.AsyncResultStatus.Succeeded) {
            console.error(`${result.error.message}`);
        } else {
            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. Em Outlook na Web e em dispositivos móveis, o identificador de anexo é válido somente na mesma sessão. Uma sessão acaba quando o usuário fecha o aplicativo ou se o usuário começa a compor um formulário embutido e, posteriormente, aparece o formulário para continuar em uma 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 caracteres é de attachmentId 200 caracteres em Outlook na Web e no Windows.

callback

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

Opcional. Quando o método é concluído, a função passada 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/gravação

Modo Outlook aplicável: Organizador de Compromissos

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 de caracteres especificada no local do cursor no assunto ou no corpo do item ou, se o texto for selecionado no editor, ele substituirá o texto selecionado. Se o cursor não estiver no corpo ou no campo do assunto, um erro será retornado. 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 desenvolvedores podem fornecer qualquer objeto que desejam acessar na função de retorno de chamada. coercionType: se texto, o estilo atual será aplicado em Outlook na Web e no Windows. Se o campo for um editor de HTML, apenas os dados de texto são inseridos, mesmo se os dados forem HTML. Se html e o campo de suporte a HTML (o assunto não o fizer), o estilo atual será aplicado em Outlook na Web e o estilo padrão será aplicado no Outlook em clientes da área de trabalho. 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 é concluído, a função passada 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/gravação

Modo Outlook aplicável: Organizador de Compromissos

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 de caracteres especificada no local do cursor no assunto ou no corpo do item ou, se o texto for selecionado no editor, ele substituirá o texto selecionado. Se o cursor não estiver no corpo ou no campo do assunto, um erro será retornado. 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 é concluído, a função passada 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/gravação

Modo Outlook aplicável: Organizador de Compromissos

Erros:

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