Technical Blog Post
Automation scripting and email listener - anything in common?
Email! That word triggers both positive and negative reactions as this year’s holiday season gets underway. On the one hand, we want to be sure we receive those emails with special offers for holiday shopping. On the other, we are annoyed when we get spammed. We wonder about the thousands of emails routed daily through automated email systems.
Automated email systems supporting a business’ IT operations are a different story altogether. Emails may be the quickest and cheapest mechanism for users to alert IT teams of issues. Emails are also the most common means of sending communications from IT teams to end users. For the SmartCloud Control Desk and Maximo Asset Management products and their customers processing incoming emails and sending response emails is a common requirement.
Out of the box, the Tivoli process automation engine provides an email listener capability that processes incoming emails and generates system records from the content of the email. Email messages may contain free-form text or more specialized commands expressed in the form of formatted text. Email messages with free-form text are processed into Service Request records while email messages with formatted text can be processed into Service Request, Incident or Problem records. These types of records can be inserted or updated subject to user authorizations. More information on email listener capabilities can be found here.
But what about other business objects? Purchase Orders? Work Orders? How does one go about implementing the email listener against business objects not supported out of the box? Is this customization? If so what’s involved? Based on a customer requirement I learned of some time ago, I provide a complete walk through here of an email listener implementation that updates work order actual start and finish dates on the basis of a formatted email message. It is no surprise that I exploit automation scripting to implement an extension to the email listener.
The automation script logic I implemented is a little bit
more involved than other examples I have offered on this blog: this time
around, I use Java methods to retrieve the parsed contents of the message. In
the implementation document accompanying this blog, I provide explanation of
the Jython script coding approach and what has to come together to meet the
requirement. The Jython code is linked to this blog as a ZIP file.
I hope this given you, readers, another flavor of how much of the product can be extended or customized with automation scripts. Happy reading and happy holidays!