Gerenciar Calendário e Convites de Reunião com Exchange Web Services (EWS)

Este artigo explica como trabalhar com convites de reunião e itens de calendário usando Aspose.Email for C++ e Exchange Web Services (EWS). Você aprenderá a:

  • Enviar convites de reunião para um ou vários destinatários
  • Criar, atualizar e cancelar compromissos
  • Listar itens de calendário com suporte a paginação
  • Adicionar eventos a calendários secundários
  • Compartilhar calendários com usuários
  • Recuperar propriedades estendidas de itens de calendário

Todos os cenários incluem exemplos de código C++ usando IEWSClient.

Enviar um Convite de Reunião via EWS

Você pode criar e enviar um convite de reunião construindo um Appointment objeto e anexá‑lo a um MailMessage antes de enviá‑lo através do IEWSClient.

O exemplo de código a seguir demonstra como criar e enviar um convite de reunião recorrente via Exchange Web Services:

  1. Crie um Appointment e defina o local, horário, participantes.
  2. Adicione recorrência se necessário.
  3. Crie uma mensagem de e‑mail usando o MailMessage classe.
  4. Anexe o convite de reunião via AddAlternateView().
  5. Conecte ao Exchange Server e envie a mensagem usando o IEWSClient->Send(MailMessage) método.

Criar, Atualizar e Cancelar Compromissos

Aspose.Email fornece recursos dedicados IEWSClient métodos para gerenciar itens de calendário:

  • CreateAppointment()
  • UpdateAppointment()
  • CancelAppointment()
  • FetchAppointment()

O exemplo de código a seguir demonstra como gerenciar operações de calendário em um Exchange Server usando Aspose.Email for C++. Ele mostra o ciclo de vida completo de criação, recuperação, atualização e cancelamento de compromissos via Exchange Web Services, incluindo a definição de informações de fuso horário, listagem de todos os compromissos e verificação de alterações ao buscar e exibir detalhes dos compromissos antes e depois das modificações.

Listar Compromissos com Suporte a Paginação

Quando uma caixa de correio contém muitos compromissos, a paginação ajuda a recuperar itens de forma eficiente. Para isso, Aspose.Email fornece várias sobrecargas do ListAppointmentsByPage() método incluindo combinações de recursos de consulta.

O exemplo de código a seguir demonstra como criar múltiplos compromissos de calendário com intervalos de tempo sequenciais e, em seguida, implementar paginação para listar todos os compromissos recuperando‑os em páginas menores e gerenciáveis, em vez de carregar toda a coleção de uma vez, o que é útil para lidar com um grande número de itens de calendário.

Adicionar Eventos a uma Pasta de Calendário Secundária

Você pode criar pastas de calendário personalizadas e gerenciar compromissos dentro delas. O exemplo de código a seguir demonstra como criar e gerenciar uma pasta de calendário secundária no Exchange Server e executar operações de compromisso dentro dela. Isso inclui verificar se já existe uma pasta de calendário personalizada, criar uma nova pasta de calendário se não existir, e então realizar operações completas de CRUD (criar, ler, atualizar, excluir) nos compromissos tanto na pasta de calendário personalizada quanto na pasta de calendário padrão, incluindo a definição de um contexto de calendário atual para simplificar chamadas de API.

Compartilhar Convite de Calendário

O servidor Microsoft Exchange oferece a capacidade de compartilhar calendários enviando convites de calendário para outros usuários registrados no mesmo servidor Exchange. A API Aspose.Email fornece a mesma capacidade permitindo compartilhar o calendário usando a API EWS.

Recuperar Propriedades Estendidas de Itens de Calendário

Aspose.Email permite buscar propriedades MAPI personalizadas de itens de calendário usando descritores de propriedade.