Почта = Новый Почта; //Почта - предоставляет доступ к почте через встроенный почтовый клиент, работает по технологии MAPI.
Почта.Подключиться("Outlook");
Сообщения = Почта.Выбрать(Ложь,Ложь);
Для Каждого Сообщение Из Сообщения Цикл
Сообщить(Сообщение.Отправитель );
КонецЦикла;
Ну и отправитель в таком виде
"/o=My Corporation/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=user23c84b15"
Как же получить адрес отправителя???
Что характерно, что через Новый ComОбъект("OutLook.Application");
тоже самое
Письмо.Sender.Address
Выяснилось, что в таком виде отправитель, если он из этого же Exchange
Если адрес внешний, то все нормально. Адрес в доступном формате
Осталось узнать как все же получить адрес от Exchange...
Функция GetSenderSMTPAddress( mail) // Outlook.MailItem
Если mail.SenderEmailType = "EX" Тогда
sender = mail.Sender;
Если sender.AddressEntryUserType = 0 или sender.AddressEntryUserType = 5 Тогда
// Outlook.OlAddressEntryUserType.olExchangeUserAddressEntry = 0
// Outlook.OlAddressEntryUserType.olExchangeRemoteUserAddressEntry = 5
exchUser = sender.GetExchangeUser();
Возврат exchUser.PrimarySmtpAddress;
КонецЕсли;
Иначе
Возврат mail.SenderEmailAddress;
КонецЕсли;
КонецФункции
(2) есть такие три буквы CRM... а там есть такое понятие контакт с клиентом. И он то как раз в Outlook
Понятно, что можно в 1С сразу почту принять и обработать
Но если бы это был робот, то понятно
А заменять полноценный мейлер врядле нужно
А так - затянул почту, обработал и получил статистику
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.