Hey. We’re itcher. We’re an entertainment recommendations app and our aim is simple – help users find their next favorite movie in less than 50 seconds. When Google launched the Google Assistant, they approached us to work on an action for the Google Assistant and we soon got to work on an action that allowed users to get book and movie recommendations. This meant users could put their phones down and use their voice to ask itcher to recommend them a book or movie. We’re a start up with a small (but dedicated!) team so this opportunity wasn’t without it’s challenges. But we took on the challenge.
Working with Google on a voice platform was brilliant – and we didn’t want to stop. On a roll with voice, we then created a skill for one of the other major player on the market, the Amazon Echo. In the generation of Voice Enabled devices, we’re allowing our users to discover their next favourite title simply by asking. It’s the future, and we wanted to stay on board.
In this article we want to walk you through the technical steps we took to put together the itcher action, right from the start…
This was our first step in creating the itcher action for the Google Assistant. ‘Built-in ontologies’ refer to a set of entities in a specific domain. The Google Assistant (using API.AI) has no ontology defined for types such as actors, directors, authors as opposed to Amazon’s Alexa, only for more generic ones.
A custom type in this context is the definition of a (complex) entity by means of more basic types. Google offers support to define custom types. We used them in the Google action to automatically classify some common itcher types, such as main categories (books, movies, etc.) and rating values.
The Google Assistant supports the concept of intent, where user inputs get classified as specific requests to the action, with associated slots/parameters. The Google Assistant platform offers access to the recognised input in its raw form, as part of the intent. While in the optimal case (user input correctly recognised and slots/parameters filled in as expected) this makes no difference, it is potentially helpful to implement fallback logic on the endpoint processing the intent.
In order to use itcher on a voice enabled device, users much link the device to their itcher account. Services are equivalent in this respect, as they both support OAuth2 account linking. Users link their own itcher account to the Assistant (possibly registering first, if they don’t have one), and from that moment onwards they can enjoy a seamless cross-platform experience, having their ratings and recommendations available across all supported platforms (Android/iOS/web/Assistant).
The Future is Voice
Our journey with Google has been an exciting one – and one that continues into the future! We’ve enjoyed sharing our experience with you and hope you’ve gained a valuable insight to the inner working of the current technological devices on the shelves of the internet.
itcher finds recommendations you’ll love. It works by connecting you to like minded people with similar taste. itcher then uses these connections to generate new recommendations, personalized just for you.