rediffusion
11/10/2017 - 9:04 PM

BulkMailDownload()

//Ссылка на онлайн-документацию по объектной модели для всех версий ZennoPoster: //http://zennolab.com/wiki/en:zennoposter:macros-documentation

//Ссылка на онлайн-документацию по объектной модели версии 5.11.4.0: //https://help.zennolab.com/en/v5/zennoposter/5.11.4.0/

project.SendInfoToLog("Запущен проект ZennoPoster.xmlz", true); Thread.Sleep(3000); project.SendInfoToLog("Проект ZennoPoster.xmlz выполнен успешно!", true);

//public static Tuple<string,string,string,string>[] BulkMailDownload
//Предназначение метода: Загрузка (download) сообщений с определённого аккаунта.
//Параметры:
//    string login - Логин для почты (обычно ваш email адрес)
//	string pass - Пароль для почты
//	string server - Сервер почты (mail server). Значение по умолчанию - пустая строка, ZennoPoster попытается определить настройки
//	int port - Порт сервера (server port). Значение по умолчанию: 143
//	bool useSSL - true если использовать SSL; иначе, false. Значение по умолчанию: true
//	EmailProtocol protocol - IMAP или POP3. Значение по умолчанию: IMAP. Член перечисления ZennoLab.InterfacesLibrary.Enums.Email.EmailProtocol
//	int lastHours - Если сообщение старше определённого количества часов, оно не будет возвращено. Значение по умолчанию: 2 часа
//	int maxCount - Максимальное количество сообщений. Значение по умолчанию: 100
//	bool deleteMessages - true если удалять сообщения; иначе, false. Значение по умолчанию: false
//	string proxyString - Строка прокси в формате: login:pass@ip:port ИЛИ ip:port

//Демонстрация:

string strMailLogin = project.Variables["cfg_mail_login"].Value;
string strMailPassword = project.Variables["cfg_mail_password"].Value;

Tuple<string, string, string, string>[] allMails;
allMails = ZennoPoster.BulkMailDownload(strMailLogin, strMailPassword, 
	protocol: ZennoLab.InterfacesLibrary.Enums.Email.EmailProtocol.IMAP, lastHours: 365*24, maxCount: 50, deleteMessages: false);
 
foreach(Tuple<string, string, string, string> tuple in allMails){
    project.SendInfoToLog(String.Format("Письмо с темой {0} от адресата {1}", tuple.Item1, tuple.Item2));
}

//Примечания:
//	1. Преимущество метода BulkMailDownload перед методом MailConfirm - в возможности автоматического определения настроек для подключения к почтовому сервису
//	2. Автоматические настройки для подключения метод получает со страницы https://autoconfig.thunderbird.net/v1.1/
//	3. Содержимое кортежей:
//		tuple.Item1 - тема письма, tuple.Item2 - От, tuple.Item3 - html-сообщение, tuple.Item4 - текстовое сообщение