Trabalhando com Sinalizador de Acompanhamento e Data de Vencimento para Arquivos MSG do Outlook em C++

Definindo Sinalizador de Acompanhamento e Data de Vencimento para Arquivos MSG do Outlook

Um sinalizador de acompanhamento marca uma mensagem de e-mail para algum tipo de ação. O Microsoft Outlook permite que os usuários sinalizem mensagens e, na configuração do sinalizador, atribuam uma data de vencimento para o acompanhamento. O Microsoft Outlook envia um lembrete para o destinatário para incentivá-lo a acompanhar o e-mail. Sinalizar e-mails e definir datas de vencimento programaticamente permite que desenvolvedores de software automatem certos tipos de e-mails e ajudem os recipientes a se lembrarem de tomar uma ação. Por exemplo, poderia ser usado para enviar mensagens mensais para uma equipe de vendas para lembrá-los de completar seus relatórios; ou para enviar uma mensagem a todos os funcionários para lembrá-los de uma reunião da empresa. Aspose.Email para C++ suporta a definição de sinalizador de acompanhamento e data de vencimento para objetos MapiMessage usando FollowUpManager e FollowUpOptions. Existem várias variantes nas quais o sinalizador de acompanhamento pode ser definido em uma mensagem. Todas são usadas no exemplo de código abaixo:

  1. Definir um sinalizador de acompanhamento para uma mensagem
  2. Adicionar uma data de vencimento e data de lembrete a uma mensagem
  3. Adicionar um sinalizador à mensagem de um destinatário.
  4. Marcar como completo.
  5. Remover sinalizador.
  6. Ler opções de acompanhamento.

Definindo um sinalizador de FollowUp

O seguinte trecho de código mostra como definir um sinalizador de FollowUp usando a API da Biblioteca de Parser de Email em C++.

For complete examples and data files, please go to https://github.com/kashifiqb/Aspose.Email-for-C
// The path to the File directory.
System::String dataDir = RunExamples::GetDataDir_Outlook();
System::SharedPtr<MailMessage> mailMsg = System::MakeObject<MailMessage>();
mailMsg->set_Sender(L"AETest12@gmail.com");
mailMsg->set_To(L"receiver@gmail.com");
mailMsg->set_Body(L"This message will test if follow up options can be added to a new mapi message.");
System::SharedPtr<MapiMessage> mapi = MapiMessage::FromMailMessage(mailMsg);
System::DateTime dtStartDate(2013, 5, 23, 14, 40, 0);
System::DateTime dtReminderDate(2013, 5, 23, 16, 40, 0);
System::DateTime dtDueDate = dtReminderDate.AddDays(1);
System::SharedPtr<FollowUpOptions> options = System::MakeObject<FollowUpOptions>(L"Follow Up", dtStartDate, dtDueDate, dtReminderDate);
FollowUpManager::SetOptions(mapi, options);
mapi->Save(dataDir + L"SetFollowUpflag_out.msg");

Definindo Acompanhamento para Recipientes

O seguinte trecho de código mostra como definir acompanhamento para recipientes.

For complete examples and data files, please go to https://github.com/kashifiqb/Aspose.Email-for-C
// The path to the File directory.
System::String dataDir = RunExamples::GetDataDir_Outlook();
System::SharedPtr<MailMessage> mailMsg = System::MakeObject<MailMessage>();
mailMsg->set_Sender(L"AETest12@gmail.com");
mailMsg->set_To(L"receiver@gmail.com");
mailMsg->set_Body(L"This message will test if follow up options can be added to a new mapi message.");
System::SharedPtr<MapiMessage> mapi = MapiMessage::FromMailMessage(mailMsg);
mapi->SetMessageFlags(Aspose::Email::Outlook::MapiMessageFlags::MSGFLAG_UNSENT);
// Mark this message as draft
System::DateTime dtReminderDate(2013, 5, 23, 16, 40, 0);
// Add the follow up flag for receipient now
FollowUpManager::SetFlagForRecipients(mapi, L"Follow up", dtReminderDate);
mapi->Save(dataDir + L"SetFollowUpForRecipients_out.msg");

Marcando um sinalizador de FollowUp como Completo

O seguinte trecho de código mostra como marcar o sinalizador de FollowUp como completo.

For complete examples and data files, please go to https://github.com/kashifiqb/Aspose.Email-for-C
// The path to the File directory.
System::String dataDir = RunExamples::GetDataDir_Outlook();
System::SharedPtr<MapiMessage> mapiMessage = MapiMessage::FromFile(dataDir + L"Message.msg");
FollowUpManager::MarkAsCompleted(mapiMessage);
mapiMessage->Save(dataDir + L"MarkedCompleted_out.msg");

Removendo um sinalizador de FollowUp

O seguinte trecho de código mostra como remover o sinalizador de FollowUp.

For complete examples and data files, please go to https://github.com/kashifiqb/Aspose.Email-for-C
// The path to the File directory.
System::String dataDir = RunExamples::GetDataDir_Outlook();
// Load file from Disk
System::SharedPtr<MapiMessage> mapi = MapiMessage::FromFile(dataDir + L"message.msg");
FollowUpManager::ClearFlag(mapi);
mapi->Save(dataDir + L"RemoveFollowUpflag_out.msg");

Ler opções de sinalizador de acompanhamento para uma mensagem

O seguinte trecho de código mostra como ler opções de sinalizador de acompanhamento para uma mensagem.

For complete examples and data files, please go to https://github.com/kashifiqb/Aspose.Email-for-C
// The path to the File directory.
System::String dataDir = RunExamples::GetDataDir_Outlook();
System::SharedPtr<MapiMessage> mapi = MapiMessage::FromFile(dataDir + L"message.msg");
System::SharedPtr<FollowUpOptions> options = FollowUpManager::GetOptions(mapi);