Compartilhar via


Office.AppointmentCompose interface

O modo de organizador de compromissos de Office.context.mailbox.item.

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

Interfaces principais:

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 Hora expresso como um valor de data e hora Universal Coordenada (UTC). Pode utilizar o convertToLocalClientTime método para converter o valor da end propriedade para a data e hora locais do cliente.

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

Importante: no cliente Windows, não pode utilizar esta propriedade para atualizar o fim de uma periodicidade.

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 devolve um objeto Localização que fornece métodos que são utilizados para obter e definir a localização 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.), podem aplicar-se limites ao número de destinatários que pode obter ou atualizar. Veja 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.), podem aplicar-se limites ao número de destinatários que pode obter ou atualizar. Veja 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 Hora expresso como um valor de data e hora Universal Coordenada (UTC). Pode utilizar o convertToLocalClientTime método para converter o valor para a data e hora locais do cliente.

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, não pode utilizar esta propriedade para atualizar o início de uma periodicidade.

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.

addFileAttachmentAsync(uri, attachmentName, callback)

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

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

addItemAttachmentAsync(itemId, attachmentName, options, callback)

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

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

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

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

addItemAttachmentAsync(itemId, attachmentName, callback)

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

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

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

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

loadCustomPropertiesAsync(callback, userContext)

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

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

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

removeAttachmentAsync(attachmentId, options, callback)

Remove um anexo de uma mensagem ou de um compromisso.

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

removeAttachmentAsync(attachmentId, callback)

Remove um anexo de uma mensagem ou de um compromisso.

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

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: ler item

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 Hora expresso como um valor de data e hora Universal Coordenada (UTC). Pode utilizar o convertToLocalClientTime método para converter o valor da end propriedade para a data e hora locais do cliente.

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

Importante: no cliente Windows, não pode utilizar esta propriedade para atualizar o fim de uma periodicidade.

end: Time;

Valor da propriedade

Comentários

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

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: ler item

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 devolve um objeto Localização que fornece métodos que são utilizados para obter e definir a localização do compromisso.

location: Location;

Valor da propriedade

Comentários

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

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.), podem aplicar-se limites ao número de destinatários que pode obter ou atualizar. Veja o objeto Destinatários para obter mais detalhes.

optionalAttendees: Recipients;

Valor da propriedade

Comentários

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

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.), podem aplicar-se limites ao número de destinatários que pode obter ou atualizar. Veja o objeto Destinatários para obter mais detalhes.

requiredAttendees: Recipients;

Valor da propriedade

Comentários

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

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 Hora expresso como um valor de data e hora Universal Coordenada (UTC). Pode utilizar o convertToLocalClientTime método para converter o valor para a data e hora locais do cliente.

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, não pode utilizar esta propriedade para atualizar o início de uma periodicidade.

start: Time;

Valor da propriedade

Comentários

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

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: ler item

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.

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

Parâmetros

uri

string

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

attachmentName

string

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

options

Office.AsyncContextOptions & { isInline: boolean }

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

callback

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

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

Retornos

void

Comentários

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

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

Modo Outlook aplicável: Organizador de Compromissos

Importante:

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

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

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

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

Erros:

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

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

  • NumberOfAttachmentsExceeded : a mensagem ou compromisso tem demasiados anexos.

Exemplos

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

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

addFileAttachmentAsync(uri, attachmentName, callback)

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

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

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

Parâmetros

uri

string

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

attachmentName

string

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

callback

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

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

Retornos

void

Comentários

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

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

Modo Outlook aplicável: Organizador de Compromissos

Importante:

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

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

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

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

Erros:

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

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

  • NumberOfAttachmentsExceeded : a mensagem ou compromisso tem demasiados anexos.

addItemAttachmentAsync(itemId, attachmentName, options, callback)

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

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

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

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

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

Parâmetros

itemId

any

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

attachmentName

string

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

options
Office.AsyncContextOptions

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

callback

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

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

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

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

Modo Outlook aplicável: Organizador de Compromissos

Erros:

  • NumberOfAttachmentsExceeded : a mensagem ou compromisso tem demasiados anexos.

Exemplos

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

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

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

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

addItemAttachmentAsync(itemId, attachmentName, callback)

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

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

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

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

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

Parâmetros

itemId

any

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

attachmentName

string

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

callback

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

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

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

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

Modo Outlook aplicável: Organizador de Compromissos

Erros:

  • NumberOfAttachmentsExceeded : a mensagem ou compromisso tem demasiados anexos.

loadCustomPropertiesAsync(callback, userContext)

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

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

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

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

Parâmetros

callback

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

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

userContext

any

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

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

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

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

Modo Outlook aplicável: Organizador de Compromissos

Exemplos

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

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

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

removeAttachmentAsync(attachmentId, options, callback)

Remove um anexo de uma mensagem ou de um compromisso.

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

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

Parâmetros

attachmentId

string

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

options
Office.AsyncContextOptions

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

callback

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

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

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

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

Modo Outlook aplicável: Organizador de Compromissos

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

Erros:

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

Exemplos

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

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

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

removeAttachmentAsync(attachmentId, callback)

Remove um anexo de uma mensagem ou de um compromisso.

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

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

Parâmetros

attachmentId

string

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

callback

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

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

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.1 ]

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

Modo Outlook aplicável: Organizador de Compromissos

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

Erros:

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