2013-05-17 1 views
1

Je développe actuellement une application qui gère automatiquement le courrier pour les boîtes aux lettres. Nous utilisons l'outil Outlook Redemption et nous connectons avec un compte de service à plusieurs boîtes aux lettres Exchange.Transférer RDOMail à partir de l'adresse de messagerie d'origine à l'aide d'Outlook Redemption

Case

Le problème auquel nous sommes confrontés est l'acheminement du courrier de la boîte aux lettres d'origine. Supposons que le compte de service 'A' gère la boîte aux lettres partagée 'B' et transfère le courrier. Je voudrais que l'expéditeur soit l'adresse de courrier électronique de «B», mais quand je reçois le courrier, l'adresse de courrier électronique de «A» apparaît comme expéditeur.

code source

// Initialize the session with the service account. 
_session = new RDOSession(); 
_session.LogonExchangeMailbox(configurationSettings.MailAddress, configurationSettings.Url); 

// Connect to the target mailbox and retrieve mail message. 
RDOStore store = _session.Stores.GetSharedMailbox(targetMailBox); 
RDOMail originalMailItem = store.GetMessageFromID(entryId); 

// Creates a forwarded version of the mail. 
RDOMail forwardMailItem = originalMailItem.Forward(); 

// Set sender to target mailbox owner. 
if (store is RDOExchangeMailboxStore) 
{ 
    forwardMailItem.Sender = ((RDOExchangeMailboxStore)store).Owner; 
    forwardMailItem.SenderEmailAddress = targetMailBox; 
} 

// Set recipient and send. 
forwardMailItem.Recipients.Clear(); 
forwardMailItem.Recipients.Add(forwardMailAddress); 
forwardMailItem.Send(); 

Questions

  • Quelqu'un at-il un indice sur une solution?
  • Si cela ne fonctionne pas, est-il possible d'obtenir l'adresse mail de 'B' dans la règle 'Au nom de'?

Merci d'avance!

Répondre

1

Le problème est que le message transféré est créé dans le magasin principal dans le profil, pas la boîte aux lettres de délégué. Outre la définition de la propriété Sender, avez-vous essayé de définir également la propriété SentOnBehalfOf en plus de la propriété SentenderSecurity?

+0

Merci pour votre réponse! J'ai essayé de définir cette propriété, mais dans ce cas, il semble que le message ne soit pas envoyé du tout ... sans aucune erreur. Est-il possible de créer le message transféré dans le magasin partagé? Merci!! –

+1

Vous pouvez enregistrer l'objet RDOMail renvoyé par Forward(), puis le déplacer vers la boîte aux lettres partagée (RDOMail.Move - Gardez à l'esprit Move() renvoie la nouvelle instance de l'objet RDOMail que vous devez utiliser). –

Questions connexes