Search This Blog

Friday, February 9, 2024

MAXIMO : Don't Let Your Assets Sleepwalk: Wake Up with Twilio SMS Notifications in Maximo 7.6.1.3

Imagine this: a critical piece of equipment goes down in the dead of night. You rely on email notifications, but your technicians rarely check their inboxes after hours. The delay in response costs your company precious time and productivity. Ugh!

This scenario is all too common, but fear not! Timely communication is key to effective asset management, and Twilio's SMS integration with IBM Maximo 7.6.1.3 can be your knight in shining armor.

Picture this: an alert pops up on your tech's phone, instantly notifying them of the issue. They spring into action, resolving the problem before it snowballs. Equipment humming happily? Check. Happy boss? Double check!

So, how do you make this SMS dream a reality? Don't worry, we've got you covered. This sample use case will walk you through the process, step-by-step, like a friendly Maximo whisperer. And you can easily plug-in into your unique situations with little to no much changes.

Ready to get started? Buckle up!

1. Twilio Time: Your Gateway to Speedy Alerts:

Think of Twilio as your communication hub. Sign up for their free trial (plenty of credits for testing!), and grab your Account SID and Auth Token – these are your magic keys. We'll use them later.

2. Sigoptions & Actions: Speak Maximo's Language:

In Maximo-land, sigoptions control what actions you can take. We'll create a new one called "sendsms" and link it to the "sendsms" action in the Asset application as sample use case here. It's like teaching Maximo a new trick!

3. Scripting Magic: Your SMS Superpower:

Now for the cool part – the automation script. This code, triggered whenever you select "sendsms," uses Twilio's API to send those life-saving SMS alerts. Don't worry, we'll provide the code and explain what each part does.   

import java.net.HttpURLConnection as HttpURLConnection import java.net.URL as URL import java.io.OutputStreamWriter as OutputStreamWriter import java.io.BufferedReader as BufferedReader import java.io.InputStreamReader as InputStreamReader import java.util.Base64 as Base64 # Twilio account credentials account_sid = 'account_Id' auth_token = 'auth_token' twilio_number = '+13512008888' # Function to send SMS using Twilio def send_sms(to_number, message): url = 'https://api.twilio.com/2010-04-01/Accounts/' + account_sid + '/Messages.json' data = { 'To': to_number, 'From': twilio_number, 'Body': message } data_str = '&'.join(["{}={}".format(key, value) for key, value in data.items()]) url_obj = URL(url) connection = url_obj.openConnection() connection.setRequestMethod("POST") connection.setDoOutput(True) auth_str = account_sid + ":" + auth_token encoded_auth_str = Base64.getEncoder().encodeToString(auth_str.encode()) connection.setRequestProperty("Authorization", "Basic " + encoded_auth_str) connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded") writer = OutputStreamWriter(connection.getOutputStream()) writer.write(data_str) writer.flush() response_code = connection.getResponseCode() reader = BufferedReader(InputStreamReader(connection.getInputStream())) response = "" line = reader.readLine() while line is not None: response += line line = reader.readLine() reader.close() return response_code, response # Example usage to_number = '+1788xx5011' # Receiver's phone number message = 'Hello from IBM Maximo ! via Twilio SMS Gateway' status_code, response = send_sms(to_number, message) print('SMS sent with status code:', status_code) print('Response:', response)

4. Testing, Testing, 1, 2, 3:

Ready to see your handiwork in action? Open Maximo, choose an asset, and hit "sendsms." Did your phone buzz with a notification? If so, you're golden! Check the Twilio console for confirmation. High five! Here it is in actions :

In Assets new action to send sms :


And now once clicking it , it sends this template sms to mentioned number as of now hard coded in our automation script for this explanation purpose as below                         

5. Beyond the Basics: Level Up Your SMS Game:

Want to customize the message content or trigger notifications based on specific events? We've got tips for that too! Plus, we'll mention some potential roadblocks and how to navigate them smoothly.

Remember, integrating Twilio with Maximo isn't just about fancy tech; it's about empowering your team to respond quickly and efficiently, ultimately saving you time, money, and maybe even your sanity!

Ready to wake up your asset management with the power of SMS? Dive into the full similar use cases following the detailed instructions in this post and share insights for community.

P.S. Don't forget to share your SMS notification success stories in the comments!

No comments: