Giving Voice to IoT
First learn the meaning of what you say, and then speak.
There have been moments in our communications industry when everything suddenly changes. You can argue that it all began with Alexander Graham Bell's invention of the telephone in 1876. Although the road to that first voice call ("Mr. Watson, come here. I want you.") took many years and involved several prior attempts, within a year of Bell's patent, the first long distance line was installed. A year after that, the first telephone exchange was opened and the number of telephones in the world today now numbers in the billions.
In my lifetime, I have seen the world go from analog to digital, digital to IP, and IP to wireless. I have also witnessed the transformation from voice-based to multimedia and now, multimodal communications. Here in the year 2017, we have the ability to seamlessly move from Web to chat, to voice, to video. The lines between all forms of communications have blurred to the point where sending a tweet or posting on a Facebook timeline are equivalent to dialing a telephone number or sending an email. We use the tools we want, when and where we want to.
The Next Big, Big, Big Thing
If you follow politics and world events like I do, you are well aware of the time when presidential candidate Mitt Romney proclaimed, "Corporations are people." While I am not about to debate the merits of that statement, I will make one of my own: "Every device has the right to communicate."
For instance, your toaster has as much right to making a telephone call as you do. The same holds true for air conditioners writing emails or blood pressure monitors sending text messages. Not only do they have the right, we have come to the point to where we expect them to "talk" to us.
Making these devices smart is called Internet of Things (IoT) and like Bell's first call to Mr. Watson, this is the next big thing in communications.
I wear a lot of different hats throughout my workday -- engineer, communications evangelist, writer, public speaker, consultant, etc. Lately, a hat I thought I had put away years ago has returned to my wardrobe, and for the past several months I have been re-baptized as a down-in-the-weeds Java programmer. On top of that, I have been living and breathing RESTful Web services and cloud integration.
As a newly minted programmer, I seized upon IoT as the most important place to spend my highly overscheduled time. Not only is it an incredibly exciting technology to explore, but the developers that have come before me have created strong platforms to build upon and more than enough IoT devices from which I can create real-world solutions.
However, as rich as the existing IoT platforms might be, I found that they all lacked a comprehensive workflow development platform that allowed the user to infuse sensors and other gadgets with communications technology.
Enter Avaya Breeze
Those of you who have been following my articles here on No Jitter, know that I have spent a lot of time exploring Avaya's Breeze platform. Not only have I written extensively about what it can do, I created a series of eleven videos that showed you exactly how to use it.
One thing that I never discussed, though, was how Breeze can be extended by programmer types such as me. Despite the effort that Avaya put into creating Breeze, there is no way that it could have anticipated every enterprise's needs. Thankfully, Java coders can write their own dynamic tasks that seamlessly fold into Breeze's Engagement Designer drag-and-drop development tool. In other words, if you find a hole, it's easy to fill it.
The hole that I saw was that there was no easy way to integrate IoT devices into Breeze workflows. For example, a smoke detector might sound an alarm when it senses a fire, but I want it to also call an emergency help line, send text messages to everyone in the building, and create a video call to the security desk. There is a good chance that people are already manually adding communications into IoT workflows. Why not have the sensors add it themselves?
Enter Arrow Connect
Arrow Connect is an IoT solution that connects sensors to gateways and gateways to a cloud platform. This provides sensors of all types and flavors with a data conduit up to a highly scalable data storage and analytics engine. Unlike an existing point-to-point consumer-grade IoT solution that tells you when your garage door is open or your furnace filter needs changing, Arrow Connect is enterprise grade and supports hundreds of thousands of sensors reporting on a myriad of conditions around the world.
Using Arrow Connect and Breeze, I created a series of tasks that drop into the Breeze Engagement Designer, as you'll see in the picture below. These tasks gather real-time and historic IoT data from Arrow Connect and drive it into Breeze workflows. These workflows can then do anything that Breeze can do in terms of application design, communications outreach, database integration, and access to additional cloud services. Using these tasks, that IoT smoke alarm from above can do everything that a modern, hyper-connected enterprise needs it to do.
There are a number of IoT tasks I could show you, but I will limit myself to one of the most powerful. ArrowIoTTrends (one of the new Breeze tasks in the below image) is used to pull a range of data values from a sensor and run a series of analytics operations on that data. For example, ArrowIoTTrends can be used to pull twenty minutes of temperature readings from a temperature sensor. It can then process that data and report on the high value, low value, median, average, and trend (is the temperature rising, falling, or steady). A Breeze application can then decide how to act upon that data.
For instance, a rising temperature could be used to tell a cooling device (by way of another of my IoT tasks) to engage itself. A falling temperature could cause a text message to be sent to a maintenance technician and a trouble ticket to be created in a cloud-based incident report system such as ServiceNow.
I mentioned temperature, but it doesn't stop there. You can feed humidity, air flow, light, UV level, heart rate, location, acceleration, orientation, and a host of other data points into a Breeze workflow.
Want to route a patient's health to a contact center agent? You've got it. Want to automatically dispatch a technician when a street light goes out? No problem. Want to bring together an emergency response team when a gas leak is detected? It's as easy as point and click.
For a more in-depth look, see my latest video on creating IoT workflows using Arrow Connect and Avaya Breeze here.
The power of IoT is enormous and the number of solutions is nearly endless. Do you remember the movie Forrest Gump when Bubba iterated the number of things you can do with shrimp? He started with barbequed shrimp, and days later he ended with a shrimp sandwich. You can do the same with IoT except it might take months to name every possible solution. In fact, every time I've discussed this with a customer or partner I've walked away with at least ten more solutions I didn't think of originally. Since I do this nearly every day of the week, that's hundreds of new solutions a month.
This is only the tip of the iceberg. While I am a little biased towards my Arrow Connect and Breeze solution, I am sure that there are other folks out there working on similar endeavors, and it won't be too long before they are bragging about what they've done. That's a good thing, though. There are enough IoT projects out there to keep us all busy for a long, long time.
Andrew Prokop writes about all things unified communications on his popular blog, SIP Adventures.