High priority emails
There are several different email headers that make email high priority.
Most correct is Priority header, but also Importance is used.
Outlook uses X-Priority header.
Mail.dll email library offers simple solution of this problem: PriorityHigh() method.
The following code sends high priority email, that has all mentioned above headers set accordingly:
// C# version:
MailBuilder builder = new MailBuilder();
builder.Subject = "This is important";
builder.Html = "<html>....</html>";
builder.From.Add(new MailBox("alice@mail.com", "Alice"));
builder.To.Add(new MailBox("bob@mail.com", "Bob"));
builder.PriorityHigh();
IMail email = builder.Create();
using (Smtp client = new Smtp())
{
client.ConnectSSL("smtp.example.org");
client.UseBestLogin("alice@example.org", "password");
client.SendMessage(email);
client.Close();
}
and as usual VB.NET code:
' VB.NET version:
Dim builder As MailBuilder = New MailBuilder()
builder.Subject = "This is important"
builder.Html = "<html>....</html>"
builder.From.Add(New MailBox("alice@mail.com", "Alice"))
builder.[To].Add(New MailBox("bob@mail.com", "Bob"))
builder.PriorityHigh()
Dim email As IMail = builder.Create()
Using client As Smtp = New Smtp()
client.ConnectSSL("smtp.example.org")
client.UseBestLogin("alice@example.org", "password")
client.SendMessage(email)
client.Close()
End Using
Using fluent interface:
// C# version:
using Fluent = Limilabs.Mail.Fluent;
Fluent.Mail.Html("<html>....</html>")
.Subject("This is important")
.To("to@example.com")
.From("from@example.com")
.PriorityHigh()
.UsingNewSmtp()
.Server("smtp.example.com")
.WithCredentials("user", "password")
.WithSSL()
.Send();
' VB.NET version:
Imports Fluent = Limilabs.Mail.Fluent;
Fluent.Mail.Html("<html>....</html>") _
.Subject("This is important") _
.To("to@example.com") _
.From("from@example.com") _
.PriorityHigh() _
.UsingNewSmtp() _
.Server("smtp.example.com") _
.WithCredentials("user", "password") _
.WithSSL() _
.Send()
PriorityLow() method is also available.
It’s also really easy to check the email’s priority with GetGenericPriority.
GetGenericPriority checks Priority, Importance and X-Priority headers.
// C# version:
IMail email = new MailBuilder()
.CreateFromEml(imap.GetMessageByUID(uid))
GenericPriority priority = email.GetGenericPriority();
if (priority == GenericPriority.High)
{
// Your code goes here
}
' VB.NET version:
Dim email As IMail = New MailBuilder() _
.CreateFromEml(imap.GetMessageByUID(uid))
Dim priority As GenericPriority = email.GetGenericPriority()
If priority = GenericPriority.High Then
' Your code goes here
End If