Odesílání, čtení a organizace zpráv na serveru Exchange

Načíst informace o poštovní schránce Exchange pomocí EWS

Aspose.Email vám umožňuje získat podrobnosti poštovní schránky z Microsoft Exchange pomocí IEWSClient třídu. Voláním GetMailboxInfo() metoda, klient vrací ExchangeMailboxInfo objekt obsahující užitečné URI složek, jako jsou Mailbox, Inbox, Drafts a Sent Items.

Pro připojení k serveru Exchange pomocí Exchange Web Services (EWS) použijte IEWSClient třída. Tato třída používá EWS k připojení a správě položek na serveru Exchange.

Následující úryvek kódu demonstruje, jak získat informace o poštovní schránce pomocí Exchange Web Services.

Odeslat e‑mailové zprávy pomocí EWS

Můžete odesílat e‑mailové zprávy přes Exchange voláním IEWSClient->Send() metoda. Přijímá MailMessage objekt a odesílá jej přímo přes server pomocí EWS.

Následující ukázkový kód demonstruje, jak odeslat HTML e‑mailovou zprávu přes server Exchange pomocí Exchange Web Services (EWS) s Aspose.Email pro C++. Ukazuje kompletní proces navázání spojení s Exchange, vytvoření e‑mailové zprávy s odesílatelem, příjemcem, předmětem a HTML obsahem a následné odeslání zprávy pomocí metody Send klienta EWS.

Čtení e‑mailů z poštovní schránky jiného uživatele

Některé účty na serverech Exchange mají právo přístupu k několika poštovním schránkám a někteří uživatelé mají na stejném serveru Exchange více e‑mailových účtů. V obou případech mohou uživatelé přistupovat k poštovním schránkám jiných uživatelů pomocí Aspose.Email. API poskytuje mechanismus pro přístup ke složkám a e‑mailům z jiných poštovních schránek pomocí IEWSClient třída. Tuto funkčnost lze dosáhnout pomocí přetížené GetMailboxInfo() metoda a předáním e‑mailové adresy uživatele jako parametru.

Následující úryvek kódu ukazuje, jak číst e‑mailové zprávy pomocí IEWSClient třída.

Vypsat zprávy pomocí EWS

Aspose.Email pro C++ vám umožňuje získat metadata zpráv z poštovních schránek Exchange Serveru prostřednictvím IEWSClient. Použitím EWS‑založeného ListMessages Pomocí API můžete vypsat zprávy z libovolné složky, prohlížet metadata zpráv a implementovat stránkování pro velké poštovní schránky.

Vypsat zprávy ze Doručené pošty

Použijte ListMessages k získání základních informací o zprávě, jako je předmět, odesílatel, příjemci a ID zprávy, ze složky Doručená pošta nebo libovolné složky.

Následující ukázka kódu demonstruje, jak vypsat a zobrazit základní informace o všech zprávách na serveru Exchange.

  1. Vytvořte instanci IEWSClient.
  2. Zavolejte ListMessages s URI cílové složky.
  3. Procházet ExchangeMessageInfoCollection.

Vypsat zprávy z libovolné složky

ListMessages přijímá libovolné platné URI složky, což vám umožní vypsat položky ze složek Smazané položky, Koncepty, Odeslané položky nebo vlastní složky. Použijte IEWSClient->get_MailboxInfo->xxxFolderUri vlastnost pro získání URI různých složek.

Následující ukázka kódu ukazuje, jak získat přístup k různým URI složek Exchange Serveru a načíst zprávy ze zvolené složky.

Stránkování ve výpisu zpráv

Pro velké poštovní schránky použijte ListMessagesByPage pro načtení zpráv po menších blocích.

Následující ukázka kódu ukazuje, jak implementovat stránkování pro načítání velkého počtu zpráv ze složky Doručená pošta na Exchange Serveru.

  1. Nejprve vytvoří na serveru několik testovacích zpráv.
  2. Pak používá ListMessagesByPage metoda pro načítání zpráv po menších dávkách (v tomto případě 5 zpráv na stránku), přičemž prochází všechny stránky až do poslední.
  3. Nakonec kód ověřuje, že všechny zprávy byly úspěšně načteny, tím že spočítá celkový počet položek ve všech stránkách.

Získat informace o typu zprávy

Použijte ExchangeMessageInfo->MessageInfoType k určení základního typu zprávy Exchange (např. e‑mail, žádost o schůzku atd.).

Následující ukázka kódu demonstruje, jak se připojit k Exchange Serveru a získat informace o typu zprávy ze složky Smazané položky.

Uložit zprávy pomocí Exchange Web Services (EWS)

Aspose.Email vám umožňuje získat zprávy z poštovní schránky Exchange Serveru a uložit je v různých formátech, například EML, paměťové proudy a MSG. Níže uvedené příklady ukazují, jak načíst informace o zprávě a uložit zprávy pomocí IEWSClient API.

Uložit zprávy jako soubory EML

Pro uložení zpráv poštovní schránky jako soubory EML:

  1. Vytvořte IEWSClient instance pomocí platných přihlašovacích údajů.
  2. Zavolejte ListMessages() pro získání ExchangeMessagesInfoCollection.
  3. Procházejte kolekci a přistupujte k jedinečnému URI každé zprávy.
  4. Zavolejte SaveMessage() pro uložení každé zprávy na disk ve formátu EML.

Následující ukázka kódu ukazuje, jak uložit e‑mailové zprávy ze složky Doručená pošta na Exchange Serveru jako samostatné soubory EML lokálně pomocí Aspose.Email pro C++.

Uložit zprávy do paměťového proudu

Místo zápisu na disk můžete zprávy uložit do paměťového proudu – užitečné pro ukládání e‑mailů do databáze nebo jejich zpracování v paměti.

Následující ukázka kódu ukazuje, jak uložit e‑mailové zprávy ze složky Doručená pošta na Exchange Serveru do paměťových proudů.

Uložit zprávy ve formátu MSG

Pro uložení zpráv jako MSG:

  1. Získejte zprávu pomocí FetchMessage(), které vrací MailMessage.
  2. Zavolejte MailMessage::Save() s možnostmi uložení MSG.

Následující ukázka kódu ukazuje, jak načíst a uložit e‑mailové zprávy ze složky Doručená pošta na Exchange Serveru jako soubory ve formátu Outlook MSG.

Načíst podrobnosti zprávy podle URI zprávy

Když je k dispozici pouze jedinečný URI zprávy, můžete stále získat kompletní ExchangeMessageInfo objekty. Třída IEWSClient::ListMessages() přetížení přijímá seznam ID zpráv (URI) a vrací ExchangeMessageInfoCollection. Použijte tuto funkci, když ukládáte nebo přijímáte URI zpráv externě a potřebujete načíst metadata (předmět, odesílatel, velikost atd.) bez načtení kompletních zpráv.

Následující ukázka kódu ukazuje, jak vytvořit na Exchange Serveru více e‑mailových zpráv a poté získat jejich informace pomocí jedinečných identifikátorů.

Načíst kompletní obsah zprávy

ListMessages() vrací souhrnné informace (předmět, odesílatel, ID). Pro načtení kompletního obsahu zprávy — tělo, hlavičky, přílohy — použijte FetchMessage().

Následující ukázka kódu ukazuje, jak načíst kompletní zprávy ze složky Doručená pošta na Exchange Serveru a extrahovat informace o přílohách:

  1. Vytvořte IEWSClient instance.
  2. Zavolejte ListMessages() pro získání základních metadat zprávy.
  3. Extrahujte jedinečné URI každé zprávy.
  4. Zavolejte FetchMessage() pro získání kompletních detailů zprávy.

Načíst velikost zprávy (bez stahování celé zprávy)

Aspose.Email poskytuje informaci o velikosti zprávy bez načtení celého e‑mailu pomocí ExchangeMessageInfo::Size vlastnost.

Je to užitečné pro:

  • statistiky poštovní schránky
  • výpočty kvóty
  • filtrování velkých zpráv před stažením

Následující ukázka kódu ukazuje, jak vypsat a zobrazit metadata zprávy včetně velikosti ze složky Doručená pošta na Exchange Serveru.

Stáhnout e‑maily z veřejných složek Exchange

Veřejné složky Exchange umožňují ukládat sdílené zprávy mezi uživateli.

Aspose.Email IEWSClient umožňuje provádět následující operace s těmito složkami a zprávami, které v nich jsou uloženy:

  • Vypsat veřejné složky
  • Procházet podadresáře rekurzivně
  • Stáhnout zprávy a uložit je (např. jako soubory MSG)

Poznámka: Je vyžadován Microsoft Exchange Server 2007 nebo novější, protože starší verze nepodporují EWS.

Následující ukázka kódu ukazuje, jak rekurzivně stáhnout zprávy ze všech veřejných složek a jejich podadresářů na Exchange Serveru a uložit je lokálně jako soubory Outlook MSG.

Přesunout zprávy mezi složkami Exchange

Můžete přesunout zprávy z jedné složky Exchange do jiné pomocí IEWSClient::MoveItem metoda. Vyžaduje:

  • Jedinečné URI zprávy, která má být přesunuta.
  • Jedinečné URI cílové složky.

Následující ukázka kódu ukazuje, jak filtrovat a přesunout konkrétní e‑mailové zprávy ze složky Doručená pošta na Exchange Serveru do jiné složky podle kritérií obsahu.

  1. Připojit se k Exchange Serveru pomocí EWS přihlašovacích údajů.
  2. Získat informace o poštovní schránce (URI složek).
  3. Vypsat všechny zprávy ze Doručené pošty.
  4. Procházet každou zprávu.
  5. Zkontrolujte, zda předmět obsahuje "process this message".
  6. Přesunout odpovídající zprávy do složky Smazané položky.
  7. Zobrazit potvrzení pro každou přesunutou zprávu.

Smazat zprávy z složky Exchange

Můžete mazat e‑mailové zprávy ze složky za pomoci IEWSClient->DeleteMessage metoda. Přijímá unikátní URI zprávy jako parametr.

Následující ukázka kódu ukazuje, jak filtrovat a smazat konkrétní e‑mailové zprávy ze složky Doručená pošta na Exchange Serveru na základě kritéria předmětu.

  1. Procházet zprávy ve Doručené poště.
  2. Zpracovat zprávy podle určitých kritérií (v tomto příkladu hledáme klíčové slovo v předmětu zprávy).
  3. Smazat odpovídající zprávy.

Kopírovat zprávy do jiné složky Exchange

Použijte IEWSClient::CopyItem pro duplikování zprávy do jiné složky. Přetížená verze vrací URI nově vytvořené kopie.

Následující ukázka kódu ukazuje, jak vytvořit e‑mailovou zprávu na Exchange Serveru a zkopírovat ji do jiné složky.