Использование выкупа для отправки в качестве другого пользователя

Когда я просматриваю внешний вид, я вижу свой почтовый ящик, а также дополнительные почтовые ящики "бизнес-функции". Одним из них является "отказ"

Я написал консольное приложение, которое проходит по нескольким из этих функциональных почтовых ящиков (перечисляя папки в моем сеансе) и захватывает все письма, чтобы затем я мог просматривать их и выполнять действия в зависимости от почтового ящика, темы и тела.

В одном случае мне нужно ответить на электронное письмо, чтобы сказать, что они попросили отписаться, но я не могу найти электронное письмо, которое они использовали (или предоставили в теле) в нашей базе данных, и могут ли они ответить с правильной почтой. Это происходит, когда люди пересылают почту и забывают (а мы получаем смешное количество!)

В приведенном ниже коде OutlookItem является пользовательским классом, а не классом выкупа или внешнего вида.

Когда я использовал:

private void replyToMail(OutlookItem item)
{
    RDOSession session = new RDOSession();
    session.Logon(null, null, null, true, null, null);
    RDOMail thisItem = session.GetMessageFromID(item.EntryID, item.StoreID, null);
    RDOMail reply = thisItem.Reply();
    reply.Subject = "Automated Response - Could not complete unsubscribe";
    reply.Body = "This is an automated response ...";
    reply.BCC = "test@our-domain.co.uk";
    reply.Send();
    session.Logoff();
}

почта отправляется нормально, но отправляется с моего адреса, а не с optingout@our-domain.co.uk

если я использую:

private void replyToMail(OutlookItem item)
{
    RDOSessionClass session = new RDOSessionClass();
    session.LogonExchangeMailbox("optingout", "big.ol.mailserver");
    RDOMail thisItem = session.GetMessageFromID(item.EntryID, item.StoreID, null);
    RDOMail reply = thisItem.Reply();
    reply.Subject = "Automated Response - Could not complete unsubscribe";
    reply.Body = "This is an automated response ...";
    reply.BCC = "test@our-domain.co.uk";
    reply.Send();
    session.Logoff();
}

Выдает исключение о том, что почтовый профиль не настроен

Так как же использовать погашение, чтобы ответить на сообщение и контролировать адрес отправителя?

Спасибо заранее...

1 ответ

Решение

RDOMail-свойства, соответствующие отправителю сообщения, называются SentOnBehalfOf*, Если вы можете, установите его по EntryID (т.е. SentOnBehalfOfEntryID) или назначив соответствующий RDOAddressEntry объект непосредственно к SentOnBehalfOf-имущество. Установка только SentOnBehalfOfName-свойства рискует двусмысленность имени.

Установка этого параметра требует, чтобы учетная запись, используемая для входа в хранилище Exchange, имела разрешения "Отправить как" для записи в адресной книге, от имени которой следует отправлять сообщение.

Другие вопросы по тегам