Friday, December 18, 2015

Christmas is coming - add best wishes to your OOF autoreply!

Christmas is just around the corner and a lot of offices in many companies will be closed next week.

If your workplace is no exception and some of the employees will be away, make sure to setup an automatic email reply on your Exchange server. This way you'll keep your customers informed that you are gone and when you'll be back to assist them. 

Additionally it is also a great opportunity to add Merry Christmas and Happy New Year wishes to your autoreply! With MSH Exchange Autoresponder it's easy - you can even add some holiday graphics to your message.



All the best and have a great holiday! - MSH Software Team

Thursday, November 12, 2015

Video Tip - automatic response to a message sent to multiple recipients

In MSH Exchange Autoresponder it is possible to set one autoresponding rule for all user in your company simply by using wildcards in the rule's conditions.
But how the program handles messages that are sent to many users in your organization? Who should be the sender of this automatic reply? Check the short video below for the answer.


Learn more about the program on the MSH Software website or test it for free by downloading MSH Exchange Autoreponder 1.4.

Wednesday, November 4, 2015

Video tutorial - How to configure automatic response with MSH Exchange Autoresponder

Setting up an automatic response rule in MSH Exchange Autoresponder is easy. Don't just take our word for it - check out the video tutorial below to see it for yourself!


Learn more about the program on the MSH Software website or test it for free by downloading MSH Exchange Autoreponder 1.4.

Tuesday, October 13, 2015

Introducing MSH Office 365 Signatures

We are pleased to announce the launch of MSH Office 365 Signatures. This new product lets any organization centrally design and distribute email signatures to all members using Office 365.

Dedicated application to manage all Office 365 signatures.

  • Give your organization's users consistent, professional email signature when they send any email in Office 365
  • Get all user details from your Office 365 directory
  • Manage all signatures from one dedicated application
  • Lite version can be used completely free up to 25 mailboxes. 

Tuesday, October 6, 2015

High availability and backup of Outlook archive

Email in Outlook connected with Exchange mailbox is quite safe. The usual mail storage file (PST) is replaced with a mirror of the data (OST file) saved directly on the company's server. If anything bad happens to your computer, or the OST storage file gets corrupted - no worries, all your data is safe and sound in the central mailbox database.

However it is quite often that the company policy sets the limit to the size of your Exchange mailbox. If you preserve too many messages and reach the full capacity of the storage the server will disable sending any emails from your address.

To help this situation Outlook is fitted with the archiving feature. In short - it automatically saves all Outlook items (emails, tasks, appointments etc.) older than a set threshold to a separate PST file, stored locally on your computer. This way you can keep your Exchange mailbox small and below the company's limit and maintain access to all your old mail as well.

Unfortunately, since the archive PST file is stored locally on your computer, it is not protected the same way as your mailbox. If the hard drive of your PC fails or the PST file is corrupted, all your archived data may be lost. A good idea is configuring the archiving function to store the PST data file directly on the company server (e.g. in a network shared folder). The drawback is that when disconnected from your company's network you cant access the archive.

To ensure your data safety and provide high availability access to your old emails try a simple method described below. It automatically copies your local archive file to the defined location every time you log into your computer.

Step 1.


Open Windows Notepad and enter the following text in it:

copy "C:\Users\Luke\Documents\Outlook Files\Archive.pst" g:\
Timeout 20

Make sure to replace "C:\Users\Luke\Documents\Outlook Files\Archive.pst"  with the actual path to your own archive PST. If you want to copy all files from that location simply replace the file part (Archive.pst) with the wildcard *.*

Also make sure to replace g:\ with the drive letter of your mapped network share, or any other folder of your choice.

The Timeout 20 command gives additional delay after completing the process, so you can see its results.

Step 2.


Save the above text to your hard drive as a bat file, e.g.: copy-pst.bat . You can test the script by double clicking it.



Step 3.


Launch the  Task Scheduler tool by typing its name in the Windows Start menu search field. Alternatively you can find it in the Windows Control Panel, Administrative Tools.


Step 4.


Click Create Basic Task in the right hand side panel. This launches the configuration wizard.



Step 5.

Follow the configuration wizard. After entering the name of the task and a short description hit the Next button. The following window lets you choose when the task should be triggered and launched. Select  When I log on and hit Next.



In the third step of the wizard select the action - mark Start a program and hit the Next button again.




In a submenu window that opens navigate to the bat file you have created earlier by clicking the Browse button. Click Next and then the Finish button to complete the wizard.



That's it! You have just created a system task that will run the archive PST file copying script every time you log into your windows account.

It keeps the archive locally on your machine, so it is always accessible even outside your company's network and makes a backup copy of it to the safe spot of your choice.

See also our other hints about:

How to set up internal autoresponder in Exchange Server
Quick commands to check Exchange Server health
How to check out of office status in Exchange

Monday, September 28, 2015

Summer is over - turn off your autoresponder!

Summer is almost over and so are many annual leaves. When you or your colleagues are back at work from holidays, first thing you normally do is to check the email.

Quite often the sheer amount of unread messages keeps you so busy, that shutting down your out off office automatic message does not even come into your mind.
The result is confusion and frustration of people that want to reach you (presuming you're back at office) but instead receive the usual "I'll be off till..." .
Therefore, instead of jumping head forward into the sea of unread mails, make sure that your autoresponder is off.

To make things even easier you can simplify the whole process launch MSH Exchange Autoresponder program which will deactivate Out-Of-Office messages automatically at specified date. With MSH Software it is simple to centrally manage all your users' absence autoresponders.



Download the free trial of MSH Exchange Autoresponder from our website and check it out!

Wednesday, May 27, 2015

New version of MSH Exchange Autoresponder released!

We have recently published a new version of the MSH Exchange Autoresponder tool.



This release contains a number of bug fixes and also a couple of new features:

- New installation wizard with automatic transport agent deployment;
- New feature - add "REPLY-TO" field to your autoreply message header;
- New feature - select to what email address in the message header the response should be sent - "FROM" or "REPLY-TO";
- Refreshed, improved interface;
- And more.

Check the MSH Software website and download the free trial to test the software for yourself.

The update is free of charge for all users that own the license for 1.x version of the program.

Download MSH Exchange Autoresponder 1.4
How to update from 1.x to 1.4 version of the program

If you have any questions - feel free to contact us at contact@mshsoftware.com.



Friday, May 8, 2015

Useful PowerShell keyboard shortcuts for instant script writing

PowerShell is a mighty tool that allows to speed up and automate tedious, repetitive tasks, that normally are executed via GUI (e.g. creating large numbers of users in Active Directory).

Since the tool is operated mainly by entering text commands with the keyboard, it is good to know a couple of useful shortcuts that can let you work even faster.

Below you can find a list of such key combinations.

Tab Automatically expands and autocompletes your command. One of the most useful keys in PS.

Alt+F7 Remove all commands from the history (all entered commands are preserved and accessible by tapping "up" or "down" arrow keys.

Up arrow key Navigate the command history back.
Down arrow key Navigate the command history forward.
Ctrl+End Removes characters to the right of the cursor.
Ctrl+Left arrow key Jump the cursor to the left by one word.
Ctrl+Right arrow key Jump the cursor to the right by one word.

Ctrl+C Terminate execution of the command - useful when you see that the command goes in a loop or when you just want to stop its operation before it finishes.

Ctrl+S Pause/resume displaying of the command's output.

F1 Insert your last command one character at a time.
F2 Insert your last command up to the character you type in the prompt window.
F3 Insert your last command at the end of your currently entered command.
F4 Delete everything in your command between the current cursor position and the character you type.
F5 Navigate the command history back (same as with "up" arrow key).
F7 Shows your command history list, which you can navigate with "up" and "down" arrow keys. To run selected command - hit "Enter". To paste it into console - hit the "right" arrow key.
F8 Use this key after entering a text in the console - tapping F8 will search your command history for matches.

These are just a couple of a number of available keys and shortcuts. More you work with the PS console more useful they become - nothing beats the feeling when a complicated script is created with just a couple of keystrokes.

Wednesday, April 22, 2015

How to set up internal autoresponder in Exchange Server

When there is a need for an automatic email reply with information intended only for internal recipients MSH Exchange Autoresponder comes in with help. In a couple of easy steps, you can set up an automatic reply that will be sent only when the original sender is from inside of your company,

Step 1.

After launching the program, click the Add button to launch the new rule wizard.


Step 2.

Enter the message in the Auto reply message body: field.


Step 3.

In the Conditions tab click the Add button and select the Message Sender option. In the new window enter "*@company.com" string, replacing the "company.com" part with your own company domain name. Then click the OK button.

The "*" symbol is a wildcard that substitutes any string of characters, which means that the condition is met (and in the result the autoreply is sent) when the email contains any string of characters in front of the "@" symbol.



Step 4.

In the Conditions tab click Add again and select Message Recipients. In the new window, in the Email address pattern field enter the address of your choice. In our example, it is IT department. Save this setting by clicking the OK button.


Back in the Conditions tab make sure, that the All conditions must met is selected.

Step 5.

Finally, go to the Rule Name tab, enter the name of your rule and click the OK button to save all changes.


From now on, any internal user will receive the automatic reply when sending a message to the IT department. At the same time, no autoresponder is sent to any external email address, thanks to MSH Exchange Autoresponder - download the tool and check for yourself how you can improve your automatic replies management, you can test it completely free of charge.

You can also read:


Tuesday, April 14, 2015

Quick commands to check Exchange Server health

Microsoft Exchange Server is a reliable piece of software. However, every system bears a risk of malfunction. As the Murphy's law says: "The larger the system, the greater the probability of unexpected failure.".

It is, therefore, good to know a couple of simple commands that allow to check up your server's health quickly. Whether you just want to check things up or when one of your users inform that "Email is not working!" use methods below for the quick status report.

Please note that all commands below needs to be executed in Exchange PowerShell console, either directly on the server or via the remote PS session.

Test-ServiceHealth

This command returns the status of all critical services required by the server to process and send/receive messages. The result might look as below:


When the line ServicesNotRunning shows any result, similarly as on the screen above (MSExchangeTransport service is not running), then there might be a problem that needs to be investigated. The malfunction pictured on the screenshot is critical. Without MSExchangeTransport service running, no email can be delivered/received. The solution is to start services that are not running and analyze the possible cause of the problem in system logs.

Get-MailboxDatabase -Status | Format-List name,server,mounted

With this command, you can check whether your mailbox database is mounted, as it is another critical component of your Exchange. Without mounted mailbox database, no email can be delivered or received. The result below shows a healthy situation - the mailbox database is mounted:


Get-Queue | Select Identity,Status,MessageCount

To check if your email queue is not growing uncontrollably, causing message processing delays, use the command above. It'll present all available queues on the server and their respective loads.



If you notice that the Unreachable or Submission queues are showing unusual numbers of waiting emails then it's time to investigate. Usually restarting the transport service is enough to push emails forward, however even if this helps, a full server diagnostic is recommended to find the original cause of the mail queuing (which might be e.g. a failing transport agent).

Ping www.mshsoftware.com

Sometimes the problem with email delivery is so basic, that we overlook it while searching for more complicated sources of the issue. Without the internet connection, no email leaves our server. Run the command above to check if there is an access to the web.


A broken router or malfunctioning network switch, or just simply unplugged lan cable might be a general cause of the problem. As the oldest IT joke goes - "Are you sure that your computer is plugged into the power source?".

These couple of commands are just a quick and dirty method to check up on your server's health. A good thing about them is that you can run these cmdlets even remotely, from your house, at 3:30 AM, after receiving a call from the nightshift employee "Email is not working!".

You can also read:


Thursday, April 2, 2015

Happy Easter (while out of the office)!

Holidays are coming and Easter is just around the corner. Finally, we'll get a bit of relief from our daily tasks, yay!

A couple of days off can do miracles to your productivity. Then, after holidays are off, you come back to work,  all charged up , open your email and one of the first messages is "WHY YOU'RE NOT ANSWERING MY EMAILS!". In an instant all your positive energy is gone, you feel tired again, and you already have to deal with a problem, which is additionally overdue.

Remember, not all people in the world spend Easter at home. Be kind - inform them that you are not in the office by setting up a simple auto-response.

And if you are a system admin you can plan ahead and set that OOF for your users centrally with MSH Exchange Autoresponder. Not only you can cover selected users (or even group of users) with an automated response, you can also schedule, when the should fire up and be active.

You can even build a nice HTML powered message with graphics, like this Giant Pink Rabbit On the Mountain, that will cheer your clients up and ease their pain of waiting for you to be back.

Once you are sure that you are safe and covered - take off that tie, have some chocolate egg and get some R&R

All the best and Happy Easter!


You can also read:

How to avoid common mistakes and create a good automatic reply
MSH Exchange Autoresponder - Installation Quick guide
Good practice: Always confirm you received an email to keep your customers happy

Thursday, March 26, 2015

Running Exchange PowerShell session from a workstation

PowerShell, as the name suggests, is a powerful tool. In our previous posts, we have explained how to use it to modify Exchange transport agents, check email statistics on the server etc.

Normally you can simply run the Exchange console directly from the server. However, there is also a method to do it from a workstation.

This way you can avoid the whole process of running the remote desktop session and starting the console on the server. You just run the console on a workstation machine, skipping the whole RDP part.

First thing to do is to download and install Windows .Net Framework 4.5 and  Windows Management Framework.

Once it's all installed launch the PowerShell console on the workstation (make sure to start it with the "Run as Administrator" option) and enter the following:

Set-ExecutionPolicy RemoteSigned

The above command allows running scripts on the workstation.Agree to change this policy by entering "y" and hitting the Enter key:


Next command is:

$Login = Get-Credential

It allows to enter your Exchange administrative login credentials and save them as the $Login variable.

Next command is:

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://<Exchange Name>/PowerShell/ -Authentication Kerberos -Credential $Login

Make sure to replace the <Exchange Name> part of the command with the FQDN name of your Exchange server.

The last command is:

Import-PSSession $Session

which imports all necessary Exchange cmdlets.

You are now ready to use commands, such as Get-TransportAgent to administer your Exchange server remotely, directly from the PS console.

Thursday, March 19, 2015

MSH Exchange Autoresponder - Installation Quick guide

In the following article, we will explain step by step how to deploy and configure MSH Exchange Autoresponder.

Before you begin make sure that you are performing all below steps logged on directly your Exchange Server with administrative credentials.

Step 1


Download the program from the MSH Software website and save it to your desktop.


Make sure to select one that is compatible with your Exchange version as the program is available in two packages - one for Exchange 2007/2010 and the other for Exchange 2013.



Step 2


Once the file is downloaded click it with the right mouse button and select Extract all... In the new window click the Extract button.



Step 3


Navigate to the folder created by the ZIP file extraction. Locate the MSH.Exchange.Autoresponder.Admin file and double-click it.


The administration panel of the MSH Exchange Autoresponder will launch.



Step 4 


Install the transport agent required for the program operation by clicking the Configure button in the main program first. Next, in the new window click the Install button.


When the program asks to restart the transport service click the Yes button. After a couple of seconds, the list of installed agents should update and show the MSH Exchange Autoresponder agent.

Step 5


Close the Exchange Transport Agents and configure your first automatic response by clicking the Add button, which will launch the configuration wizard.


Set up the autoresponder that suits your need, e.g. as explained in our other article about confirming email receiving by your company.

Finish

Congratulations! You have successfully deployed the automatic response solution and configured your first autoreply in MSH Exchange Autoresponder

Make sure to contact our support service if you have any questions or suggestions - we are always happy to help!


Wednesday, February 25, 2015

Starting Exchange Management Shell in Windows PowerShell

In our previous blog posts (e.g. How to check the number of autoreply emails sent from Exchange) we described various tools and methods utilizing Exchange Management Shell. Since EMS is nothing more than a normal PowerShell console, just with special Exchange module loaded it should be possible to run these Exchange cmdlets (e.g. get-transportagent) directly in the Windows PowerShell, without looking for the EMS shortcut. This is also helpful when you mistakenly launch Windows PowerShell console with the Exchange cmdlet in mind only to discover that it does not work.

Below you'll find two alternative methods of running Exchange PowerShell instead of using the Start menu shortcut. Please note that these solutions work only when you're logged on directly on the Exchange Server.

1. Execute a special script from the EMS shortcut directly in the PS console.


If you right click the EMS shortcut and open its properties you'll notice that it contains specific PS script file as a parameter:


A full name of this script parameter is as follows:

. 'C:\Program Files\Microsoft\Exchange Server\V14\bin\RemoteExchange.ps1'

Therefore, it is a matter of running it in the standard PowerShell window. Make sure that you launched the PS console with the administrative privileges. Additionally if you want to run it on Exchange 2013 make sure to replace the "V14" part of the script path to "V15".


As the resulting screen suggests - the Exchange Powershell cmdlets are successfully imported. However, there is one last step to perform. Run the following command to complete the EMS launching process:

Connect-ExchangeServer -auto

You are now ready to run typical Exchange cmdlets.

2. Add the Exchange snapin in the PS console.


This method is fairly easy as it requires running only one command in the normal PowerShell console:
add-pssnapin Microsoft.Exchange.Management.PowerShell.E2010

After the snapin loads, you are ready to run cmdlets. Unfortunately, this method does not support all available Exchange commands.

There is also another way of running Exchange Management Shell in the standard Windows Powershell console via Powershell Remoting. With this method, you can run scripts on your server even from the remote workstation without the need to launch it directly on the Exchange machine.

We'll cover PowerShell Remoting to the Exchange server in the next blogpost - stay tuned!

You can also read:

Thursday, February 12, 2015

How to check out of office status in Exchange

If you need to check an automatic Out-Of-Office (OOF) reply status for the given mailbox and you do not want to launch Outlook, or simply do not have it installed on the server, there is a quick way to do so. Run the following script in the PowerShell console:

Get-MailboxAutoReplyConfiguration "username"

Replace the "username" phrase with the actual user mailbox name to get the result. 

Among other properties, such as the body of the automatic message or activity timeframes, the command returns also the information, whether the automatic reply is enabled or disabled. You can see it in the line titled AutoReplyState.

To get the automatic reply status for all mailboxes in your organization you can use the following command:

Get-Mailbox | Get-MailboxAutoReplyConfiguration

The Get-Mailbox command gathers a list of all mailboxes from your server. The result is then transferred (piped) with the "|" symbol to the Get-MailboxAutoReplyConfiguration.

To filter and show only these users, that actually have the Out-Of-Office enabled, run the following cmdlet:

Get-Mailbox | Get-MailboxAutoReplyConfiguration | Where-Object { $_.AutoReplyState –eq “scheduled” }

As you can see in the above example, another level of data "piping" is applied. The list of all mailboxes is "piped" to the Get-MailboxAutoReplyConfiguration, which is then transferred to the filtering command, that shows only mailboxes with the OOF status "scheduled"

You can also easily disable the OOF message for the selected mailbox:

Set-MailboxAutoReplyConfiguration -Identity "username" -AutoReplyState Disabled

If the PowerShell scripting is not comfortable enough for your daily use, or you simply prefer a graphical user interface to manage automatic replies, you can use a third-party tool, such as MSH Exchange Autoresponder. With it you can easily and centrally manage not only OOF messages, but also first contact autoreplies, order reception confirmations, set up keyword triggering conditions, schedule activity timeframes and more.


Monday, February 2, 2015

How to check the number of autoreply emails sent from Exchange

In the following guide, we'll show you how to quickly check the number of autoresponder emails sent from your server with a single PowerShell cmdlet.

These statistics might be used to check, whether your office's working hours cover your customer's activity, the amount of traffic that is reaching your absent users and more.

Also with this script you can check how many times the MSH Exchange Autoresponder was triggered.

Start your Exchange Management Console first. Enter the following command in it:

Get-MessageTrackingLog -Start "02/02/2015 18:00:00" -End "03/02/2015 06:00:00" -Subject "Autoreply" -Eventid Send | Measure-Object 

The result is the number of emails, that were sent between 6:00PM 02/Feb/2015 and 6:00AM 03/Feb/2015, and contained the word "Autoreply" in their subject.

Simply replace values of the following parameters to get your own stats:

  • Start - the beginning of the date/time range, where the script looks for matching emails
  • End - the end of the date/time range 
  • Subject - the phrase that the script looks for in the subject field of analyzed messages. For autoreplies it is often the "automatic response" phrase or "Autoreply"
  • Eventid - the state of the message, whether it was sent (Send) from your server, received (Receive) etc. 

The result of the Get-MessageTrackingLog command is additionally "piped", redirected (with the "|" symbol) to the Measure-Object command, which simply counts all the matching messages. Without that command, you would receive a full list of all emails meeting the search criteria.

Thursday, January 22, 2015

Good practice: Always confirm you received an email to keep your customers happy

When a customer sends an email to a company, no matter if it is a support request, pricing question, or business partnership proposal, he (or she) usually wonder: "Have they received it? Will they read it? When will they answer?".

If there is no answer from you for longer than a couple of hours, most probably you will soon see another email hitting your mailbox: "Please confirm you received my message".  Things can get even worse when the customer's matter is urgent. Your lack of response makes you look rude, or even ignorant, not caring about your customer's problem. This is a quick way to lose your reputation and eventually - your customers.

Therefore, it is good to quickly respond and confirm receiving the message. But what to do when there are tens or hundreds of emails reaching your Exchange server? The answer is - automate the task and set up a simple auto-reply that will send the confirmation email, while you can lean back and relax.

With MSH Exchange Autoresponder it is a simple, 4-step process:
  1. In the main window of the program click Add to create a new autoresponder rule.


  2. In the Add New Rule wizard, in the Auto Reply tab, create your confirmation email. Make sure to keep the message short and informative.



  3. Decide, when the rule should be activated by setting up its Conditions, e.g. your support team's
    mailbox address. This way, when your customer sends a message to the support dept, it will be automatically answered with your confirmation.


  4. Leave other options unchanged and save your rule by clicking the OK button.
And voila! You have now a machine doing the hard work and, at the same time, keeping your customers assured that you received their feedback. Your company's email communication looks professional and your reputation is maintained. Lastly, do not forget to make sure that your support team keeps the promise and responds to your customer with a solution!

Follow the link to learn more about MSH Exchange Autoresponder.

Friday, January 16, 2015

What is Exchange transport agent and how to change its settings with PowerShell?

Microsoft Exchange server allows to access the message transport pipeline with transport agents. They are small programs that have a direct access to messages processed by the transport service of Exchange.

This is especially useful when you need to e.g. scan contents of incoming emails for spam, detect viruses or trigger any other action with the information found in the message.

MSH Software Exchange Autoresponder also works utilizing the transport agent. When the message contains a specific keyword or is sent from, or to the specific email address it performs an action and sends a reply.

To check the list of currently installed agents on your Exchange server run the following command in the PowerShell console:

Get-TransportAgent

The resulting list shows three columns:
  • Identity - name of the transport agent,
  • Enabled - the state of the agent. True means that the agent is turned on,
  • Priority - the order in which the message is checked by transport agents. When the agent is set to priority 1 it means it will process the message first.

PowerShell (PS) console also allows to change various settings od these agents, most commonly to disable or enable them, or change their priority.

To disable specific agent, e.g. MSH Exchange Autoresponder you need to run the following command in PS:

Disable-TransportAgent -Identity "MSH Exchange Autoresponder"

Enabling the agent is very similar:

Enable-TransportAgent -Identity "MSH Exchange Autoresponder"

To change its priority run the command:

Set-TransportAgent -identity "MSH Exchange Autoresponder" -priority 1

Note that all other agents will automatically change their priority to match the new situation. In the above case, the priority of the rest of available agents will be changed up by one position.

Instead of the PowerShell console you can use the graphical interface of MSH Exchange Autoresponder. It's much easier and allows performing described actions with just a couple of clicks:

Exchange transport agents' settings window in MSH Exchange Autoresponder
Use graphical interface to manage Exchange Autoresponder transport agent.

Click here if you want to learn more about MSH Exchange Autoresponder.



Wednesday, January 7, 2015

How to avoid common mistakes and create a good automatic reply

The difference between the usual email and an automatic response is that the latter is much more annoying for the original sender. Not only it says, "Sorry, you need to wait for the answer" but also bears the same negative experience for the end user as the automated phone system or the answering machine - it is not from a human being.

To minimise this bad impression, it is good to create your automated reply according to the usual email etiquette and using a bunch of tips described below.

  • Make the response short and concise. Include only the most important information - nobody likes to read an elaborate email just to learn that it was received or that it'll be answered after you are back from your annual holiday.
  • Make sure to include an alternative contact for urgent matters. Whether it is your supervisor or your colleague it is good to include their phone number or email address. After their consent of course.
  • Avoid obvious and usual sentences. Responding with "I have received your email" is stating something that obviously happened. Even if it's automatic message from the customer support mailbox it's better to write something less "duh", such as e.g. "Your email is being currently processed by our mailing/CRM system". 
  • Do not promise a reply "As Soon As Possible". ASAP means that the original sender should receive a message from you within a couple of minutes. Or hours. Or days. Unless it is an OOF message and you know when you are back in the office it is better to avoid ASAP. However, if you really want the sender to know when she or he should expect you reply it is better to state "I'll respond within next 24 hours". 
  • Inform why the automatic response is sent. The most common statement used in auto responses is "This is an automatic message". It is good to put it right at the beginning of your email together with a short explanation why it's the automatic response. E.g. "This is an automatic message from our CRM/mailing system", "This is an Out Of Office message", or "This is an automatic reply - your order has been received".
  • Make the reply a bit funny. A good joke or funny statement can remove some of the bad experience. Make your recipient smile with e.g. " I am away for three weeks as I joined the circus." or " I cannot reply at this moment - someone stole my keyboard." Keep in mind however that this kind of funny message might create a completely opposite effect, depending on cultural differences or the urgency of the message. Make sure to not annoy your recipient with rude or too elaborate jokes. 
  • Take time difference into consideration. If you receive messages from different spots around the globe, let them know about the time difference by adding the time zone abbreviation (GMT, EST, etc.), or even a link to the online time converter.
  • Inform about your availability. If you are not working 24/7 then it is good to schedule your autoresponder's activity periods. Also adding "I am available between 9:00 am and 5:00 pm." to the message is a good practice.
  • Write a message you would like to receive. This is the ultimate hint - try to recall all the worst autoresponder messages you received and create an honest, straight to the point and informative mail that you would love to receive.
Nobody likes to receive an automatic response, especially when waiting for the real reply. With the above tips and common sense you can create the autoresponder that won't leave the original message sender stranded or frustrated, and also saving your good reputation.