Wow, what a long title for a blog post! Due to a customer request I built the solution mentioned in the title some days ago. It works very good and satisfies the customers needs. What it does? It allows very flexible Work Items handling by mail. But read more …
There are two ways to create Incidents by mail – one is the default function that is included in the product, the other one os the Exchange Connector. Let’s first take a look at the two methods.
Default Incident-by-Mail function
Service Manager allows the creation of new Incidents by Mail which is very helpful to unburden your IT staff. The User has the possibility to just send an email to a specific address which then automatically creates an Incident. To make this work, you can install the SMTP Service on the Service Manager Management Server and share the folder where the SMTP Service stores the incoming mails. Now configure a mail address or a mail domain that you SMTP Service is responsible for. The easiest way to go is to create a Sub-Maildomain of you company mail domain. In our case, the main mail domain is itnetx.ch, so the one for Service Manager would be something like scsm.itnetx.ch, the final address for instance email@example.com. Make sure that all mails that are sent to this domain are forwarded to the Service Manager SMTP Service. This means that you must configure Hub Transport Rules on your Exchange Infrastructure. Forward all mails that are sent to *@scsm.itnetx.ch to the Service Manager SMTP Server.
Now, Service Manager needs to be configured to catch all mails that are sent to the configured domain. For this, first share the folder where the mails will be stored and make sure that the Service Manager Service Account has modify permissions. In the Service Manager Console (Administration, Settings, Incident Settings) you can specify the paths to the folders and then enable the function.
When a user now sends a mail to firstname.lastname@example.org, it will be forwarded to the Service Manager SMTP Service, stored in the drop folder and then picked up by Service Manager (the message file is then deleted). The mail subject becomes the Incident title, the mail body becomes the Description, the mail sender becomes the affected user and the complete email including all pasted graphics will be attached to the Incident in eml-format.
This methods works great, but the problem is that it cannot do more than just create Incidents. It’s not possible to update Incidents with additional information or resolve Incidents by mail. Therefore the Exchange connector was released.
The Exchange Connector is an optional component that was shipped in January 2011 as part of a Resource Kit. It allows the following:
- Create incident from email
- Update incident action log from email
- Resolve or close incidents from email
- Approve/reject change requests from email
- Update change request “action log” from email
- Mark manual activities completed from email
- Add email file attachment to work items as attachments
- Send notifications to users from the console
After downloading and installing the Exchange Connector, create a mailbox for the Service Manager Workflow Account and assign the preferred mail address, for instance email@example.com. Then configure the Exchange Connector in the Service Manager console.
Every mail sent to this mailbox (e.g. firstname.lastname@example.org) will create a new Incident. But If you send a mail to that mailbox that contains an ID (in brackets) of an existing Incident in the subject line, the action log of that Incident will be updated with the text in the mail body. Beside this, it is possible to resolve or close Incidents by sending emails back that contain a specific keyword in the mail body, e.g. [Resolved] or [Closed]. The connector can also handle Change Requests and Activities, but in this blog post I will only cover the Incident relation functions.
So, the Exchange Connector seems to have much more functionality than de default Mail-to-Incident function as it allows also updating and resolving Incidents, as well as handling other Work Items like Activities. But it has one important disadvantage: when creating new Incidents with the Exchange Connector, the complete mail is not attached to the Incident. This means, that you could lose information that your users might want to send you to help solving the Incident.
A solution can now be to combine the two functions together to get the best of both worlds. Here’s how it works (indeed there are multiple ways to achieve the goal).
Combination of both methods
For combining you can now do the following:
- Configure both functions as described
- Configure Exchange Hub Transport Rules that do the following: Forward all Mails sent to email@example.com to firstname.lastname@example.org exept the ones that have the pattern “[IR” in the subject line
What happens now?
- If a user sends a Mail to email@example.com the mail is immediately forwarded to the Service Manager Server and then picked up by the default function to create a new Incident.
- If configured (optional, bur preferred): The user automatically gets a mail with an information that an Incident was created. This mail should have the Work Item ID in brackets in the subject line, e.g. “A new Incident has been created [IR462]”, the sender address should be firstname.lastname@example.org.
- If the user answers to that mail to provide more information about his Incident, the mail will be sent back to email@example.com (to the Mailbox), the subject line will automatically contain the ID and will therefore NOT be forwarded to the Service Manager SMTP Service. Instead, it will be stored in the Mailbox of the Service Manager Workflow Account. From there, it will be picked up by the Exchange Connector and will be used to update the Action Log of the related Incident.
I hope this clarifies things about the two methods. The combination is indeed very powerful unburden your IT support staff and give you more flexibility for Incident handling.