I recently wrote a post about a trial to automate the Skype Solution for the Elderly that I was building. My aim was to find a solution that enabled a person to make a Skype call to an elderly relative and remotely control their television to play the audio and display the video. The trial was very successful and worked brilliantly for me with my mother who has Alzheimers. However, I soon found out that I couldn’t empower my brother, who lives in France, in the same way until the next time he visits my mother.
The solution I have developed is dependent on using the Logitech Harmony Hub app to control the television. Unfortunately, you can only control the Harmony Hub remotely using the app once your smartphone or tablet has been connected to it on the same Wifi network.
I, therefore, started to investigate ways to get the Mini PC to communicate directly with the television via the Harmony Hub application programming interface, thus removing the person from the loop. I even thought about whether to remove the Harmony Hub from the solution all together, but decided that the Harmony Hub makes the solution more flexible and saves me having to produce multiple versions for different people’s setups. Something I would like to do through my new business – Smart Life Solutions.
The other problem I needed to solve was that of expanding the Skype call window to full screen once the call has started. I found some excellent VBScript shared by Michael Kersey on Github which sorted that out for me. It also gave me a framework which understands when a Skype call starts and ends, so I could insert code to switch the input of the television to the PC and back again.
I gave up trying to find any code on line to help me communicate with the Harmony Hub directly and evaluated using IFTTT instead. It adds another cloud entity into the solution (I already have Skype and Harmony Hub), but IFTTT provides an incredibly powerful set of tools to automate tasks using smart technologies. I started with a Dropbox trigger to start/end a Harmony Hub activity. This worked but at peak times the latency was 10 minutes or more before the television input changed! I then considered an SMS trigger but settled on an email trigger. I went ahead and inserted some code that uses Microsoft Collaboration Data Objects (CDO) into the Skype VBScript to send an email to IFTTT to trigger the desired change in state of the Harmony Hub at the start and end of the calls. The latency between initiating a Skype call and switching the television input has been reduced to between a few seconds at best and about a minute at worst – a big improvement over the Dropbox trigger method.
I’m pretty happy with the Skype for the Elderly solution I have created. Using the Harmony Hub app to remotely control the elderly person’s television is the most flexible approach. In particular it allows the caller to return the television to the state it was in before the call. However, using IFTTT to automate everything eliminates the need for the caller to have to visit the elderly person before being able to use the solution. This is definitely good for my brother who is only able to visit my mother 2-3 times a year!