I have mailbox "user1#somemail.com" and I manually changed MailItem.Sender field to "user2#somemail.com" and sent it to "user3#somemail.com". I discovered strange situation that i see email in "SentItems" folder in "user1#somemail.com" but "user3#somemail.com" not receive this message. I checked logs in Exchange server and i donæt see any error messages. Just for prof i did the same but not change MailItem.Sender property but used SentOnBehalf standart functionality. And "user3#somemail.com" receive it so issue not in permission. Just for check i used OutlookSpy and compare two emails(one email that i sent using SentOnBehalf standart functionality and outher email where i changed MailItem.Sender). You can see diferrences following. Can somebody say me where is my fault and why user not receive email when i change MailItem.Sender:
The Sender property is not meant to take a string value. You need to set it to an AddressEntry object for a user that has permissions to send from any of the loaded accounts in the current Outlook profile.
See MailItem.Sender Property:
http://msdn.microsoft.com/en-us/library/office/ff869056(v=office.15).aspx
Related
Is it possible to get conversation id and message id of the messages sent by our app on behalf of the user who only given send only permission?
We want to send follow-up mails in the same conversation and there is no way we can do that without message id.
I'm afraid not. You need to have mail.read in order to find the message id and add to the conversation.
Also, it's important to note that the id is mutable and can change for any number of reasons (most commonly the mail item being moved to another folder). It is possible to get immutable identifiers for Outlook resources but this functionality is still in Preview so, for the time being, it really shouldn't be used in a production environment.
in my organization we have a mailbox that receives email from different sources (about 5) everyday, set to track all incoming emails in the CRM.
All the mails are correctly tracked on the CRM every day, except for one that always fails (same source, similar content every day).
If I send the exact same email from another address, the mail is correctly synchronized with the CRM, so I think it could be something related with Exchange.
This is the message I get if I open the mailbox record:
An unknown error occurred while receiving email through the mailbox "xxxxxx".
The owner of the associated email server profile xxxxx has been notified. The system will try to receive email again later.
Email Server Error Code: Exchange server returned UnknownIncomingEmailIntegrationError -2147220970 exception
Looking for this specific message didn't get me any result, while just searching the error code I found out it could be something related to plugins.
Unfortunately there is no plugin that fires on email creation, same for workflows and so on. By the way, sending the email from another address just works fine.
Has anyone ever had such a problem? Is there some place where I can find other logs and dig deeper in the problem?
Thanks in advance.
For anyone else experiencing this issue: I received the error code -2147218683, which is different, but it turns out this was due to the user in question not having the right security role. Gave the account sys admin and the error went away.
I am creating an addin for Outlook.
I want to check some text on sending, but im not sure how to reference it
The text is in the image below and says “Attachment will be sent using...”
If the text equals the text displayed, i want to do something.
Thanks for any advice.
The Outlook object model doesn't provide anything for reading mail tips. But you may consider using EWS for getting mail tips. See Using MailTips in EWS to get the OOF (Out of Office) Status of users with C# and Powershell for the sample code.
FYI MailTips are informative messages displayed to users in the infobar in Outlook Web App and Outlook 2010/2013/2016 when a user does any of the following while composing an e-mail message:
Add a recipient
Add an attachment
Reply or Reply all
Open a message from the Drafts folder that's already addressed to recipients
To configure MailTips for mailboxes, external contacts, and distribution groups, in the Exchange Control Panel, select the mailbox, external contact, or distribution group, click Details, and then in the MailTip section, create the MailTip.
To configure MailTips for mail users and dynamic distribution groups, in Windows PowerShell, use the MailTip parameter on the Set-MailUser and Set-DynamicDistributionGroup cmdlets.
Regardless of whether you use the Exchange Control Panel or Windows PowerShell, two things always happen when you add a MailTip to a recipient:
HTML tags are automatically added to the text. For example, if you enter the following text: This mailbox is not monitored. The MailTip automatically becomes the following: <html><body>This mailbox is not monitored.</body></html>
The text is automatically added to the MailTipTranslations property as the default value. If you modify the MailTip text, the default value is automatically updated in the MailTipTranslations property.
Read more about that in the Configure MailTips article.
Is ist possible for a user connected to Exchange Server via a client (Outlook Web App) to tamper with the e-mails in his mailbox (inbox, drafts, sent items ect.)?
Like modifying e-mail content (text, subject...) or properties (date, time, recipient...).
The core of the question is: If there is an e-mail in the user's sent items folder and this user did not have access to the Exchange Server (neither physically nor remotely, except for his standard user access), how sure (or probable) ist it, that this e-mail has really been sent on that date and time with exactly that text to exactly those recipients and that it had not been planted there at a later date?
Does it make a difference if that user only has access to his account via Outlook Web App or if he also has access via MS Outlook?
Outlook Web App is just a client so it won't allow you to modify a sent email or fake/import one as that is not a valid task for that client. You could do this at the API level using something like EWS or MAPI but that would require knowledge that most users won't have (but most likly they would have access to do it though). The Mitigation to this is if you have Litigation hold enabled https://technet.microsoft.com/en-us/library/ee861123%28v=exchg.141%29.aspx on the mailbox then any changes they did make to a message would be tracked and you would always be able to see the original version. Also if you looked at the message with a MAPI editor like MFCMapi or OutlookSpy there would be tell tails of somebody trying to fake a message like the Creation time not matching the sent time etc and other properties would most likly give it away.
One thing i would suggest is look at your Message Tracking log as they will tell you exactly what was sent and who is was sent to and the time https://technet.microsoft.com/en-us/library/bb124375%28v=exchg.160%29.aspx while these also aren't immutable it would take an administrative access to the server to modify.
I came across this as the only other thing I could find that resembled what I'm asking: http://office-outlook.com/outlook-forum/index.php/t/84123/
I'm sending an email through Office 365's SMTP server as a notification that a form was submitted to my company email address (me#company.com) from our company RSVP email address (rsvp#company.com). I am setting the From Name to be the full name of the person filling out the form and the reply-to email as the person's email address textbox.
Here is an example of what part of the message header might look like:
To: <me#company.com>
From: Test User <rsvp#company.com>
Reply-To: <test.user#gmail.com>
In Outlook, since rsvp#company.com is an actual mailbox within our company, it automatically displays the sender name as "RSVP" (which I suppose is what was set when the mailbox was created). Is there a way to bypass this and display the sender name in the message header instead?
No. Exchange always resolves all sender and recipient names to their primary SMTP address and default name. Just the way Exchange works.
You can extract MIME headers and modify the message sender related properties on the client side after the message is received using Extended MAPI (C++ or Delphi) or Redemption (I am its author - use RDOSession.CreateOneOffEntryID / RDOSession.GetAddressEntryFromID / set RDOMail.Sender and RDOMail.Get_SentOnBehalfOf / RDOMail.Save). Note that OOM will not let you set the sender related properties even using MailItem.PropertyAccessor.