Jak vytvářet, spravovat a používat distribuční seznamy v Exchange Serveru
Aspose.Email API poskytuje možnost vytvářet a číst distribuční seznamy ze serveru Exchange. Distribuční seznamy lze vytvořit na serveru a také do nich lze přidávat členy pomocí IEWSClient. Tento článek ukazuje, jak pracovat s distribučními seznamy na serveru Exchange.
Vytvořit distribuční seznamy
Následující úryvek kódu ukazuje, jak vytvořit distribuční seznam.
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");
ExchangeDistributionList distributionList = new ExchangeDistributionList();
distributionList.DisplayName = "test private list";
MailAddressCollection members = new MailAddressCollection();
members.Add("address1@host.com");
members.Add("address2@host.com");
members.Add("address3@host.com");
client.CreateDistributionList(distributionList, members);
Načíst soukromé distribuční seznamy
Následující úryvek kódu ukazuje, jak načíst soukromý distribuční seznam.
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");
ExchangeDistributionList[] distributionLists = client.ListDistributionLists();
foreach (ExchangeDistributionList distributionList in distributionLists)
{
MailAddressCollection members = client.FetchDistributionList(distributionList);
foreach (MailAddress member in members)
{
Console.WriteLine(member.Address);
}
}
Vytvořit MailAddress z ID seznamu
Následující úryvek kódu ukazuje, jak vytvořit MailAddress z ID distribučního seznamu.
ExchangeDistributionList[] distributionLists = client.ListDistributionLists();
String id = distributionLists[0].Id;
MailAddress distributionListAddress = new MailAddress("privateDL", true);
distributionListAddress.Id.EWSId = id;
Rozšířit veřejné distribuční seznamy
Následující úryvek kódu ukazuje, jak rozšířit veřejný distribuční seznam.
MailAddressCollection members = client.ExpandDistributionList(new MailAddress("public.distribution.list@host.com"));
foreach (MailAddress member in members)
{
Console.WriteLine(member.Address);
}
Přidat členy
Přidat členy do soukromých seznamů
Následující úryvek kódu ukazuje, jak přidat členy do soukromého distribučního seznamu.
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");
ExchangeDistributionList[] distributionLists = client.ListDistributionLists();
MailAddressCollection newMembers = new MailAddressCollection();
newMembers.Add("address4@host.com");
newMembers.Add("address5@host.com");
client.AddToDistributionList(distributionLists[0], newMembers);
Přidat členy bez výpisu
Následující úryvek kódu ukazuje, jak přidat členy bez výpisu.
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");
ExchangeDistributionList distributionList = new ExchangeDistributionList();
distributionList.Id = "list's id";
distributionList.ChangeKey = "list's change key";
MailAddressCollection newMembers = new MailAddressCollection();
newMembers.Add("address6@host.com");
client.AddToDistributionList(distributionList, newMembers);
Odeslat do soukromého distribučního seznamu
Následující úryvek kódu ukazuje, jak odeslat zprávu do soukromého distribučního seznamu.
ExchangeDistributionList[] distributionLists = client.ListDistributionLists();
MailAddress distributionListAddress = distributionLists[0].ToMailAddress();
MailMessage message = new MailMessage(new MailAddress("from@host.com"), distributionListAddress);
message.Subject = "sendToPrivateDistributionList";
client.Send(message);
Odstranit členy
Odstranit členy ze soukromých seznamů
Následující úryvek kódu ukazuje, jak smazat členy ze soukromého distribučního seznamu.
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");
ExchangeDistributionList[] distributionLists = client.ListDistributionLists();
MailAddressCollection members = client.FetchDistributionList(distributionLists[0]);
MailAddressCollection membersToDelete = new MailAddressCollection();
membersToDelete.Add(members[0]);
membersToDelete.Add(members[1]);
client.DeleteFromDistributionList(distributionLists[0], membersToDelete);
Odstranit členy bez výpisu
Následující úryvek kódu ukazuje, jak smazat členy bez výpisu.
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");
ExchangeDistributionList distributionList = new ExchangeDistributionList();
distributionList.Id = "list's id";
client.DeleteDistributionList(distributionList,true);
Smazat soukromý distribuční seznam
Následující úryvek kódu ukazuje, jak smazat soukromý distribuční seznam.
IEWSClient client = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");
ExchangeDistributionList[] distributionLists = client.ListDistributionLists();
client.DeleteDistributionList(distributionLists[0],true);