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.

notificationMessages

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

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.

close()

Fecha o item atual que está sendo composto.

O comportamento do método close depende do estado atual do item que está sendo redigido. Se o item tiver alterações não guardadas, o cliente pede ao utilizador para guardar, eliminar ou fechar a ação.

No Outlook no Windows (clássico) e no Mac, o close método não tem qualquer efeito numa resposta no Painel de Leitura.

getSelectedDataAsync(coercionType, options, callback)

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

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

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

getSelectedDataAsync(coercionType, callback)

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

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

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

loadCustomPropertiesAsync(callback, userContext)

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

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

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

removeAttachmentAsync(attachmentId, options, callback)

Remove um anexo de uma mensagem ou de um compromisso.

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

removeAttachmentAsync(attachmentId, callback)

Remove um anexo de uma mensagem ou de um compromisso.

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

saveAsync(options, callback)

Salva um item de forma assíncrona.

Uma vez que os compromissos não têm nenhum estado de rascunho, se saveAsync for chamado para um compromisso no modo de composição, o item é guardado como um compromisso normal no calendário do utilizador. Para novos compromissos que ainda não tenham sido guardados, não é enviado nenhum convite. Para compromissos existentes, é enviada uma atualização aos participantes adicionados ou removidos.

saveAsync(callback)

Salva um item de forma assíncrona.

Uma vez que os compromissos não têm nenhum estado de rascunho, se saveAsync for chamado para um compromisso no modo de composição, o item é guardado como um compromisso normal no calendário do utilizador. Para novos compromissos que ainda não tenham sido guardados, não é enviado nenhum convite. Para compromissos existentes, é enviada uma atualização aos participantes adicionados ou removidos.

setSelectedDataAsync(data, options, callback)

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

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

setSelectedDataAsync(data, callback)

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

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

Detalhes da propriedade

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

notificationMessages

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

notificationMessages: NotificationMessages;

Valor da propriedade

Comentários

[ Conjunto de API: Caixa de Correio 1.3 ]

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

Modo Outlook aplicável: Organizador de Compromissos

Exemplos

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

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

...

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

...

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

...

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

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

...

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

...

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

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 ]

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

Modo Outlook aplicável: Organizador de Compromissos

Importante:

  • 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 resolver este problema, pode tentar utilizar a API introduzida com o addFileAttachmentFromBase64 requisito definido como 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 ]

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

Modo Outlook aplicável: Organizador de Compromissos

Importante:

  • 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 resolver este problema, pode tentar utilizar a API introduzida com o addFileAttachmentFromBase64 requisito definido como 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.

close()

Fecha o item atual que está sendo composto.

O comportamento do método close depende do estado atual do item que está sendo redigido. Se o item tiver alterações não guardadas, o cliente pede ao utilizador para guardar, eliminar ou fechar a ação.

No Outlook no Windows (clássico) e no Mac, o close método não tem qualquer efeito numa resposta no Painel de Leitura.

close(): void;

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.3 ]

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

Modo Outlook aplicável: Organizador de Compromissos

Importante: no Outlook na Web e no novo Outlook no Windows, se o item for um compromisso e tiver sido guardado anteriormente com saveAsynco , é pedido ao utilizador que guarde, elimine ou cancele mesmo que não tenham ocorrido alterações desde a última vez que o item foi guardado.

Exemplos

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/25-item-save-and-close/close.yaml

Office.context.mailbox.item.close();

getSelectedDataAsync(coercionType, options, callback)

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

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

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

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

Parâmetros

coercionType

Office.CoercionType | string

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

options
Office.AsyncContextOptions

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

callback

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

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

Retornos

void

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

Comentários

[ Conjunto de API: Caixa de Correio 1.2 ]

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

Modo Outlook aplicável: Organizador de Compromissos

Exemplos

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

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

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

getSelectedDataAsync(coercionType, callback)

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

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

Para aceder aos dados selecionados a partir da função de chamada de retorno, chame asyncResult.value.data. Para aceder à source propriedade de origem da seleção, 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 devolve o texto simples como uma cadeia, removendo todas as etiquetas HTML presentes. Se HTML, o método devolve o texto selecionado, quer seja texto simples ou HTML.

callback

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

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

Retornos

void

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

Comentários

[ Conjunto de API: Caixa de Correio 1.2 ]

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

Modo Outlook aplicável: 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 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.

saveAsync(options, callback)

Salva um item de forma assíncrona.

Uma vez que os compromissos não têm nenhum estado de rascunho, se saveAsync for chamado para um compromisso no modo de composição, o item é guardado como um compromisso normal no calendário do utilizador. Para novos compromissos que ainda não tenham sido guardados, não é enviado nenhum convite. Para compromissos existentes, é enviada uma atualização aos participantes adicionados ou removidos.

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

Parâmetros

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

Quando o método for concluído, a função transmitida no callback parâmetro é chamada com um único parâmetro, asyncResult, que é um Office.AsyncResult objeto. O ID de compromisso do EWS é devolvido na asyncResult.value propriedade .

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.3 ]

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

Modo Outlook aplicável: Organizador de Compromissos

Importante:

  • No Outlook na Web, o novo Outlook no Windows ou o Outlook clássico no Windows no modo online (modo não colocado em cache), o item é guardado no servidor. No Outlook no modo cache, o item é salvo no cache local.

  • Ao trabalhar com conteúdo formatado em HTML, é importante ter em atenção que o cliente do Outlook pode modificar o conteúdo. Isto significa que as chamadas subsequentes para métodos como Body.getAsync, Body.setAsynce até mesmo saveAsync podem não resultar no mesmo conteúdo.

  • O identificador devolvido é o mesmo que o identificador de item dos Serviços Web exchange (EWS). O ID do item devolvido não é idêntico ao ID de Entrada do Outlook ou ao ID utilizado pela API REST do Outlook. Antes de efetuar chamadas à API REST com este valor, deve ser convertida com Office.context.mailbox.convertToRestId.

  • Se o seu suplemento chamar saveAsync para obter um ID de item para utilizar com o EWS ou a API REST, tenha em atenção que, quando o Outlook está no modo de cache, poderá demorar algum tempo até que o item seja realmente sincronizado com o servidor. Até o item ser sincronizado, a utilização do ID do item devolverá um erro.

  • No Outlook para Mac, apenas a Versão 16.35 (20030802) e posterior suporta a gravação de uma reunião. Caso contrário, o saveAsync método falha quando é chamado a partir de uma reunião no modo de composição. Para obter uma solução, consulte Não é possível guardar uma reunião como um rascunho no Outlook para Mac através da API do Office JS.

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/25-item-save-and-close/save.yaml

Office.context.mailbox.item.saveAsync(function (result) {
  if (result.status === Office.AsyncResultStatus.Succeeded) {
    console.log(`saveAsync succeeded, itemId is ${result.value}`);
  }
  else {
    console.error(`saveAsync failed with message ${result.error.message}`);
  }
});

saveAsync(callback)

Salva um item de forma assíncrona.

Uma vez que os compromissos não têm nenhum estado de rascunho, se saveAsync for chamado para um compromisso no modo de composição, o item é guardado como um compromisso normal no calendário do utilizador. Para novos compromissos que ainda não tenham sido guardados, não é enviado nenhum convite. Para compromissos existentes, é enviada uma atualização aos participantes adicionados ou removidos.

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

Parâmetros

callback

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

Quando o método for concluído, a função transmitida no callback parâmetro é chamada com um único parâmetro, asyncResult, que é um Office.AsyncResult objeto. O ID de compromisso do EWS é devolvido na asyncResult.value propriedade .

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.3 ]

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

Modo Outlook aplicável: Organizador de Compromissos

Importante:

  • No Outlook na Web, o novo Outlook no Windows ou o Outlook clássico no Windows no modo online (modo não colocado em cache), o item é guardado no servidor. No Outlook no modo cache, o item é salvo no cache local.

  • Ao trabalhar com conteúdo formatado em HTML, é importante ter em atenção que o cliente do Outlook pode modificar o conteúdo. Isto significa que as chamadas subsequentes para métodos como Body.getAsync, Body.setAsynce até mesmo saveAsync podem não resultar no mesmo conteúdo.

  • O identificador devolvido é o mesmo que o identificador de item dos Serviços Web exchange (EWS). O ID do item devolvido não é idêntico ao ID de Entrada do Outlook ou ao ID utilizado pela API REST do Outlook. Antes de efetuar chamadas à API REST com este valor, deve ser convertida com Office.context.mailbox.convertToRestId.

  • Se o seu suplemento chamar saveAsync para obter um ID de item para utilizar com o EWS ou a API REST, tenha em atenção que, quando o Outlook está no modo de cache, poderá demorar algum tempo até que o item seja realmente sincronizado com o servidor. Até o item ser sincronizado, a utilização do ID do item devolverá um erro.

  • No Outlook para Mac, apenas a Versão 16.35 (20030802) e posterior suporta a gravação de uma reunião. Caso contrário, o saveAsync método falha quando é chamado a partir de uma reunião no modo de composição. Para obter uma solução, consulte Não é possível guardar uma reunião como um rascunho no Outlook para Mac através da API do Office JS.

Erros:

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

Exemplos

Office.context.mailbox.item.saveAsync(
    function callback(result) {
        // Process the result.
    });

// The following is an example of the
// `result` parameter passed to the
// callback function. The `value`
// property contains the item ID of
// the item.
{
    "value": "AAMkADI5...AAA=",
    "status": "succeeded"
}

setSelectedDataAsync(data, options, callback)

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

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

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

Parâmetros

data

string

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

options

Office.AsyncContextOptions & Office.CoercionTypeOptions

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

callback

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

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

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.2 ]

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

Modo Outlook aplicável: 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 especificada na localização do cursor no assunto ou corpo do item ou, se o texto estiver selecionado no editor, substitui o texto selecionado. Se o cursor não estiver no corpo ou no campo do assunto, é devolvido um erro. Após a inserção, o cursor é colocado no final do conteúdo inserido.

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

Parâmetros

data

string

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

callback

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

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

Retornos

void

Comentários

[ Conjunto de API: Caixa de Correio 1.2 ]

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

Modo Outlook aplicável: Organizador de Compromissos

Erros:

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