Today we are seeing a rise in the IoT (Internet of Things) – internet-connected smart devices, appliances and automation products. Home automation is becoming hugely popular and I imagine it won’t be long before houses greet you when you come through the front door and preheat the kettle when you’re 2 minutes away from home.
The technologies and IoT hardware are presently very much geared towards the home consumer market; with smart plugs, internet-connected light bulbs, central heating and alarm systems that can be controlled from your smartphone, and voice control units such as Amazon Echo (Alexa), Google Home, Apple HomePod etc. This isn’t to say however, that we can’t bring these technologies into the business and bridge the gap between the consumer world and business application.
Take for example an incident response situation. You’re sitting at home, just put the kids to bed and trying to relax in front of the latest Game of Thrones episode when suddenly you get an E-Mail alert or a phone call from the CIO saying that one of your critical systems is not working. You then have to scramble to unpack your laptop, power it on, wait for it to boot up, connect to VPN, connect to the affected server if it’s available, and then attempt diagnostics and remedial action. Wouldn’t it be much simpler if you could just say ‘Alexa, restart my exchange server’ or ‘Ok Google, run a health report’, all without leaving the couch.
Bridging this gap is where Adaptiva comes into play. Adaptiva is built on top of a very powerful Workflow engine which can be invoked dynamically from multiple sources. With a little assistance from the free service IFTTT.com we can leverage voice control devices to invoke one of these workflows and perform any action we want.
IFTTT (If This Then That) is a free online automation website that can take a trigger (for example; when someone posts on facebook, or when CompanyXYZ share price increases by more than X points, or you post a new tweet with a certain hashtag) and then performs some action (send an E-Mail, add to Google Spreadsheet, change smart-bulb color etc.). In our case, we are going to take the input Alexa/Google Assistant – ‘If you say Restart [ServerX]’ and perform the action ‘Run a workflow’. Now, the IFTTT service cannot directly run a workflow but what it can do is send a HTTP POST/GET command. What we can then do is listen on the server for the incoming HTTP POST/GET and invoke the workflow using the Adaptiva SDK.
Here is an example of how this could work. The following is a working example using IFTTT and Google Home (Google Assistant). The example will generate a health report on the Microsoft System Center Configuration Manager environment and E-Mail the result as an HTML E-Mail.
First, we connect IFTTT to our Google Home device and create our ‘Applet’ (IFTTT’s term for trigger/action).
We create an applet that will generate a health report. In this example, we choose up to 3 ways to speak the same input. Either:
- “Generate a health report”
- “Generate an SCCM health report”
- “What’s the status of my SCCM environment”
If the command is recognised, the Google Home device will respond with “OK, generating a Config Manager health report and E-Mailing it to you.”
A HTTP request is then sent to the Adaptiva Server, the Adaptiva API Foundry SDK will invoke the desired workflow and the ConfigMgr Health Report workflow will execute.
We can then perform any actions we like in the workflow to generate the health report.
The final activity in the health check will be to E-Mail the resultant HTML file to our E-Mail address.
Now that we have the framework in place we can extend the functionality to accept any number of input parameters that will dynamically invoke the respective workflow. The workflow can perform any task we want to give it, performing any of the actions available within the Adaptiva workflow designer, including registry actions, file system operations, SQL read/write/execute, PowerShell, VBScript and over 160 others.
We can setup additional IFTTT applets that can accept different speech commands to invoke these workflows and we can automate common repetitive, trivial or time consuming tasks that would otherwise require us to disrupt our evening of entertainment in order to connect into the corporate network to fix or execute.
This was a fascinating exercise. While we don’t see systems management moving to voice control any time soon, voice interfaces are here to stay. It’s an exciting new field of UX. At the pace technology moves today, it will be very interesting to see what people can do by voice in the coming years.