When RIIS was just two guys and a laptop, we mostly worked on call center screens for small telephone companies. The work was all about pulling information from databases and APIs so that 90% of the customer information was presented intelligently on the first screen so a call center agent could get on and off the call in the quickest possible time. Whether it’s call center screens, intranet websites, BPM (Business Process Management) tools or mobile apps, API mashups have been an integral part of our business since day one. It’s always a good time to revisit your core competencies so in this blog we’re going to look at using the Zapier workflow tool to see if we can use it to quickly create an interesting mashup.
It took me longer to come up with the app idea than prototyping it in Zapier. For my new year’s resolution I decided to brush up on my French and hopefully use it at the Euro’s soccer tournament during the summer. Recently my daughter was stuck in her conversational French at school so I also thought we could help each other. Turns out I had the same issue she did. Our problem was getting over the embarrassment when speaking with a native speaker. But we could talk to each other in an embarrassment free zone. Problem solved.
And from that thought came the idea for the Zapier prototype. Everyone has the same issue when they’re learning a language. Becoming fluent requires the learner to be able to do more than write in a different language, you need to be able to listen to and speak the language. If the embarrassment is too much you’re going to stop before you get started. But what if you were speaking and listening to a artificial chatbot. A chabot isn’t going to care what you say or how you say it. If it can’t understand what you’re saying then you just try again. The chatbot can also be trained for different situations such as hotels, train stations, restaurants etc. And while chatbots aren’t perfect as they often reply out of context, this unpredictability can be a real bonus in the learning process.
In the prototype we’re using Twilio as the way to send and receive messages, Google Translate API to translate the conversation from French to English and then back again. And finally we’re using Pandorabot’s Rosie for our chatbot.
Our prototype works as follows
- Send your SMS message in French to a Twilio phone number
- Zap sends the SMS message to Google Translate API which translate the message into English
- Zap sends the English message to the Rosie API and Rosie responds to your question
- Zap sends the response to Google Translate API to translate it into French again
- Zap sends the translated response to your Twilio phone number
A simple conversation is shown below
Task engines like Zapier workflows are still pretty basic, they don’t have the flexibility of modern BPM systems but they are great for prototyping API mashups such as in this example.
Our Rosie bot – Parlez Bot – needs a new home. It needs to be more voice driven and less SMS driven, even if you can fake the voice input and output. So it’ll end up as a mobile app completely outside of the Zapier environment. We also need to be able to change languages as we’re using Google Translate so we’re not just limited to French. We’re only limited to whatever languages accept speech as an input in Google Translate. The working prototype will make it easier for the developers to understand the concept behind the app and the steps involved coding the app which will no doubt shorten the development cycle.
I’m pretty sure that in a few years we’re going to look back at Mobile apps and wonder what all the fuss was about. Most of them are still very two-tier, i.e. simply presenting information stored in some back end database. We predict the next generation of mobile apps will provide a lot more artificial intelligence and context awareness than the current batch of apps available in iTunes or Google Play.