SMS and MMS Notifications with Java and Spring
Today we'll build a Java and Spring sample application which demonstrates how to push SMS alerts on server exceptions. We'll show you how to automatically notify your server administrators when something goes wrong, and cover the plumbing that makes it happen.
See how EMC uses Twilio SMS to send IT alerts to 68,000 employees.
Let's get started!
Click the button below to move to the next step of the tutorial.
List the Server Administrators - or Whomever Else - to Notify
Here we create a JSON list of administrators and whomever else should be notified if a server exception occurs.
The only essential piece of data we need is a
phoneNumber for each person.
Next, let's take a look at how to configure the Twilio REST client.
Configuring the Twilio REST Client
To send a message we'll need to initialize the
TwilioRestClient as documented in the Twilio Java Helper Library. It requires reading a
TWILIO_AUTH_TOKEN from environment variables.
The values for your Account SID and Authorization Token will come directly from the Twilio console:
Click the eyeball icon to expose your Auth Token in a form you can copy and paste.
Next, we will see how to handle application exceptions and add in our new functionality.
Handling the Application Exceptions
Spring MVC provides several techniques to handle errors but in this case we are interested in handling all our application exceptions on our own.
For catching everything, we can use Global Exception Handling.
Next up, let's see how to create a custom message.
Creating a Custom Alert Message
Here we craft the perfect alert message to send out via text message.
You might also decide to include a picture with your exception handling message. Perhaps a screenshot of the application when the crash happened? Some infographics from somewhere?
Let's look at how to load the list of lucky administrators.
Reading the Administrators from the JSON File
Next we read the admins (and the other lucky folks) from our JSON file.
We use the Gson Java library to convert our JSON text file into
Administrator objects from our application.
Next up, let's look at how to send a text message.
Sending a Text Message
There are three parameters needed to send an SMS using the Twilio REST API:
US and Canadian phone numbers can also send an image with the message. Other countries can as well, but the image will be included in the message body as a shortened URL.
That's all, folks!
We've just implemented an automated server notification system in Java and Spring that notifies all the right people when exceptions inevitably occur.
Now let's look at some other common features that are easy to add with the Java SDK.
Where to Next?
If you're a Java developer working with Twilio, you might want to check out these other tutorials.
Don't let that valuable marketing data slip away! Instantly collect structured data from your users with a survey conducted over a voice call or SMSes.
Prevent no-shows by building an awesome Twilio-powered appointment reminder feature into your application.
Did this help?
Thanks for checking out this tutorial!
Tweet to us @twilio and let us know how it went, or what you're building next!
Need some help?
We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd by visiting Twilio's Stack Overflow Collective or browsing the Twilio tag on Stack Overflow.