How I can get the mail signature (like "sent from my iphone") programmatically.
A signature is simply some constant text automatically added to the end of a message by the software that sent the email. There is no way to programmatically distinguish it from the rest of the message.
There was a tradition where newsgroup and email signatures would begin with a line starting with two dashes to allow for easy automated filtering, but this seems to have fallen by the wayside as use of the internet expanded and certainly is not observed by the automated signatures added by most devices.
Realistically, if you want to filter away the automated signatures, the best thing to do would be to build a list of them and then use that list to recognize them. This won't work for arbitrary signatures, though, only ones on your list.
You can't. There is no publicly documented way to do this in the iOS SDK.
Related
This document here: https://docs.sendgrid.com/api-reference/mail-send/limitations
States the following:
Unicode encoding is not supported for the from field.
The to.name, cc.name, and bcc.name personalizations cannot include either the ; or , characters.
So I tried a test email to see what happens. I put emojis in the From name, and I sent to a To name of "John,;;, Doe;". There was no error and the email was successfully delivered.
Am I misreading these limitations? I want to make sure that what I build is correctly validating what it sends to the API, but these limitations don't seem to be correctly stated.
While I don't know exactly what the limitations are within SendGrid, I would imagine those limitations were written for a reason. It may well be the case that SendGrid itself can handle each of those characters, but the mailbox you are sending to may not. Obviously the test email that you sent handled those characters too, but that may not be the case for all mailboxes and you could cause yourself delivery problems if you try to send messages that conflict with these stated limitations.
I would stick within the guidelines for the best possible outcome.
I'm tasked with creating an Outlook form that will be used to communicate rate changes to our customers, and ask for their approval. The body of the email must have some fields that are required by the sender, such as customer name, and new rate. And the email must have an approval button or similar from the recipient. Its a relatively basic workflow
As I'm researching Outlook forms, I discovered this might be better suited for Outlook templates instead. But I'm new to this, and I'm not sure the difference between the two.
Any help or advice would be much appreciated!
Custom Outlook forms should be displayed on both sides of communication if you really want them working correctly. It is very inconvenient, so this feature is not really used nowadays.
Instead, you may consider using the MailItem.VotingOptions property which returns or sets a string specifying a delimited string containing the voting options for the mail message. This property uses the character specified in the value name, sList, under HKEY_CURRENT_USER\Control Panel\International in the Windows registry, as the delimiter for multiple voting options. As a result the recipient will see possible options to choose on the UI.
When the response comes back you may check the MailItem.VotingResponse property which returns or sets a string specifying the voting response for the mail message. This property is usually set to one of the delimited values returned by the VotingOptions property on a reply to the original message.
And the third solution is to develop a COM add-in which can handle custom data and provide a convenient UI for voting, for example, a custom form region can be developed for that. Again, this solution, like custom Outlook forms, requires installing the software on both sides of communication.
I am using MailKit as SMTP client to send emails.
I see there are two properties XMessagePriority and MessagePriority
what is the difference between these two and does one override the other?
One of the things you'll discover in the world of email is that there are legacy bits and pieces here and there.
This is one of those.
The original "email" specification did not specify a header for designating the priority of a message, so some mail clients began using a non-standard header called X-Priority (non-standard headers always start with X-). (Note: Microsoft products began using X-MSMail-Priority instead. There's some info about it here: https://learn.microsoft.com/en-us/openspecs/exchange_server_protocols/ms-oxcmail/2bb19f1b-b35e-4966-b1cb-1afd044e83ab)
Later, many X.400 message properties were mapped to message headers, including a Priority header but the values were not the same as the ones used in the X-Priority header.
Once a piece of software begins doing something and users like/demand the feature, other software begins to adopt that way of doing something in order to compete. Then, once a real standard is defined, if it isn't identical the the way it was already being done, there are now 2 ways of doing the same thing and software must do both.
You might be thinking, "but doesn't that mean software has to implement both? And if they implement both, why not drop the old way?"
Because old software still exists out there that can only handle the old way of doing things, so in order to be compatible with that older software that may exist, the legacy way of doing things persists.
(And by "mail software", that includes more than mail clients like Outlook or official mail server software like Exchange - it also includes automated shell scripts that admins wrote decades ago that are probably still running because no one has ever bothered to update them if they even know that anything should be updated).
does one override the other?
Yes. No. It all depends on the implementation of the receiving mail software.
I'm using Flask-Mail to send email notifications for events and currently I'm encountering a problem where if two emails of the same subject end with the same thing (which is a rather niche circumstance, but definitely necessary to consider nonetheless), the ending part of the second email will be collapsed by certain mail clients (gmail, for example) that think it's a sign-off or signature or whatever. How do I prevent this?
Currently what I'm doing is generating a random sequence of letters and putting it in a <span style="display:none">...</span> and appending that to the email so the client thinks it's a different footer, but that feels really hacky and I want to know if there's a proper way to do it.
After doing some research, it does not seem as though gmail gives you an option to turn this off. All of the articles written on this topic suggest making your footer unique, which is exactly what you are doing.
Furthermore, this option means that the content of the email does not change at all. This seems to be the best solution.
There is an option in Gmail which allows you to turn off conversation view.
How the grouping occurs is:
The subject must be similar
The sender must be a part of the thread OR in-reply-to must be used
Now to save space, Gmail condenses texts that are same, which is what you see. If you want to turn off conversation view in desktops just navigate to setting -- > generals (tab) for desktop and use the radio button select and press save.
If you are after other devices check this link out.
I'm uploading messages into my IMAP mail server via IMAP store operation. However, I would like to add "comments" to these messages so that when I download these emails again I know the they are created by "store". Basically, I need to add text which will be ignored by the formal semantics of parsing RFC822.
The specification of http://www.ietf.org/rfc/rfc822.txt defines how to add comments but I cannot make it working :(
Does anybody has en example of a RFC822 message with a comment in it?
You are probably looking for IMAP's annotations. However, it's an extension which is far from being common -- quite a lot of IMAP servers do not support it.
It seems that having a special "flag" on each message you created is something which would be enough for you. If that is correct, then simply using IMAP flags (or keywords) is what you're looking for. Simply add one special flag, like thisIsProducedByFooSoftware to the APPEND operation. (You said you were doing that via STORE -- that's wrong, in IMAP, STORE manipulates just FLAGS, it doesn't add new messages. New messages are added by APPEND.)